自己紹介 @PENGUINANA_ (genta kaneyama)
http://pcod.no-‐ip.org/
興味:評判システム/自然言語処理/画像検索/visualization
自然言語処理ぶくま:http://b.hatena.ne.jp/pcod/nlp/
twitter検索(yats)を公開中
2009年よりWebエンジニア
今日やります 内容
発 表の内容は、自然言語処理に関係していれば何でもありです。形式としては以下のようなものを想定しています。
輪読 形式(教科書を1章ずつくらい発表)
論文紹介、手法紹介、ライブラリ紹介など
実装してみました系、コードリーディン グ、ライブコーディング
実験系、手持ちのデータに適用してみました系
研究紹介、システム紹介、実務経験のシェア
そ の他
今後やりたいです 内容
発 表の内容は、自然言語処理に関係していれば何でもありです。形式としては以下のようなものを想定しています。
輪読 形式(教科書を1章ずつくらい発表)
論文紹介、手法紹介、ライブラリ紹介など
実装してみました系、コードリーディン グ、ライブコーディング
実験系、手持ちのデータに適用してみました系
研究紹介、システム紹介、実務経験のシェア
そ の他
今日はつぶやきのタギングの話を
なんで? 900万tweet/日 60万アクティブユーザー
3週間以内につぶやいてる AND >400投稿
誰がどんなこと話してるのか想像できない…知りたい
嗜好の近いユーザーをみつける
紹介する論文 Learning to Classify Short and Sparse Text & Web with
Hidden Topics from Large-‐scale Data Collections (WWW2008)
Wikipedia, MEDLINEをLDAで次元縮約して分類器を作るという内容
Wikipediaは”universal corpus”
短いテキストでもいい感じにできました。という内容
飛びつかざるをえない…
http://www.baidu.jp/unlp/#omake
APIにしました http://pcod.no-‐ip.org/yats/genre
デモ http://pcod.no-‐ip.org/yats/
アジェンダ
論文の紹介
短いテキスト?
提案されたメソッド
実験結果
実装した話
環境を準備
データを準備
モデルを作成・評価
ラベリング
API化
教訓
関連文献
論文の紹介 Learning to Classify Short and Sparse Text & Web with Hidden Topics from
Large-‐scale Data Collections (WWW2008)
短いテキスト? Unlike normal documents, these text & Web segments are
usually noisier, less topic-‐focused, and much shorter, that is, they consist of from a dozen words to a few sentences. Because of the short length, they do not provide enough word co-‐ occurrence or shared context for a good similarity measure.
普通のドキュメントと違い、膨大な種類の言葉から、単語が数個ならぶだけ。 →共起情報や文脈情報が載ってない
流れ (Wikipediaから)網羅的なコーパスを作る
LDAでモデルを作る
(Wikipediaから)トレーニングデータ作る
ME(maximum entropy)で分類器を作る
分類: LDAで作ったモデルで特徴ベクトルを作る 作った分類器で分類する
LDA(model) -‐> MaxEnt(classifier) LDAはsparse textで効くらしい根拠 →D. Blei, A. Ng, and M. Jordan. Latent Dirichlet Allocation. JMLR, 3:993–1022, 2003.
SVMよりもMEを選んだ根拠 SVM遅い
SVMより精度が良かった(そうなの?)
実験 Wikipediaで作ったモデルと分類器
検索エンジンのスニペットを分類する ベースラインと比較 Hidden topicの数を変えて確認 イテレーションの回数を変えて確認
同じことを医療系のデータで疾病分類タスクとして実施
Univarsal corpus Final data: =240MB;
|docs| = 71,986; |paragraphs| = 882,376; |vocabulary| = 60,649; |total words| = 30,492,305;
WikipediaダンプからHTML等削除
Stop word除外、頻度30以下除外
分類対象 検索結果スニペットが分類対象
Universal corpusとは無関係
結果 トレーニングデータの数は少なくてもいい
結果 トレーニングデータの数は少なくてもいい(MEDLINE)
結果 Topic数は多いほどよいというわけではない
結果 イテレーション200回くらいでstableになる
実装した話 環境を準備 データを準備
モデルを作成・評価 ラベリング
API化
環境を準備する データのために:
MySQL + Python + TokyoCabinet
言語処理のために: MeCab(+辞書) + Python + MPICH2
APIのために Python + Django(or tornado) + apache(or nginx) + redis
データを準備する クリーニングする
品詞で限定,数値除外,URL除外 if ('名詞' in n.feature and not '名詞,数' in n.feature and not
'非自立' in n.feature)
頻度を数える(Python+TokyoCabinet) cat dump.txt | python loadtoTC.py >df.addint(key,1)
サンプリングする(てきとー) 頻度が100以下の単語はカットオフ 語数が極端に低いつぶやきは除外 みんなのつぶやきを均等に拾う
モデルを作成する 出来上がったデータからpldaでモデルを作りましょう…
http://code.google.com/p/plda/
パラメータ: N=50,alpha=0.5,beta=0.1 Alpha:*empirically* MIN(1,50/num_topics) beta: *empirically* 0.1
Master> mpd -‐-‐daemon -‐-‐listenport=55555
Slave> mpd -‐-‐daemon -‐h master -‐p 55555
構築できたかチェック:mpdtrace; mpdringtest
mpiexec -‐n 8 ./mpi_lda -‐-‐num_topics 50 -‐-‐total_iterations 150 -‐-‐alpha 1 -‐-‐beta 0.1 -‐-‐training_data_file ~/201005.txt -‐-‐model_file /tmp/lda_model201005.txt
とりあえず目検や…
パン 9249.0 クリーム 8833.0 チョコ 7755.0 アイス 6846.0 ケーキ 5895.0 チーズ 4765.0 ミルク 4075.0 お菓子 3669.0 スイーツ 3399.0 プリン 3340.0 バナナ 3297.0 ドーナツ 3223.0 コーヒー 3152.0 ティー 3053.0 ジュース 3044.0 フルーツ 2926.0 おやつ 2812.0 オレンジ 2670.0 ヨーグルト 2613.0 クッキー 2607.0 チョコレート 2443.0 うまい 2428.0 牛乳 2330.0 レモン 2244.0 バター 2234.0 いちご 2219.0 コンビニ 2150.0 トマト 2058.0 ソース 2041.0 シュー 1956.0 なう 1887.0 ロール 1855.0 キャラメル 1772.0 トー 1765.0 サンド 1759.0 たっぷり 1741.0 パスタ 1739.0 ジャム 1685.0 イチゴ 1599.0 砂糖 1582.0 抹茶 1538.0 >ロールケーキ 1535.0 オイル 1535.0 デザート 1524.0 レシピ 1513.0 紅茶 1500.0 ピザ 1500.0 チン 1471.0 コーン 1468.0 クリスピー 1464.0 セブン 1390.0 バニラ 1358.0 マヨネーズ 1307.0 オリーブ 1280.0 トー>スト 1275.0 チーズケーキ 1268.0 カロリー 1242.0 パイ 1204.0 ゼリー 1184.0 スーパー 1151.0 生地 1145.0 種類 1132.0 グレープ 1128.0 マンゴー 1107.0 おにぎり 1107.0 簡単 1106.0 チップ 1096.0 ミックス 1092.0 生クリーム 1060.0 お腹 1057.0 サラダ 1046.0 今度 1041.0 菓子 1029.0 風味 1025.0 ホット 1025.0 りんご 1015.0 ミント 1013.0 リンゴ 1000.0 最近 939.0 お茶 922.0 ホットケーキ 906.0 ブルーベリー 906.0 普通 904.0 ホワイト 900.0 ショコラ 899.0 レンジ 898.0 ハム 892.0 パン屋 891.0 スプーン 879.0 シナモン 877.0 オーブン 867.0 ブラック 865.0 野菜 863.0 土産 858.0 料理 852.0 ミスド 852.0 シロップ 844.0 パフェ 840.0 チー 831.0 購入 821.0 label,4,食べ物
ライブ 20262.0 発売 5296.0 ツアー 4542.0 アルバム 4439.0 ファン 4352.0 イベント 4295.0 チケット 4266.0 バンド 3585.0 メンバー 3554.0 今年 3217.0 公演 3190.0 月日 3165.0 シングル 2812.0 ステージ 2630.0 出演 2541.0 発表 2486.0 決定 2456.0 アイドル 2371.0 フェス 2324.0 会場 2135.0 アーティスト 2084.0 リリース 2044.0 デビュー 2030.0 ニュー 1962.0 本日 1910.0 今回 1866.0 東京 1769.0 収録 1734.0 渋谷 1679.0 ライヴ 1662.0 大阪 1575.0 予定 1557.0 去年 1486.0 ホール 1465.0 参加 1441.0 映像 1403.0 公開 1302.0 アラバキ 1280.0 ゲスト 1278.0 クイーン 1271.0 コンサート 1268.0 終了 1267.0 参戦 1245.0 タワ レコ 1214.0 スタジオ 1208.0 フジ 1159.0 ヤマ 1154.0 明日 1129.0 ニュース 1122.0 ソロ 1104.0 チケ 1096.0 予約 1095.0 記念 1075.0 期待 1050.0 スフィア 1035.0 登場 1032.0 追加 1029.0 レポ 1024.0 みのり>ん 1021.0 ゼブラ 1010.0 音楽 963.0 豪華 946.0 先行 940.0 サン 860.0 周年 858.0 もと 855.0 スタッフ 843.0 リッツ 808.0 開催 794.0 は行 789.0 タイトル 781.0 ワンマン 779.0 レコード 777.0 単独 769.0 公>式 768.0 ベスト 763.0 絶対 761.0 舞台 752.0 当日 750.0 ユニット 750.0 一緒 748.0 フジロック 746.0 サニーデイ 742.0 フリー 737.0 解散 724.0 新曲 724.0 名古屋 720.0 メジャー 717.0 演者 716.0 アリーナ 706.0 コラボ 702.0 新作 686.0 トリ 686.0 残念 680.0 デモ 678.0 サイン会 678.0 チャット 660.0 新宿 650.0 初日 642.0 チェック 637.0 label,1,音楽
ブログ 56227.0 更新 22429.0 ランキング 12037.0 情報 10790.0 エントリ 8672.0 商品 7979.0 無料 4682.0 税込 4612.0 記事 4376.0 時間 4356.0 送料 4010.0 検索 2891.0 ダイエット 2700.0 美容 2637.0 価格 2588.0 日記 2579.0 コスメ 2482.0 女性 2477.0 セット 2426.0 人気 2384.0 タイトル 2353.0 ランク 2331.0 男性 2326.0 取得 2194.0 新品 2191.0 楽天 2149.0 紹介 2128.0 アップ 2078.0 スカルプ 2045.0 メディ 2030.0 薬用 2025.0 ケア 1876.0 香水 1873.0 ヘアケア 1841.0 ポイント 1833.0 発売 1776.0 関連 1715.0 ヘア 1713.0 現在 1666.0 シャンプー 1593.0 キーワード 1577.0 注目 1532.0 頭皮 1513.0 レビュー 1407.0 ショ>ッピング 1396.0 ヒット 1374.0 週間 1370.0 アメブロ 1370.0 突破 1358.0 秋葉原 1316.0 スタッフ 1226.0 リニューアル 1218.0 総合 1151.0 感想 1105.0 売上 1086.0 スキンケア 1034.0 プライス 979.0 売れ筋 967.0 出典 947.0 石鹸 945.0 投稿 930.0 ネット 927.0 エスカレータ 886.0 話題 882.0 メイク 872.0 コミケ 871.0 ホームページ 850.0 上位 840.0 オフィシャル 831.0 ヒント 825.0 ゲル 808.0 健康 799.0 プラ 793.0 今回 792.0 急上昇 783.0 テーマ 762.0 アクセス 759.0 エステ 758.0 パック 753.0 新着 751.0 乾燥 741.0 化粧品 733.0 ワード 732.0 クリーム 714.0 配合 713.0 レス 708.0 正式 705.0 ソープ 700.0 別館 686.0 医薬品 660.0 ファンデ 659.0 過去 641.0 参考 633.0 口コミ 625.0 毎日 622.0 プロ 617.0 ボディ 615.0 ベストセラー 610.0 サン 610.0 リート 608.0 label,2,???
ブログ 56227.0 更新 22429.0 ランキング 12037.0 情報 10790.0 エントリ 8672.0 商品 7979.0 無料 4682.0 税込 4612.0 記事 4376.0 時間 4356.0 送料 4010.0 検索 2891.0 ダイエット 2700.0 美容 2637.0 価格 2588.0 日記 2579.0 コスメ 2482.0 女性 2477.0 セット 2426.0 人気 2384.0 タイトル 2353.0 ランク 2331.0 男性 2326.0 取得 2194.0 新品 2191.0 楽天 2149.0 紹介 2128.0 アップ 2078.0 スカルプ 2045.0 メディ 2030.0 薬用 2025.0 ケア 1876.0 香水 1873.0 ヘアケア 1841.0 ポイント 1833.0 発売 1776.0 関連 1715.0 ヘア 1713.0 現在 1666.0 シャンプー 1593.0 キーワード 1577.0 注目 1532.0 頭皮 1513.0 レビュー 1407.0 ショ>ッピング 1396.0 ヒット 1374.0 週間 1370.0 アメブロ 1370.0 突破 1358.0 秋葉原 1316.0 スタッフ 1226.0 リニューアル 1218.0 総合 1151.0 感想 1105.0 売上 1086.0 スキンケア 1034.0 プライス 979.0 売れ筋 967.0 出典 947.0 石鹸 945.0 投稿 930.0 ネット 927.0 エスカレータ 886.0 話題 882.0 メイク 872.0 コミケ 871.0 ホームページ 850.0 上位 840.0 オフィシャル 831.0 ヒント 825.0 ゲル 808.0 健康 799.0 プラ 793.0 今回 792.0 急上昇 783.0 テーマ 762.0 アクセス 759.0 エステ 758.0 パック 753.0 新着 751.0 乾燥 741.0 化粧品 733.0 ワード 732.0 クリーム 714.0 配合 713.0 レス 708.0 正式 705.0 ソープ 700.0 別館 686.0 医薬品 660.0 ファンデ 659.0 過去 641.0 参考 633.0 口コミ 625.0 毎日 622.0 プロ 617.0 ボディ 615.0 ベストセラー 610.0 サン 610.0 リート 608.0 label,2,???
ピンク 8448.0 シャツ 7233.0 ロング 6245.0 ショート 6119.0 ワンピース 5919.0 パンツ 4790.0 ミニスカ 4294.0 スーツ 4212.0 カラー 3958.0 カット 3814.0 ブーツ 3676.0 ファッション 3196.0 スカート 3032.0 >ブルー 2861.0 かわいい 2851.0 ユニクロ 2812.0 可愛い 2605.0 タイツ 2588.0 髪型 2413.0 クール 2383.0 サイズ 2302.0 衣装 1833.0 グリーン 1817.0 スニーカー 1786.0 ワンピ 1662.0 服装 1637.0 コート 1623.0 ジャケット 1617.0 ドレス 1613.0 帽子 1546.0 黒髪 1539.0 金髪 1500.0 美少女 1488.0 セミ 1469.0 ボブ 1463.0 シルバー 1463.0 リボン 1459.0 ウサギ 1450.0 身長 1448.0 ジャージ 1395.0 着物 1350.0 女の子 1328.0 ズボン 1311.0 格好 1298.0 ラメ 1290.0 制服 1285.0 カップ 1269.0 メイク 1247.0 ライン 1232.0 メイド 1216.0 イメージ 1215.0 パーカー 1207.0 コスプレ 1204.0 Tシャツ 1191.0 パステル 1162.0 シバ 1155.0 オレンジ 1152.0 メンズ 1146.0 サンダル 1115.0 ジーンズ 1103.0 性格 1095.0 メガネ 1072.0 ポニーテール 1048.0 ブランド 1037.0 特徴 1018.0 ほっぺ 1018.0 色白 1017.0 レッド 1017.0 パーマ 1003.0 デニ ム 993.0 ヘアー 984.0 デザイン 970.0 ツインテール 966.0 オシャレ 961.0 コス 956.0 スタイル 949.0 パジャマ 940.0 ネイル 936.0 セーラー 928.0 眼鏡 920.0 かっぱ 919.0 ヘア 916.0 ハイヒール 896.0 タオル 890.0 茶髪 889.0 ネクタイ 889.0 レース 888.0 女性 887.0 つり目 880.0 悪戯 869.0 ピアス 868.0 アイテム 856.0 足元 850.0 キャラ 847.0 髪の毛 842.0 着用 833.0 グレー 830.0 靴下 829.0 チェック 829.0 ペン タブ 806.0 label,6,ファッション
自分 31845.0 ハイ 9928.0 る人 8205.0 パー 7709.0 ダメ 6715.0 一番 4650.0 気持ち 4461.0 仕事 4455.0 言葉 3718.0 意味 3688.0 メディア 3592.0 人間 3495.0 大事 3483.0 だめ 2965.0 苦手 2651.0 ホント 2638.0 無理 2336.0 どっち 2261.0 ひと 2151.0 テンション 2140.0 絶対 2112.0 最近 2071.0 クリエイター 2065.0 人生 2024.0 離婚 1995.0 結局 1986.0 自信 1973.0 無駄 1967.0 他人 1942.0 駄目 1926.0 (笑) 1838.0 まっ 1800.0 色々 1760.0 お金 1760.0 バカ 1727.0 イライラ 1584.0 ログ 1500.0 全部 1471.0 そう思 1445.0 理解 1344.0 レベル 1302.0 ぼく 1280.0 仕方 1221.0 理由 1181.0 勝手 1174.0 ボク 1170.0 わからん 1162.0 くそ 1154.0 場合 1146.0 日記 1129.0 やる気 1116.0 なっちゃ 1101.0 必要 1072.0 世の中 1069.0 本気 1057.0 オレ 1043.0 こっち 1024.0 感情 1022.0 感覚 981.0 エリカ様 979.0 お前 972.0 楽しい 960.0 >沢尻エリカ 953.0 アカ 945.0 気分 935.0 状態 934.0 エリカ 924.0 関係 910.0 我慢 898.0 ネガティブ 869.0 努力 856.0 部分 852.0 本人 845.0 意識 826.0 普通 821.0 不安 803.0 文句 801.0 馬鹿 800.0 結果 798.0 意見 794.0 く言 773.0 ばか 771.0 ぶっちゃけ 755.0 完全 747.0 幸せ 746.0 っぷり 739.0 問題 734.0 センス 733.0 想像 720.0 尊敬 714.0 基本 709.0 同意 707.0 納得 706.0 瞬間 699.0 キモい 694.0 行動 692.0 ヨーヨー 688.0 タイプ 684.0 大丈夫 682.0 発言 681.0 label,9,気がかりなこと
モデルを評価する モデルの賞味期限:
モデルは季節影響を受ける チョコ→バレンタイン?
岡田→スポーツ
ドイツ→時事?スポーツ?
潜在的に近い語を同じように扱えそうかだけ見ればいい?
ラベリングする Latent topicにラベルを与えるだけ
この手抜きの問題: Latent topicが人間から見てもトピックであると言えるか? 俺がルールブック
この手抜きの理由: トレーニングデータ作れなかった。
全体が把握できない
作業量が確保できない
自動化が厳しいらしい
API化する
[Topic1:prob,Topic2:prob,] JSON
1.わかち書き2.単語のトピックごとの生起確率を集計(redis)
3.正規化
Getで渡せる長さのテキスト
関連 PLDAを利用した論文。レコメンデーションに使う話。
Collaborative Filtering for Orkut Communities: Discovery of User Latent Behavior. Wen-‐Yen Chen et al., WWW 2009. http://www.cs.ucsb.edu/~wychen/publications/fp365-‐chen.pdf
モデルの賞味期限の文脈で… The role of semantic history on online generative topic modeling. L AlSumait, D Barbará, C Domeniconi -‐ ise.gmu.edu http://www.ise.gmu.edu/~carlotta/publications/Siam_SemOLDA.pdf
LDAの文脈で… RのLDAパッケージのauthorがfacebook/data からLDAの論文だしてた
Not-‐So-‐Latent Dirichlet Allocation: Collapsed Gibbs Sampling Using Human Judgments
ePluribus: Ethnicity on Social Networks.
http://www.facebook.com/data#!/data?v=app_4949752878
Q&A http://www.baidu.jp/unlp/#omake