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.

情報抽出入門 〜非構造化データを構造化させる技術〜

28,167 views

Published on

情報抽出入門 〜非構造化データを構造化させる技術〜

  1. 1. 情報抽出⼊入⾨門〜~⾮非構造化データを構造化させる技術〜~2013/05/16 PFIセミナー株式会社プリファードインフラストラクチャー  海野  裕也 (@unnonouno)
  2. 2. ⾃自⼰己紹介l  海野  裕也 (@unnonouno)l  Jubatusチームリーダーl  分散オンライン機械学習基盤l  2011年年4⽉月からPFIにJOIN専⾨門l  ⾃自然⾔言語処理理l  テキストマイニング
  3. 3. 宣伝l  明後⽇日 5/18(⼟土)にTwitter研究会@フューチャーアーキテクトで発表しますl  6/2(⽇日)にJubatus Casual Talks #1を開催しますl  すでに定員に達してしまいましたが、増員あるカモl  発表者、LTも募集中3
  4. 4. アジェンダl  ⾃自⼰己紹介l  情報抽出と⾮非構造化データ解析l  情報抽出技術編l  情報抽出応⽤用編4
  5. 5. 情報抽出と⾮非構造化データ解析5
  6. 6. 情報抽出とは?l  びっくりするくらい説明が少ない・・・
  7. 7. 例例で解説l  例例えばメールの⽂文⾯面から、スケジュール登録に必要な情報を探しだして情報を整理理してほしい7 来週の⽊木曜⽇日から、ビッグサイトでクラウドエクスポがあるので、そのための資料料作りをします。皆様参加してください。構造化できそうな情報が地の⽂文に埋め込まれている
  8. 8. Microsoft Academic Searchで探すと・・・l  論論⽂文数がどんどん減っている・・8
  9. 9. 海野の情報抽出に関する理理解l  情報は必ず⽣生のデータのどこかに埋まっているl  埋まっている情報を掘り起こして、加⼯工しやすいように整理理する技術9 ⽣生のデータの中に埋め込まれた情報を掘り出す技術
  10. 10. あらゆる⾮非構造化データに同じ問題が潜んでいる10 画像 ⼈人⽝犬音声 行動ログ P F I18:03 カメラのサイト18:04 レンズのサイト18:05 カメラのサイト18:06 価格情報サイト18:09 ニュースサイト製品⽐比較中
  11. 11. 広い意味でみると、⾮非構造化データから情報を抜き出す技術l  ⾮非構造化データ=情報が「構造化されていない」データl  「ない」のではなくて「されていない」l  隠れた構造(情報)が埋まっているl  埋もれた情報を掘り出さないことには分析できない11
  12. 12. 今⽇日は⼀一貫して⾃自然⽂文からの情報抽出の話をしますl  今⽇日は⾃自然⽂文から情報抽出の話をしますl  画像や⾳音声、またそれらの名寄せなどの話はしません12
  13. 13. 応⽤用例例1:イベント情報抽出l  カレンダー情報の整理理などl  古典的な問題設定13 来週の⽊木曜⽇日から、ビッグサイトでクラウドエクスポがあるので、そのための資料料作りをします。
  14. 14. 応⽤用例例2:商品情報抽出l  構造化されていないテキストから、商品の属性情報を抽出して整理理するl  商品ごとのどのような属性があるかも同時に抽出するような研究も有るl  実際に楽天やeBay、Googleなどの研究が多数14 属性名 属性値品名 シメイ種類 ビール⾊色 ホワイト値段 650円
  15. 15. 応⽤用例例3:バイオ論論⽂文の情報整理理l  論論⽂文中の遺伝⼦子、タンパク質、化合物の関係・情報を抽出して整理理しないと論論⽂文を読み切切れないl  protein-protein interactionl  辻井研が⻑⾧長年年研究していた⼤大きなテーマ15
  16. 16. 整理理が出来ればできることが広がるl  データ分析基盤とつなげるl  テキストマイニングl  俗に「前処理理」と呼ばれる処理理は情報抽出に対応するl  情報検索索基盤とつなげるl  メタデータの抽出l  抽出した情報をまとめあげるl  オントロジーや辞書の⾃自動整理理l  知⾒見見の発⾒見見16
  17. 17. 表層から意味の世界へl  テキスト(表層)から概念念(意味)へのマッピングを⾏行行なっているともとれるl  テキストにかぎらず、画像、⾳音声なども概念念にマッピング出来れば、概念念の世界でJOINができる※但し、⾃自然⾔言語処理理で意味処理理というともっと広い17 King of PopMichael Jackson
  18. 18. 情報抽出  技術編18
  19. 19. 情報抽出技術の3つの側⾯面⼤大雑把には3つの操作が必要1.  情報の抜き出し2.  情報の正規化3.  情報間の関係の整理理19
  20. 20. 情報抽出の3要素20 2013年年5⽉月8⽇日〜~10⽇日  東京ビックサイトにて⾏行行われる第4回クラウドコンピューティングEXPOにおいて、ネオジャパン様のブースをお借りしSedue for BigDataを出展致します。2013/5/8 2013/5/10東京ビックサイト第4回クラウド・コンピューティングEXPO項⽬目名 項⽬目開始⽇日 2013/5/8終了了⽇日 2013/5/10場所 東京ビックサイトイベント名第4回クラウドコンピューティングEXPO1. 情報の抜き出し2. 情報の正規化3. 関係整理理※同時に解いても良いし、この順に解かなければならないわけではない
  21. 21. 1. 情報の抜き出しl  俗に固有表現抽出(Named Entity Recognition; NER)と呼ばれるl  定式化すると、シーケンスからのサブシーケンスの抽出とそれの分類21
  22. 22. 分類と抽出はここが違うl  分類l  ⼊入⼒力力は⽂文書,画像,⾳音声など任意l  出⼒力力はラベルl  抽出l  ⼊入⼒力力は⽂文(シーケンス)l  出⼒力力は⽂文中の区間と付加情報スパム?⼈人名評判
  23. 23. 分類と抽出はここが同じl  ⽂文書の解析という意味では同じl  ⼊入⼒力力は⽂文書データ、出⼒力力は解析結果l  結果だけ⾒見見れば同じように⾒見見えるl  機械学習やルールを使うという意味では同じl  ルールベースも機械学習も使う⽅方法はあるl  問題設定としては、前者は分類問題、後者はシーケンシャルラベリングなどを応⽤用するのが⼀一般的
  24. 24. BIO法l  NER問題を系列列ラベリング問題に変換する⽅方法l  抽出対象の系列列に対して部分列列のどの部分かでラベルを割り当てるl  部分列列の開始点をB (Begin)l  部分列列の開始点以外をI (Inside)l  部分列列以外をO (Outside)l  BIOのタグを推定して、BIIII… の部分が⽬目的の部分列列と判断する24 今 ⽇日 は 1 6 ⽇日 だB I I OO O O
  25. 25. 系列列ラベリング問題l  系列列に割り当てるラベルを当てる問題l  普通の分類問題は出⼒力力候補がN個だが、系列列ラベリングだとNL個l  もちろん、それぞれを独⽴立立に解いてもよい25 ⼈人 ⼈人 ⼈人 ⼈人 ⼈人系列ラベリング問題 入力 普通の分類問題 ⼈人出力 男 男 ⼥女女 ⼥女女 男 男ここを当てたい
  26. 26. 各ラベルを独⽴立立に求めるよりも同時に求める⽅方がよい直感的な理理由l  構造の情報を使った⽅方が簡単に当てられるはず!l  例例)同性は隣隣り同⼠士に座りやすいと仮定・・・l  例例)名詞の前には形容詞が来やすい26 ⼈人 ⼈人 ⼈人 ⼈人 ⼈人男 ⼥女女 ? ⼥女女 男両隣隣が⼥女女だから⼥女女な気がする・・・
  27. 27. 隠れマルコフモデル (Hidden Markov Model; HMM)l  隠れ状態の列列と観測列列に分けてモデル化するl  隠れ状態は左隣隣の隠れ状態のみに依存する(マルコフ性)l  観測列列は隠れ状態のみに依存するl  系列列ラベリングの⽂文脈では隠れ状態列列が出⼒力力列列27 ⼈人 ⼈人 ⼈人 ⼈人 ⼈人男 男 ⼥女女 ⼥女女 男こちらを当てたい こちらが入力 隠れ状態列 観測列 P(男|男) P(女|男)
  28. 28. 条件付き確率率率場 (Conditional Random Field; CRF)[Lafferty2001]l  ラベルの同時確率率率を直接モデル化するl  P(y|x) ∝ exp(∑i f(i)・w)l  特に⼊入⼒力力が系列列の時をlinear chain CRFと呼ぶl  ⾃自然⾔言語処理理の⽂文脈で出てくるとほとんどがこれのこと28 ⼈人 ⼈人 ⼈人 ⼈人 ⼈人男 男 ⼥女女 ⼥女女 男隣接ラベルのみに特徴関数fiが設定されている
  29. 29. 2. 情報の正規化l  同じ意味の事柄を異異なる表現で表記するl  「同じ」の基準はニーズによって変わるl  表記が異異なる原因は様々であるl  本質的に由来の異異なる場合以外で、機械的に判定しやすいものも有るため、これを整理理する29
  30. 30. 同義表現の⽣生成仮定で複数存在する1.  表記揺れ2.  略略語3.  翻字4.  修飾5.  表現の異異なり30 スペリングの問題 本質的な意味の問題 これは私による整理理で、もっと他の現象もあるかも
  31. 31. 表記揺れl  同⼀一⾔言語、同⼀一アルファベットでも、同じ発⾳音の単語の表記に⾃自由度度があるl  スペルミスもこれの⼀一種とみなしても良良さそうl  例例l  サーバ  vs サーバーl  バイオリン  vs ヴァイオリンl  color vs colour31
  32. 32. SimString [岡崎  10]l  閾値 t 以上の類似疎ベクトルを⾼高速に探索索するアルゴリズムl  疎ベクトルの類似度度が t 以上になるためには、t に応じた個数以上の共通⾮非ゼロ要素がなければならないl  この性質を使って候補を絞り込む注意:⼀一般の類似ベクトル検索索に使おうとすると、閾値を設定できない(ふうつうは上位N件)ため、うまく使えなさそう32 $ simstring -u -d web1tja/unigrams.db -t 0.7 -s cosineスパゲッティー                スパゲッティ                スパゲッテー                スパゲティー                スパッティー…
  33. 33. 翻字  (Transliteration)l  例例l  岩⽥田  vs Iwatal  中国語の翻字は意味としても通じるように作るのがオシャレらしい33 翻字(ほんじ、英: transliteration)とは、言語学において特定の言語を記した文字表記を別の文字による表記に移すことをいう。翻字は印刷物の発行する際などに技術的な問題や読者の便宜のために行われる。
  34. 34. Transliteration Alignment [Pervouchine09]l  翻字は基本的に同じ⾳音の変換l  ⽂文字と⽂文字の対応をとるアライメント問題とみなせるl  アライメント:統計的機械翻訳などで利利⽤用される、単語間の対応関係※他の⼿手法もあります34 [Li09]
  35. 35. 翻字をつかったサービスの例例l  外国⼈人の名前の翻字を⾃自動⽣生成してステッカーやTシャツを作るサービスl  http://shoname.jp/l  先⽇日エキスポに⾏行行ったら出展していた35
  36. 36. 略略語 (Abbreviation)l  ⻑⾧長い単語を、アルファベット上の規則で省省略略した単語l  略略語の⽣生成仮定でも複数の種類があるl  頭字語 (Acronym): 頭⽂文字をつなげて別の単語を作るl  ASEAN, APEC, LINUXl  複数の単語の⼀一部を結合l  パソコン、ブログ、キムタクl  単⼀一の単語を省省略略l  チョコ、ブクロ36
  37. 37. 修飾l  無視してもよい様な修飾表現を排除したいl  修飾されている以上、何かしら意味の変化があるl  同⼀一視したい基準は、アプリケーションやお客さん依存l  例例l  岩⽥田  vs 岩⽥田さんl  例例えばこの例例でも、丁寧に話される場合とそうでない場合の差を⾒見見ようとすると、「さん」の有無が重要な要素になってしまう37
  38. 38. 表現の異異なりl  表記上の差、修飾語の差を超えた変化があるが、意味的に同⼀一視したいl  ⼀一般的に同義語というと、このレベルのことを想定するl  どれを同⼀一視したいかは極めて分野依存l  例例l  ⾞車車  vs ⾃自動⾞車車l  マイケル・ジャクソン  vs キングオブポップ38
  39. 39. Distributional Hypothesisl  前後の⽂文脈(前後の単語、動詞、修飾語)をベクトル表現して、類似⽂文脈を持つ単語を同⼀一の意味だと推定するl  同義語の発⾒見見に限らず、例例えば訳語の⾃自動抽出など、同じ意味を持つ表現を探すときによく使われる39 同じ⽂文脈で出やすい単語は同じ意味を持ちやすい
  40. 40. そうは簡単に⾏行行かない・・・「前後⽂文脈」が⾃自明には定義できないため、同義語を超えて関連語がたくさん⾒見見つかってしまうl  「Mac」は「Apple」と共起しやすいl  「Apple」は「iPhone」と共起しやすいl  ということは、「Mac」と「iPhone」は同義語・・・だ?40
  41. 41. 3. 情報間の関係の整理理l  エンティティー間の関係を当てる問題を、関係抽出(Relation Extraction) というl  欲しい情報のテンプレートを埋める問題を、TemplateFillingという41
  42. 42. 関係抽出の解き⽅方l  エンティティー間の関係の有無を分類問題として解くl  シンプルな分類問題として解くl  構⽂文情報などをカーネルを使ってうまく特徴化するl  もちろんルールで⾏行行う⽅方法や、ルールを機械学習的に発⾒見見するような⽅方法もあるl  抽出されたエンティティーの間に書かれた情報が特に重要になるl  X is located in the Y42
  43. 43. 関係レベルになると構⽂文情報をうまく使いたいl  関係代名詞などの複雑な構⽂文になると、関係のあるエンティティー間に別の句句が⼊入り込むl  ⽂文の構造を利利⽤用して関係を判断する必要が出てくる43 [Sarawagi08]
  44. 44. 情報抽出  応⽤用編44
  45. 45. 多段階の処理理を⾏行行うフレームワークが欲しいl  ⾼高次の情報処理理になればなるほど、処理理が多段階になるl  多段の処理理のフレームワークがほしいl  最終的なエラーの原因解析が難しくなる形態素解析 構⽂文解析 NER正規化 関係抽出
  46. 46. テキストマイニングl  情報抽出+データマイング+情報検索索=  テキストマイニングl  世の中のテキストマイニングエンジンは、程度度の差こそあれ概ね3つの技術の融合46
  47. 47. 正解情報はより複雑なので、正解づくりのUIが必要l  カテゴリ分類程度度だとテキストエディタでも良良いが、複雑な情報抽出や関係抽出になると正解の編集が⼤大変47 ANNIEhttp://www.aktors.org/technologies/annie/ Zoguma
  48. 48. さらに外部の知識識とつなげるl  外部の知識識やリソースとヒモ付けるl  オントロジーとつなげれば概念念の関係を辿れるl  別のデータとつなげる別のアプリケーションを作れるl  ⼤大規模なオントロジーを構築するにはコストが⾼高い48
  49. 49. 外部の情報との連携の例例:地図情報との連携l  http://areadas.jp/l  テキスト中のキーワードの発⾒見見と地図情報とのヒモ付49
  50. 50. まとめl  情報抽出は⾮非構造のデータを整理理する技術l  ほとんどの⾮非構造データに類似の問題が有るl  ⼀一般的にはテキストデータに対する処理理l  情報抽出の3つの処理理があるl  情報を抜き出すl  情報を正規化するl  情報間の関係を整理理するl  コア以外の技術で考えないといけないことが多数l  情報抽出を応⽤用したアプリケーションl  正解データを作るためのUI50
  51. 51. 参考⽂文献l  S. Sarawagi.Information Extraction.Foundations and Treands in Databases, Vol. 1, No. 3 (2007) pp. 261-377,2008.l  J. Lafferty, A. McCallum, F. Pereira.Conditional Random Fields: Probabilistic Models for Segmenting andLabeling Sequence Data.ICML2001.l  岡崎直観, 辻井潤⼀一.⾼高速な類似⽂文字列列検索索アルゴリズム.情報処理理学会創⽴立立50周年年記念念全国⼤大会, 1C-1, 2010.l  V. Pervouchine, H. Li, B. Lin.Transliteration Alignment.ACL&IJCNLP 2009, pp. 136-144, 2009.51
  52. 52. Copyright © 2006-2012Preferred Infrastructure All Right Reserved.

×