ブログトップ 記事一覧 ログイン 無料ブログ開設

hamadakoichi blog このページをアンテナに追加 RSSフィード Twitter

2010-07-04

[][] 第1回 自然言語処理勉強会東京 に参加してきた  第1回 自然言語処理勉強会@東京 に参加してきたを含むブックマーク  第1回 自然言語処理勉強会@東京 に参加してきたのブックマークコメント

「第1回 自然言語処理勉強会東京 (#tokyotextmining)」(id:nokuno さん主催) に参加してきた。


ATND: 第1回 自然言語処理勉強会@東京 : ATND

Google Group: Google グループ


素敵な会でした。主催者のid:nokuno さん、講師の id:sleepy_yoshi さん、id:n_shuyo さん、[Twitter:@PENGUINANA_] さん、 [Twitter:@suzuvie]さん、ありがとうございました。

また素敵な会場提供して下さった 株式会社ミクシィさんにも感謝。


以下、ツイートまとめ(Togetter)、各講師資料、メモ、の覚書き。

Togetter

第1回 自然言語処理勉強会@東京 (#tokyotextmining) - Togetter


FSNLPの第1章を読む (id:nokuno, [Twitter:@nokuno])

nokunoさんエントリ:Yoh Okunoの日記

メモ

FSNLP(Foundations of Statistical Natural Language Processing):98年の本

POSタギング、確率的CFG

・Zipf(ジフ)の法則:「単語の頻度は頻度の順位に反比例する」

 ●経験則。なぜ「順位の1乗」に反比例するか。

  ⇒ Zipf則はなぜ成り立つのかの理論的裏付け - Mi manca qualche giovedi`? (id:n_syuyo さん)

 ・Least Effort原理:人々は努力を最小化しようとする。

  (単語長が関係しているかもしれない。シミュレーションが行われている。)

 ・トムソーヤの例、ブラウンコーパスの例

 ・複雑ネットワーク対数スケールに入れると大体直線に乗る。

 ・pitman yor を使っていると自然にZipfの法則を使っていることになる。

・Mandelbrotの法則

・単語の意味の数に関する法則:意味の数 ∝ 頻度のルート

・同じ単語が現れる間隔に関する法則

・単語の長さに関する法則

関連:ジップの法則 - Wikipedia

Foundations of Statistical Natural Language Processing (The MIT Press)

Foundations of Statistical Natural Language Processing (The MIT Press)




ソーシャル検索エンジンAardvarkの論文紹介 (id:sleepy_yoshi, [Twitter:@sleepy_yoshi])

The Anatomy of Large-Scale Social Search Engine

メモ

・従来のキーワード検索エンジンから村パラダイム

・村パラダイム

 ・知り合いに自然言語でたずねる。

 ・仲のよい人の言っていることは信頼できる

・Aardvark:ソーシャル検索エンジン

 ・Googleに5000万ドルで買収された

 ・aardvarkの言葉の意味:きつい仕事、ハードワーク、戦闘機

・シンプルなアーキテクチャ

 ・外部のソーシャル情報を使う (Facebook等)

 ・能動的なクロールは不要

 ・ユーザーが資源:

  ・より多くのユーザーによる、広い質問回答

  ・より密なソーシャルグラフ

スコア

 ・質問者: uj, クエリ:q, 回答候補者: ui

  s(ui, uj, q) = p(ui|uj) p(ui|q)

  ・P(ui|q):relevance score (クエリ依存) e.g., TF-IDF

  ・P(ui|uj):quality score (クエリ非依存)e.g, PageRank

 ・従来の検索エンジンとの違い

  ・p(ui|uj):「権威」でなはく「関係」

  ・p(ui|q) :「関連性」ではなく「回答可能性」

・回答スコアの計算方法

 ・トピックモデル(PLSIを利用)

 ・計算効率がいい:トピック数が数千程度

・Indexing People

 ・Topics

  ・登録時に設定したトピック

  ・友人によるアノテーション

  ・オンラインプロフィールからの抽出 (Facebook,etc)

  ・ホームページブログから抽出

  ・IMメッセージなどから自動抽出 (Twitter,etc)

  ・トピック強化:

  ・スムージング

   ・トピックに関する協調フィルタリング

   ・意味的な類似度を利用(wikipediaなどのコーパス利用)

 ・Connection

  ・以下の特徴に関し、重み付きコサイン類似度を計算しソーシャルグラフ構築

   ・Social connection (common friends and affiliations)

   ・Demographic similarity

   ・Profile similarity (e.g., common favorite movies)

   ・Vacabulary match (e.g., IM shortcuts)

   ・Chattiness match (frequency of follow-up messages)

   ・Verbosity match (the average length of messages)

   ・Politeness match (e.g., use of “Thanks!”)

   ・Speed match (responsiveness to other users) 21

・質問の解析

 ・質問の分類

  ・NonQuestionClassifier

  ・InappropriateQuestionClassifier

  ・TrivialQuestionClassifier

  ・LocationSensitiveClassifier

 ・p(t|q)の計算

  ・keywordMatchTopicMapper

  ・TaxonomyTopicMapper

  ・SalientTermTopicMapper

  ・UserTagTopicMapper

・ランキングアルゴリズム

 ・TopicExpertise

 ・Connectedness

 ・Availability

 ・ルールベースのフィルタ

・システムがユーザーに回答依頼をした理由を伝える

・評価

 ・システムに関する回答の早さ

 ・平均 2.08 件の回答

・sleepy_yoshiさん感想

 ・個々はオーソドックスな技術の組合せだが、動くシステム

 ・村パラダイム

 ・質問理由を提示している

 ・質問をスルーする選択肢の多さ

・補足:

 ・質問応答検索は、入力クエリに適合性が高い「文書」を検索

 ・ソーシャルサーチエンジンは、入力クエリに適合性が高い「人」を検索

Webページの本文抽出 using CRF (id:n_syuyo, [Twitter:@shuyo])

shuyoさんエントリ:http://d.hatena.ne.jp/n_shuyo/20100704/tokyotextmining

メモ

・本文抽出 for Web

 ・ウェブページの本文を抽出する。 Pathtraq

 ・本文抽出を正しくできることが一番

・ExtractContents

 ・アルゴリズム

  ・htmlをブロックに分割

  ・ブロックごとにスコア計算

  ・連続するブロックを大ブロックにまとめる

  ・スコアが最大になる大ブロックを算出

 ・課題

  ・本文、関連記事を分離できない

  ・本文がない、極端に短いページで長いテキストを抽出してしまう

  ・本文の範囲がアプリごとに違う

 ・系列ラベリング

  ・系列に関してラベルを付与

  ・様々な問題を解くための定式化のひとつ

    ・形態素解析係り受け、など

  ・隠れマルコフモデル(Hidden Markov Model):

   ・代表的な系列タギング手法なひとつ

   ・隠れ変数が1時のマルコフ連鎖をなす

   ・高速な算出が可能

   ・課題:

    ・非独立な素性を扱うことができない。

    ・大域的な解を得られない

  ・Conditional Random Field (CRF) 条件付乱数場 [Lafferty+ 2001]

   ・系列ラベリングのための確率モデル

   ・HMMより最適な系列を扱いやすい。

   ・Mecabで利用されている

・CRFのPython実装

 ・Lenear-chain CRFの学習&ラベリングアルゴリズム

 ・ScipyのPFGSを使ってパラメータ推論

 ・mumpy/scipyにできる限り処理させる

・Project Cutenberg 本文抽出 using CRF

 ・系列ラベリングの問題に定式化

 ・素性設計

 ・素性設計以外にヒューリスティックな工夫はしない

・CRFについて雑感:

 ・面白さ

  ・非独立な素性を好きに設計できる

  ・不必要な素性を選んでも性能悪化しにくい

  ・CRF精度が高く、制御しやすい

 ・CRFはまだ少し難しい

  ・分かりやすい解説がまだない。

  ・ライブラリはあるが研究用でまだまだ使いにくい

・CLEANEVAL: 本文抽出コンテキスト 2007年

LDAでtweetタギングしてみた ([Twitter:@PENGUINANA_])

メモ

・デモ:no title

論文紹介

 ・短いテキストだと意味が分からない

 ・流れ:

  ・(Wikipediaから)網羅的なコーパスを作る

  ・LDAでモデルをつくる

  ・(Wikipediaから)教師データを作る 

  ・分類器を作り、分類

 ・結果:LDAを使うと、トレーニングデータ数は少なくてもいい。

・実装

 ・MySQL+Python+TokyoCabinet

 ・MeCab+Python+MPICH2

・LDAで次元縮約:Google の PLDA ライブラリ(いいライブラリ)

・モデル評価:Twitterのモデルの賞味期限、1、2ヶ月

ラベリングする:Latent topicにラベルを手動で付与する

API化する

・関連:

 ・PLDAを利用した論文:あなたがどのコミュニティに入るべきか、のレコメンデーション

 ・モデルの賞味期限:LDAをオンラインで適用

 ・RのLDAパッケージのAuthorが facebook/data からLDA論文出していた

 ・Facebook

FSNLPの2章を読む+IRMサーベイ」(@suzuvie さん)

Foundations of Statistical Natural Language Processing - 2. Mathematical Foundation

・確率論

情報理論

 ・言語がNice(2.48 -> 2.49)

  式中の関数期待値を置き換えられる、値が定義域内にある。