Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Pythonを使って言語処理の コンペティションにチャレンジ

3,973 views

Published on

PyData.Tokyo 2015年10月23日 講演資料
https://pydata.tokyo/

Published in: Technology
  • Be the first to comment

Pythonを使って言語処理の コンペティションにチャレンジ

  1. 1. 山田 育矢 (Ikuya Yamada) 株式会社Studio Ousia / 慶應義塾大学 / 国立情報学研究所
  2. 2. STUDIO OUSIA 自己紹介 ‣ ‣ ✦ ‣ 2
  3. 3. 「エンティティリンキング」のソフトウェアを 開発して、二つのコンペティションに挑戦しました。
  4. 4. OSSのライブラリを多用して、全て Python/Cythonベースで開発。
  5. 5. STUDIO OUSIA 「エンティティリンキング」って何? ‣ ‣ ✦ ✦ 5 Kyary Pamyu Pamyu is a Japanese model and singer. Her public image is associated with Japan's kawaisa culture centered in the Harajuku, Tokyo. Harajuku wikipedia/Harajuku wikipedia/Kawaii KawaiiKyary Pamyu Pamyu wikipedia/Kyary_Pamyu_Pamyu
  6. 6. STUDIO OUSIA Outline ‣ ‣ 6
  7. 7. Twitterからのエンティティリンキング An End-to-End Entity Linking Approach for Tweets [#Microposts ’15]
  8. 8. STUDIO OUSIA Background ‣ Twitterのエンティティリンキングは、短 く、口語的で、ノイズが多いことから非常に 難しい ‣ 既存手法は、より綺麗な長いテキスト (ニュ ース等)を対象にしており、Twitterだと精度 が悪い (例: Illinois Wikifier and Wikipedia Miner) 8
  9. 9. STUDIO OUSIA ‣ 一般的なEntity Linking実装でのツイートでの 精度は非常に悪い [Rizzo et al. ’14] 9
  10. 10. STUDIO OUSIA #Microposts NEEL Challenge ‣ International World Wide Web Conference (WWW)内で開催 されている#Micropostsワークショップにて2014年、2015年 とツイートからのEntity Linkingに関するコンペティション (NEEL Challenge) が行われた ‣ ツイートに対するエンティティリンキングのデータセットが配 布され、精度を競う形式で開催 ‣ 対象となるKnowledge Baseのリンク先はDBpedia URI 10
  11. 11. STUDIO OUSIA #Microposts NEEL Challenge 2015 ‣ 21チームが参加を表明したものの、ルールが複雑であっ たなどの理由で7チームが最終的に残った ‣ 参加者はHTTP経由でEntity LinkingのAPIを公開し、主 催者側で、APIを通じて精度を評価する形式で評価 11
  12. 12. STUDIO OUSIA #Microposts NEEL 2015コーパス 12 100000025580548097 31 35 http://dbpedia.org/resource/BRIC Thing 100000025580548097 69 74 http://dbpedia.org/resource/Intel Organization 100000025580548097 3 8 http://dbpedia.org/resource/Intel Organization 100008638684475392 104 110 http://dbpedia.org/resource/Afghanistan Location 100010138022330368 29 34 http://dbpedia.org/resource/Japan Location ‣ 2011年から2014年までの計6,025ツイートが対象 ‣ Tweet ID、開始位置、終了位置、DBpedia URI、エンテ ィティのクラスの入ったアノテーションが与えられる
  13. 13. システムの概要
  14. 14. STUDIO OUSIA アーキテクチャ 14 Entity Linking NIL Mention Detection Input Text Results 4つの教師付き学習器を使用 Type Prediction (KB Entity Mentions) Type Prediction (NIL Mentions) ✦ エンティティとNILエンティティ(DBpediaに無いエンティティ)を検出し、 そのエンティティの種類 (PERSON, LOCATION等)を分類する ✦ Entity Linkingとは別にNIL Mention Detectionモジュールを実装 ✦ エンティティとNILエンティティそれぞれに対してエンティティの種類の 分類器を実装
  15. 15. STUDIO OUSIA メンション・エンティティ辞書 ‣ メンション・エンティティ辞書は、メンション文字列を可能なリンク先 エンティティにマップする辞書 ‣ メンション文字列は、下記のソースから取得: ✦ Wikipediaのページタイトル ✦ Wikipediaのリダイレクトページのタイトル ✦ Wikipediaのアンカーテキスト (Wikipediaのページ内リンクに 含まれる文字列) 15 apple Apple Inc. Apple (fruit)
  16. 16. STUDIO OUSIA メンション候補の生成 ‣ 固有表現抽出を用いずにツイート内の全ての可能なN- gram (n <= 10)を候補とする (End-to-End Entity Linking) ‣ メンション候補は、メンション・エンティティ辞書に対し て、N-gram文字列を使ってクエリして取得する 16 Mention Candidate Generation Mention Detection and Disambiguation
  17. 17. STUDIO OUSIA 固有表現抽出とは? 17 ‣ 固有表現抽出(Named entity recognition, NER)とは、固有表現 (固有名詞等) を テキスト中から抽出する技術 ‣ いくつかのオープンソースの優れた実装がある (e.g., Stanford NER, Illinois Named Entity Tagger, MITIE) ‣ エンティティリンキングのエンティティ名を認識するのに使用されることが多い
  18. 18. STUDIO OUSIA メンション候補の生成 ‣ 固有表現抽出を用いずにツイート内の全ての可能なN- gram (n <= 10)を候補とする (End-to-End Entity Linking) ‣ メンション候補は、メンション・エンティティ辞書に対し て、N-gram文字列を使ってクエリして取得する 18 Mention Candidate Generation Mention Detection and Disambiguation
  19. 19. STUDIO OUSIA メンションの検出と曖昧性解消 ‣ 生成したメンション候補の中から、正しいメンションを選択する ‣ 教師付き機械学習 (Random Forest) を用いた ‣ 主な特徴量: ✦ ベース: Link probability, Capitalization probability, Topical coherence, etc. ✦ 文字列類似度: 編集距離, Jaro-Winkler, Soft TF-IDF, Jaccard Similarity, etc. ✦ Word and Entity embeddingを用いた類似度 ✦ Wikipedia Page Viewから取得したポピュラリティ 19 Mention Candidate Generation Mention Detection and Disambiguation
  20. 20. STUDIO OUSIA Link Probability 20 Her public image is associated with Japan's kawaisa culture centered in the Harajuku, Tokyo Takeshita Street is a street lined with fashion boutiques, cafes in Harajuku in Tokyo, Japan. Department Store and Museum is a department store located in the Harajuku... Takeshita Street Kyary Pamyu Pamyu Laforet Link Plain text LINK_PROB(Harajuku) = 2/3
  21. 21. STUDIO OUSIA Topical Coherence Feature ‣ 該当エンティティがその他のエンティティとどの程度関連しているかを計 測する ‣ エンティティの類似度はWikipedia in-link-based similarity (WLM) [Milne and Witten ‘08]で計測する ‣ 該当エンティティとドキュメント内の他のエンティティとの平均類似度を 特徴とする [Milne and Witten ‘08] 21 e: Entity; KB: Entities in KB; c(e): Entities having a link to e e: Entity; E: Set of entities in the document
  22. 22. STUDIO OUSIA Topical Coherence Feature 22 Kyary Pamyu Pamyu is a Japanese model and singer. Her public image is associated with Japan's kawaisa culture centered in the Harajuku, Tokyo. 0.2 0.4 REL(Kyary Pamyu Pamyu, kawaisa culture) = 0.4 REL(Kyary Pamyu Pamyu, Harajuku) = 0.2 COHERENCE(Kyary Pamyu Pamyu, E) = (0.4 + 0.2) / 2 = 0.3
  23. 23. STUDIO OUSIA 単語とエンティティの分散表現 ‣ 単語とエンティティを同一の低次元空間にマップす る技術 ‣ Skip-gram (word2vec)を拡張して独自に開発 ‣ エンティティが与えられた文書中にどのくらい 出現しやすいかを意味の類似度を使って計測 ‣ 別途論文として発表予定 23
  24. 24. STUDIO OUSIA Wikipediaページビューからのポピュラリティ取得 ‣ ツイートの作成日のWikipediaページビューによって、エンティティのポピュ ラリティを取得 ‣ 従来は、Wikipediaのダンプからのみポピュラリティを取得していた ‣ ツイートの作成時におけるエンティティのポピュラリティを自然に取得できる 24
  25. 25. 結果
  26. 26. STUDIO OUSIA ‣ 優勝しました! 26
  27. 27. STUDIO OUSIA ‣ 昨年のWWWで行われた#Microposts 2014 コンペティションではMicrosoftが優勝 27
  28. 28. スコアの差はどこから?
  29. 29. STUDIO OUSIA ‣ 一般的なエンティティリンキング実装では、固有表現抽出器(NER)を 使用して、テキスト中から候補となるエンティティ文字列を抽出する ‣ #Microposts 2014の2位以下のエントリーでは、固有表現抽出器 (NER)を使用して、エンティティ文字列を抽出している 29
  30. 30. STUDIO OUSIA 30 ‣ Twitterからの固有表現抽出器の精度はState-of-the-artな実装でも非常に低い (F1値で22.46%~51.5%) ‣ 昨年のMicrosoftのアプローチ及び我々のアプローチはNERに依存しないEnd- to-endなアプローチを取っている ‣ スコアの大きな乖離はこのあたりから来ているのでは?
  31. 31. STUDIO OUSIA まとめ ‣ 新しいツイートに対して有効なEnd-to-Endのエンテ ィティリンキング手法を提案した ‣ 固有表現抽出を用いずにEnd-to-Endな手法を採用す ることが重要であることが分かった ‣ ページビューや分散表現を用いた手法などの新しい 手法を提案した 31
  32. 32. エンティティリンキングによる ツイートからの固有表現抽出の改善 Enhancing Named Entity Recognition in Twitter Messages Using Entity Linking [ACL WNUT '15]
  33. 33. STUDIO OUSIA 固有表現抽出とは? 33 ‣ 固有表現抽出(Named entity recognition, NER)とは、固有表現 (固有名詞等) を テキスト中から抽出する技術 ‣ いくつかのオープンソースの優れた実装がある (e.g., Stanford NER, Illinois Named Entity Tagger, MITIE) ‣ エンティティリンキングのエンティティ名を認識するのに使用されることが多い
  34. 34. STUDIO OUSIA Background ‣ ツイートからの固有表現抽出は、ノイズが多 く、短く、口語的であるため難しい ‣ 代表的な固有表現抽出手法の精度は非常に低い (F1スコアで50ポイント程度 [Derczynski et al. 2015]) 34
  35. 35. STUDIO OUSIA ツイートからの固有表現抽出は エンティティリンキングで良くなるか? 35
  36. 36. STUDIO OUSIA ACL W−NUT Workshop ‣ ACL 2015 内で開催されたWorkshop on Noisy User-generated Text (W-NUT)にてツイートからの固有表現抽出のShared taskが行われた ‣ Shared task用に作成された固有表現抽出のデータセットが配布され、 精度を競う形式で開催 ‣ ツイート中から固有表現を認識し、10個の指定されたクラス (person, company, geo-loc, product, tvshow, movie, facility, musicartist, sportsteam, other) に分類する 36 https://noisy-text.github.io/
  37. 37. STUDIO OUSIA ACL W-NUT コーパス 37 ‣ ツイートおよび固有表現タグが訓練用として与えられ、未知のテストデータ上で 精度を計測する ‣ 2010年9月に取得された訓練セット(1,795ツイート)、開発セット(599ツイート)、 及び2014年12月-2015年2月に取得された開発セット(425ツイート)が与えられる ‣ 2014年12月-2015年2月に取得されたテストセット(1,000ツイート)で精度を検証
  38. 38. STUDIO OUSIA 参加チーム ‣ シンガポール科学技術研究庁、National Research Council Canada、University of Sheffieldなど、合計8チームが参加 38
  39. 39. アプローチ
  40. 40. STUDIO OUSIA 40 New Frozen Boutique to Open at Disney's Hollywood Studios “Frozen”を抽出するのは、従来の固有表現抽出の 手法では難しい
  41. 41. STUDIO OUSIA Entity Linking 41 New Frozen Boutique to Open at Disney's Hollywood Studios /wiki/Frozen_(2013_film) /wiki/The_Walt_Disney_Company /wiki/Disney’s_Hollywood_Studios ‣ エンティティリンキングを使うと”Frozen”を検出できる: ✦ “Frozen”は非常にポピュラーなエンティティである (Wikipedia のリンク構造やページビューから判断できる) ✦ “Frozen”は意味的に他のエンティティと強く関連している
  42. 42. STUDIO OUSIA Our Approach ‣ 最初にエンティティリンキングをEnd-to-endで行う ‣ 検出されたメンションの情報を固有表現抽出に用いる ‣ エンティティに関する情報はWikipedia、DBpedia、 Freebase等の知識ベースから抽出する ‣ エンティティの検出と分類は別のコンポーネントで処理する 42 エンティティ リンキング エンティティの検出 (NER) エンティティの分類 (NER)
  43. 43. End-to-End Entity Linking エンティティ リンキング エンティティの 検出 エンティティの 分類
  44. 44. STUDIO OUSIA End-to-End Entity Linking ‣ #Microposts 2015で用いたツイート用の エンティティリンキング実装を用いた 44 Image taken from NEEL2015 Challenge Summary: http://www.slideshare.net/giusepperizzo/neel2015-challenge-summary
  45. 45. エンティティの検出 エンティティ リンキング エンティティの 検出 エンティティの 分類
  46. 46. STUDIO OUSIA エンティティの検出: アプローチ ‣ 教師付き機械学習を用いてすべての可能なn-gram (n <= 10) に 対して確信度スコアを付与する ‣ 教師付き機械学習には、Random forestを用いた ‣ N-Gramがオーバーラップした場合には、文頭から順に 最長一致したものを採用する ‣ 使用した機械学習器の特徴量: ✦ エンティティに関連する特徴 ✦ 言語的な特徴 (NERの結果や品詞タグ等) 46
  47. 47. STUDIO OUSIA エンティティの検出: エンティティに関連する特徴 ‣ エンティティリンキングが付与した確信度スコア ‣ エンティティのポピュラリティ: ✦ Wikipediaでのインバウンドのリンク数 ✦ Wikipediaでの平均ページビュー数 ‣ メンションに関連する指標: ✦ Link probability ✦ Capitalization probability 47
  48. 48. STUDIO OUSIA エンティティの検出: 言語的な特徴 ‣ Stanford NERがメンションを検出したか ‣ Ark Tweet NLPが付与した該当単語及び 周辺単語の品詞タグ ‣ 該当単語及び周辺単語がCapitalizeされているか ‣ メンションの長さ (単語ベース、文字ベース) 48
  49. 49. STUDIO OUSIA Results ‣ 二位のチームと比較してSegmentationタスクで10.34 F1、 Classificationタスクで5.01 F1差をつけて優勝 49 Performances of the proposed systems at segmenting entities Performances of the proposed systems at both segmentation and classification tasks NLANGP nrc multimedialab USFD
  50. 50. STUDIO OUSIA Conclusion ‣ エンティティリンキングを用いることで、ツイー トの固有表現抽出の精度を向上することができる ‣ エンティティリンキングを使うと、知識ベース上 の高品質な情報を固有表現抽出で有効に使用する ことができるようになる 50
  51. 51. STUDIO OUSIA さいごに ‣ ‣ ✦ ✦ ‣ ✦ ✦ 51
  52. 52. STUDIO OUSIA 製品化 ‣ 52
  53. 53. ! ikuya@ikuya.net / " @ikuyamada # http://www.ikuya.net

×