【神の箱庭】 第6回さくさくテキストマイニング勉強会に参加してきました
第6回さくさくテキストマイニング勉強会に参加してきました。以下は各セッションのメモ。
1. Tweetからユーザーをクラスタリングできるか
・文字のバイグラム(2文字)を特徴量として使う
・階層的クラスタリング
・Rで3行で書ける
・書き手によって文章の長さに差が出る傾向がありそうなので、長さで割戻し、相対度数を使ってみた
・非階層的クラスタリング
・k-meansをやってみる
・うまく分かれていそうだ
・13個のクラスターで分類しているので、「今日」とか「日は」といった単語の使い方でみている
・Ward法を選んだ理由はない
・表記の揺れは見ていない?
2. テキストマイニングのイメージと実際
・Hadoopで数百GB~TBあるデータを扱っている
・Hive/HiveQLを使うと、MySQLやOracleと変わらない
・チューニングや負荷分散は勿論難しい
・Big Dataを用いようがどのような指標を作ったり、解析したりするかを誤れば何も得ることが出来ない
・統計的素養がないと何もできない
・クレンジングしたいなら、根底のログ出力部分から設計修正する必要がある
・数百GBのデータを一括置換や検索するだけで非常に時間がかかる
・操作変数、説明変数、統制変数
・ゲーム制作側は新規要素を入れるが、データマイニング側はできるだけ統制をかけたい
・意味のある知見を見つけることは非常に難しい
・ソーシャルゲームの開発サイクルは非常に短く、新タイトルも頻繁にリリースされる
・データ構造におけるパターンや要素数がどんどん増えている
・目的に適したデータを取る、目的に適した指標を取る(データの作り手も使い手も理解する必要がある)
・サイバーエージェント福田で検索するとサーバ構成とかが出てくる
・ブログのような書き手がフリーに書くものはどうしようもない
3. モバイル検索サービス開発の現場から
・NTTの携帯サイトの検索エンジンの開発
・amazonや楽天であれば、サービスに紐づくものが多そうだ
・携帯検索1位はyoutube, mixi, twitterのようなナビゲーションクエリーが多い
・検索した人が欲しい情報をサジェストしたい
・検索ログの中で検索ワードが多いものを取りたい
・目的としては流行の検索クエリ分布を作ること
・同義語と誤記問題に関しては、人手とシソーラス構築でクリア ⇒ 何人くらいで、どれくらいの期間?
・マイニング結果は、検索クエリ数と時期的な偏りで分けられた
・多変量解析、統計分析、等を不祥事を起こした芸能人、イベントの延期、といった
・ないものに対して、グループインタビューすると「なんでもYes」になってしまう
・分析とは目的を行って行うものであるが、目的はユーザーの利用動向を知ることで、手段は過去のユーザー動向をテキストマイニングで分析すること
Q&A
・Web検索をするとアダルトクエリーが多いと思われるが、どのように切り分けているのか ⇒ 社内向けの分析だったので排除していない
・サジェストするところで、その会社向けのサイトに誘導してPVを増やそうとしている
・テキスト欄に検索ボタンというスタイルは変えられるか? ⇒ クリックや痕跡を取る等が考えられる
・「車 買う」みたいに提案型のリンクをつけても、クリックされないが何故かは諸説ある
4. スタート形態素解析
・とりあえずMeCabでブラックボックスとして扱えるくらいの性能がある
・アルゴリズムとしては、辞書を基に単語の分け方を考え、一番もっともらしいものを求める
・コストは常に考慮する必要がある
・データの中で重要なのは、単語の定義、連接コストの定義、品詞の定義
・形態素解析に必要なのは、表記、品詞ID、単語のコスト(出現しやすさ)
・連接コストとは、二つのコストの品詞のつながりやすさを決めるもので、左品詞IDと右品詞ID...
・解析手順
・辞書データの読み込み(mecab-naistdicでは100MBくらい)
・単語の定義を基に、分割のパターンを洗い出す
・単語定義を基にグラフ構造を抽出する
・コストが一番小さくなるつなぎ方を求める: 単語自体が持つコスト、品詞のつながりが持つコスト(その組み合わせの珍しさ)
・文字列から単語の候補を探す方法は Trie
・最小コストは ビタビアルゴリズムで計算
・辞書をカスタマイズするようなときに、提示した単語に対してなぜひっかからないのか、みたいなことを調査するのに役に立つ
5. Jubatusの紹介
・大規模データ分析用のフレームワーク
・検索エンジンSedueを開発している会社
・元々IBMにいた人
・Big Dataのデータ種類は増加し続ける
・テキスト、行動履歴、音声、映像、信号
・生成される分野も多様化
・PC, モバイル, センサー, 車, 工場, EC
・リアルタイムストリーム、分散並列、深い解析(機械学習をサポート)がJubatusの特徴である/機械学習とHadoop
・Hadoop = 速い、分散する、ロバスト、遅い(結果を返すのが)
・機械学習の活用例 = Gmailの重要ボタン(分類問題)、推薦システム(近傍探索)、バグの予測も?
・学習方式にはバッチ学習とオンライン学習があり、バッチ学習はデータ全体を見て重みを調整するが、オンライン学習は一つずつデータを見て重みの更新を繰り返す
・オンライン学習は、データを受け取ったらすぐ学習、学習が早くなった、ルールを書かなくても良い
・処理が速い = ユーザーの売買行動 ⇒ 変化の検知 ⇒ 小売 ⇒ 広告配信
・技術の視点で見るとテキストマイニングは複合技術である
・研究業界に見る機械学習と自然言語を振り返る
・90年代 規則を人手でたくさん書く
・00年頃 機械学習を自然言語に輸入
・00年代 機械学習花盛り
・Jubatusの入力はキー・バリューである
・今は分類だけだが、統計情報、回帰、レコメンドを実装したい
・キー/バリューの意味合いが変わったり、要素が増えても対応できるようになる? ⇒ やっていけるようにしたい
・自然言語処理の分野から、オンライン学習でもバッチ学習と同じくらいの精度が出ているといわれている
6. 発見探地図 エリアダスの紹介
・地図にまつわるキーワードをクリックすると、ブログ記事を検索する
・エリアダスでは、地理、時間という要素を検索のクエリに加えている
・説明しなくはわからないということは説明しても分からないということだ 「1Q84 村上春樹」
・所感
・実データは汚くて手ごわい
・実データは多種多様な課題を抱えている
・東京の日本橋と大阪の日本橋の場合は、キーワード、地理表現、時間で重みづけする
・ある程度の揺らぎには対応している
・マップがあってユーザーがタグをつける世界カメラとは何が違うのか?
・人手で作るのか、機械的に作るのか、という点が異なる
・検索エンジンでタグ付けしている
・形態素解析をして、ルールベースで未知語については処理している
7. テキストマイニング (某I社)
・短所
・使いこなすには工夫が必要な点
・機械処理のノイズに対する理解が必要
・特徴的な内容を見つけて成果を報告しないとお客様に買ってもらえない
・I社製品の相関分析: 絶対的な頻度ではなく、相対的な頻度に注目
・PCのサポート
・述語+ない、述語+してしまう・・・ => ファセットの中で、問題の多い機種を探したりする
・ドリルダウンしていって、XXX社のXXXの初期設定はXXXの問題がある、みたいなことが分かってくる
・車の不具合情報
・特定車種で問題が起こっているようなことを見出せる
・燃費という表現を含むものを、深掘りしてくと大量の文書の中からネガティブな情報を取れたりする
・活用で重要なこと
・件数分布ではなく分布の偏りや変化に着目
・得られた知見をアクションにつなげる
・対象データと目的に応じた分析設定の試行錯誤
・レンタカー会社の予約業務のやりとりを記録しておいて、分析した場合
・「要望に応えられなかった」というところからドリルダウンして、「デビッドカード」にたどり着いたが、規則なので変えられないと怒られた
・Reservation -> No Show (無断キャンセル) が問題になっていることがコールセンターマネージャーの聞き取りから分かった
⇒ 最初から予約をしたい、という客層と、値段を確認したい、という客層に分かれることが分かった
値段を確認したい、という客層の方が、無断キャンセルが多いことが分かった
⇒ 優秀なエージェントは、無断キャンセルする客層をあしらう方法を知っていることが分かったので、それを広げるようにしたところ、効果が得られた
・エージェントに対してソフトウェアの使い方を教え込むのをどうやったのか
・エグゼクティブに、すぐ結果が出るものではないことを説明して了解してもらった
・エージェント達に導入研修して、研究員がサポートをして、つかいこなせるようにしてもらえた
・音声認識を活用した場合、ノイズを40%程度入れても(レンタカーの予約の例)、偏りを見ているので大体同じ結果が出てくる
をはり。
1. Tweetからユーザーをクラスタリングできるか
・文字のバイグラム(2文字)を特徴量として使う
・階層的クラスタリング
・Rで3行で書ける
・書き手によって文章の長さに差が出る傾向がありそうなので、長さで割戻し、相対度数を使ってみた
・非階層的クラスタリング
・k-meansをやってみる
・うまく分かれていそうだ
・13個のクラスターで分類しているので、「今日」とか「日は」といった単語の使い方でみている
・Ward法を選んだ理由はない
・表記の揺れは見ていない?
2. テキストマイニングのイメージと実際
・Hadoopで数百GB~TBあるデータを扱っている
・Hive/HiveQLを使うと、MySQLやOracleと変わらない
・チューニングや負荷分散は勿論難しい
・Big Dataを用いようがどのような指標を作ったり、解析したりするかを誤れば何も得ることが出来ない
・統計的素養がないと何もできない
・クレンジングしたいなら、根底のログ出力部分から設計修正する必要がある
・数百GBのデータを一括置換や検索するだけで非常に時間がかかる
・操作変数、説明変数、統制変数
・ゲーム制作側は新規要素を入れるが、データマイニング側はできるだけ統制をかけたい
・意味のある知見を見つけることは非常に難しい
・ソーシャルゲームの開発サイクルは非常に短く、新タイトルも頻繁にリリースされる
・データ構造におけるパターンや要素数がどんどん増えている
・目的に適したデータを取る、目的に適した指標を取る(データの作り手も使い手も理解する必要がある)
・サイバーエージェント福田で検索するとサーバ構成とかが出てくる
・ブログのような書き手がフリーに書くものはどうしようもない
3. モバイル検索サービス開発の現場から
・NTTの携帯サイトの検索エンジンの開発
・amazonや楽天であれば、サービスに紐づくものが多そうだ
・携帯検索1位はyoutube, mixi, twitterのようなナビゲーションクエリーが多い
・検索した人が欲しい情報をサジェストしたい
・検索ログの中で検索ワードが多いものを取りたい
・目的としては流行の検索クエリ分布を作ること
・同義語と誤記問題に関しては、人手とシソーラス構築でクリア ⇒ 何人くらいで、どれくらいの期間?
・マイニング結果は、検索クエリ数と時期的な偏りで分けられた
・多変量解析、統計分析、等を不祥事を起こした芸能人、イベントの延期、といった
・ないものに対して、グループインタビューすると「なんでもYes」になってしまう
・分析とは目的を行って行うものであるが、目的はユーザーの利用動向を知ることで、手段は過去のユーザー動向をテキストマイニングで分析すること
Q&A
・Web検索をするとアダルトクエリーが多いと思われるが、どのように切り分けているのか ⇒ 社内向けの分析だったので排除していない
・サジェストするところで、その会社向けのサイトに誘導してPVを増やそうとしている
・テキスト欄に検索ボタンというスタイルは変えられるか? ⇒ クリックや痕跡を取る等が考えられる
・「車 買う」みたいに提案型のリンクをつけても、クリックされないが何故かは諸説ある
4. スタート形態素解析
・とりあえずMeCabでブラックボックスとして扱えるくらいの性能がある
・アルゴリズムとしては、辞書を基に単語の分け方を考え、一番もっともらしいものを求める
・コストは常に考慮する必要がある
・データの中で重要なのは、単語の定義、連接コストの定義、品詞の定義
・形態素解析に必要なのは、表記、品詞ID、単語のコスト(出現しやすさ)
・連接コストとは、二つのコストの品詞のつながりやすさを決めるもので、左品詞IDと右品詞ID...
・解析手順
・辞書データの読み込み(mecab-naistdicでは100MBくらい)
・単語の定義を基に、分割のパターンを洗い出す
・単語定義を基にグラフ構造を抽出する
・コストが一番小さくなるつなぎ方を求める: 単語自体が持つコスト、品詞のつながりが持つコスト(その組み合わせの珍しさ)
・文字列から単語の候補を探す方法は Trie
・最小コストは ビタビアルゴリズムで計算
・辞書をカスタマイズするようなときに、提示した単語に対してなぜひっかからないのか、みたいなことを調査するのに役に立つ
5. Jubatusの紹介
・大規模データ分析用のフレームワーク
・検索エンジンSedueを開発している会社
・元々IBMにいた人
・Big Dataのデータ種類は増加し続ける
・テキスト、行動履歴、音声、映像、信号
・生成される分野も多様化
・PC, モバイル, センサー, 車, 工場, EC
・リアルタイムストリーム、分散並列、深い解析(機械学習をサポート)がJubatusの特徴である/機械学習とHadoop
・Hadoop = 速い、分散する、ロバスト、遅い(結果を返すのが)
・機械学習の活用例 = Gmailの重要ボタン(分類問題)、推薦システム(近傍探索)、バグの予測も?
・学習方式にはバッチ学習とオンライン学習があり、バッチ学習はデータ全体を見て重みを調整するが、オンライン学習は一つずつデータを見て重みの更新を繰り返す
・オンライン学習は、データを受け取ったらすぐ学習、学習が早くなった、ルールを書かなくても良い
・処理が速い = ユーザーの売買行動 ⇒ 変化の検知 ⇒ 小売 ⇒ 広告配信
・技術の視点で見るとテキストマイニングは複合技術である
・研究業界に見る機械学習と自然言語を振り返る
・90年代 規則を人手でたくさん書く
・00年頃 機械学習を自然言語に輸入
・00年代 機械学習花盛り
・Jubatusの入力はキー・バリューである
・今は分類だけだが、統計情報、回帰、レコメンドを実装したい
・キー/バリューの意味合いが変わったり、要素が増えても対応できるようになる? ⇒ やっていけるようにしたい
・自然言語処理の分野から、オンライン学習でもバッチ学習と同じくらいの精度が出ているといわれている
6. 発見探地図 エリアダスの紹介
・地図にまつわるキーワードをクリックすると、ブログ記事を検索する
・エリアダスでは、地理、時間という要素を検索のクエリに加えている
・説明しなくはわからないということは説明しても分からないということだ 「1Q84 村上春樹」
・所感
・実データは汚くて手ごわい
・実データは多種多様な課題を抱えている
・東京の日本橋と大阪の日本橋の場合は、キーワード、地理表現、時間で重みづけする
・ある程度の揺らぎには対応している
・マップがあってユーザーがタグをつける世界カメラとは何が違うのか?
・人手で作るのか、機械的に作るのか、という点が異なる
・検索エンジンでタグ付けしている
・形態素解析をして、ルールベースで未知語については処理している
7. テキストマイニング (某I社)
・短所
・使いこなすには工夫が必要な点
・機械処理のノイズに対する理解が必要
・特徴的な内容を見つけて成果を報告しないとお客様に買ってもらえない
・I社製品の相関分析: 絶対的な頻度ではなく、相対的な頻度に注目
・PCのサポート
・述語+ない、述語+してしまう・・・ => ファセットの中で、問題の多い機種を探したりする
・ドリルダウンしていって、XXX社のXXXの初期設定はXXXの問題がある、みたいなことが分かってくる
・車の不具合情報
・特定車種で問題が起こっているようなことを見出せる
・燃費という表現を含むものを、深掘りしてくと大量の文書の中からネガティブな情報を取れたりする
・活用で重要なこと
・件数分布ではなく分布の偏りや変化に着目
・得られた知見をアクションにつなげる
・対象データと目的に応じた分析設定の試行錯誤
・レンタカー会社の予約業務のやりとりを記録しておいて、分析した場合
・「要望に応えられなかった」というところからドリルダウンして、「デビッドカード」にたどり着いたが、規則なので変えられないと怒られた
・Reservation -> No Show (無断キャンセル) が問題になっていることがコールセンターマネージャーの聞き取りから分かった
⇒ 最初から予約をしたい、という客層と、値段を確認したい、という客層に分かれることが分かった
値段を確認したい、という客層の方が、無断キャンセルが多いことが分かった
⇒ 優秀なエージェントは、無断キャンセルする客層をあしらう方法を知っていることが分かったので、それを広げるようにしたところ、効果が得られた
・エージェントに対してソフトウェアの使い方を教え込むのをどうやったのか
・エグゼクティブに、すぐ結果が出るものではないことを説明して了解してもらった
・エージェント達に導入研修して、研究員がサポートをして、つかいこなせるようにしてもらえた
・音声認識を活用した場合、ノイズを40%程度入れても(レンタカーの予約の例)、偏りを見ているので大体同じ結果が出てくる
をはり。
スポンサーサイト