390 likes | 493 Views
テキストと用語の間:コーパス からの用語抽出と構造化. 影浦 峡 国立情報学研究所 人間 ・ 社会情報研究系 2004 年 11 月 27 日. 発表概要. コーパスからの用語抽出 頻度を用いる手法 学習素性を用いる手法 現状の限界と課題 用語の構造化 文脈ベクトルを用いるクラスタリング 語の内部構造を用いる手法 現状の限界と課題. 発表概要. コーパスからの用語抽出 頻度を用いる手法 教師あり学習を用いる手法 現状の限界と課題 用語の構造化 文脈ベクトルを用いるクラスタリング 語の内部構造を用いる手法 現状の限界と課題.
E N D
テキストと用語の間:コーパスからの用語抽出と構造化テキストと用語の間:コーパスからの用語抽出と構造化 影浦 峡 国立情報学研究所 人間・社会情報研究系 2004年11月27日
発表概要 • コーパスからの用語抽出 • 頻度を用いる手法 • 学習素性を用いる手法 • 現状の限界と課題 • 用語の構造化 • 文脈ベクトルを用いるクラスタリング • 語の内部構造を用いる手法 • 現状の限界と課題
発表概要 • コーパスからの用語抽出 • 頻度を用いる手法 • 教師あり学習を用いる手法 • 現状の限界と課題 • 用語の構造化 • 文脈ベクトルを用いるクラスタリング • 語の内部構造を用いる手法 • 現状の限界と課題
頻度による用語抽出:概要 • テキスト中である頻度上の特徴をもって出現する要素を用語と認定する手法 • 高い頻度であらわれる、とか・・・・・・ • 大きく、二種類のタスク • 用語抽出:個々の語がどれだけ他の語と違うかを計る。単純語・複合語に適用できる • 連語抽出:並んで現れる語がどれだけ強く関係しているかを計る、連語や複合語の抽出
頻度による用語抽出:流れ • テキスト集合を得る • テキストを形態素解析する = 単位切り+品詞の付与 • 用語の候補となる単語や単語列を、品詞や品詞のパターンで指定する • その単位に対して、着目する頻度的振舞いを計る統計的/数量的尺度を適用 • ある閾値以上のものを用語とみなす
頻度による用語抽出:tfidf • tfidf = fti log (N/Ni) • fti: 用語候補 ti の文書集合内頻度 • N: 全文書数 • Ni: ti を含む文書数 • 情報検索分野で、検索キーワードの重み付けによく使われる手法 • 一応情報理論的解釈がなりたつ
頻度による用語抽出:tfidf • 尺度が定義される世界は語と文献の行列
頻度による用語抽出:代表性 • 仮説:ある単語が「特徴的」な単語であれば、その単語が現れる文脈も「特徴的」であるだろう。 • 例:助詞「は」はどこにでも現れるが、語「きのこ」が現れる文脈(トピック)は限られる • だから、ある語が現れる文脈が、平均的な文脈とどれだけ離れているか?が鍵 • 文脈中の単語分布間の距離をとればよい
頻度による用語抽出:代表性 • Rep(t) = ( Dist(Pt,P) / Dist(PRt,P) ) • Dist:二つの分布間の距離 • Dt :用語 t が含まれる文書集合 • Pt: Dtにおける語の分布 • P: 全文書Dにおける語の分布 • PRt: Dtと同じ大きさの無作為抽出文書における語の分布
頻度による用語抽出:代表性 • 尺度が定義される世界は語と語の行列
頻度による用語抽出:語構成貢献度 • 仮説:沢山の複合語を作る要素は専門用語性が高いと言えるだろう • 例:「症」は沢山の複合語で使われるが、「山」は1種類の複合語で使われるだけ・・・とか。 • だから、複合語内で前・後に連接する要素の数が多い要素は、重要だろう。 • 複合語を構成する要素についてそれを数える。
頻度による用語抽出:語構成貢献度 • 各要素について、複合語内での前接数preと後接数postとを数える • 複合語m1m2…mkの重みは: W(m1m2…mk)= 1/k^α*∑i (pre(mi)+post(mi))
頻度による用語抽出:語構成貢献度 • 定義される世界は複合語内要素の行列
頻度による連語抽出 • 仮説:ある二つの単語が、偶然並んで現れるよりも有為に多い頻度で並んで現れれば、それは、その二つの単語の並びは連語、慣用句、用語だからである • 例:出現確率:「医療」0.01、「情報」0.005、「医療情報」0.0001とする。「医療」と「情報」が相互に独立なら0.00005のはずなので、それより「医療情報」の出現は有為に大きい
頻度による連語抽出 • 尺度が定義される空間は(二語連接の例)
頻度による連語抽出 • この分割表の上で定義される統計的尺度を用いればよい • カイ二乗検定 • 対数尤度比 • 特殊相互情報量 ・・・ など
発表概要 • コーパスからの用語抽出 • 頻度を用いる手法 • 教師あり学習を用いる手法 • 現状の限界と課題 • 用語の構造化 • 文脈ベクトルを用いるクラスタリング • 語の内部構造を用いる手法 • 現状の限界と課題
用語抽出:教師あり学習手法 • 手作業で用語にタグを付けた学習用データを作成しておく • 品詞列や文字列、出現位置など様々な素性を工夫して、用語と非用語を識別する「モデル」を学習させる • たんぱく質やゲノム名など、特定カテゴリーの要素に有効性が証明されている
用語抽出:教師あり学習手法 • 基本的には、タスクを、分類問題としてとらえるもの。 • 最近では、学習のメカニズムとしては、サポートベクタマシン(SVM)などがよくつかわれる。ほかに、決定木など、いろいろ使うことができる。
発表概要 • コーパスからの用語抽出 • 頻度を用いる手法 • 教師あり学習を用いる手法 • 現状の限界と課題 • 用語の構造化 • 文脈ベクトルを用いるクラスタリング • 語の内部構造を用いる手法 • 現状の限界と課題
用語抽出:現状と課題 • 再現率と精度の奇妙な平均等でパフォーマンスを論じているが、これは現実の要請にまるで合わない • 沢山の重み付け尺度が提案されているが、このように評価される限りでは、どれも似たり寄ったり(ただし手法的な美しさや健全性は異なる)
用語抽出:現状と課題 • 用語のバリエーション(言換え)等がまったく考慮されていない(cf. Kageura 04) • 医学の現場などではきわめて重要! • 抽出された用語の用語集合としての性質がまったく考慮されていない • 「男」があって「女」が無い辞書は普通のいみではちょっと困る
用語抽出:現状と課題 • 包括的に病名を取り出すとすると・・・・・・ • まず、基本的な病名のセットを一貫して取り出す(集合としての一貫性!) • 次に、基本病名のバリエーション(言換え表現)や、基本病名と同様のパターンで作られたものを取り出す規則を考える • 現状の用語抽出は、こうした現実的適用にまだ対処し切れていない
発表概要 • コーパスからの用語抽出 • 頻度を用いる手法 • 教師あり学習を用いる手法 • 現状の限界と課題 • 用語の構造化 • 文脈ベクトルを用いるクラスタリング • 語の内部構造を用いる手法 • 現状の限界と課題
用語の構造化 • 緩やかなもの:似た意味の単語を集める 犬・猫・動物・インコ/家・ビル・屋根 • もっと体系的なもの:関係を明示 同義関係:「病気」と「病」 上下関係:「犬」と「柴犬」 反義関係:「昼」と「夜」(ちょっと嘘) 全体部分関係:「体」と「手」
発表概要 • コーパスからの用語抽出 • 頻度を用いる手法 • 教師あり学習を用いる手法 • 現状の限界と課題 • 用語の構造化 • 文脈ベクトルを用いるクラスタリング • 語の内部構造を用いる手法 • 現状の限界と課題
用語の構造化:文脈ベクタ • 仮説:意味の近い用語は、その用語が現れる文脈も近い • したがって、用語の文脈に使われている単語の分布の近さを量れば、似た単語を集めることができる • 用語抽出における「代表性」の尺度と同様の考えに基づいている
用語の構造化:文脈ベクタ • 例: 注目する語 その語の文脈に出現する語 「犬」 毛、餌、骨、獣医、事故 「車」 石油、渋滞、通勤、事故 「猫」 毛、三味線、餌、ペットボトル 「自転車」 渋滞、泥棒、通勤、ソクハイ →文脈語を使ってクラスタリング・・・
用語の構造化:文脈ベクタ • 様々なクラスタリング手法が使われている • 技術的問題: • 言語は、文脈に出現する語の種類が多いため、クラスタリングの計算量が多い • 言語は、文脈に出現する語の頻度が低い、または、スカスカのため、うまくまとまらない • 細かい意味関係は取れない(例:反義関係にある語の文脈は実は似ている)
発表概要 • コーパスからの用語抽出 • 頻度を用いる手法 • 教師あり学習を用いる手法 • 現状の限界と課題 • 用語の構造化 • 文脈ベクトルを用いるクラスタリング • 語の内部構造を用いる手法 • 現状の限界と課題
用語の構造化:内部構造 • 前提:多くの専門語は複合語である • 前提:専門語は体系的に作られる • 目論見:したがって、内部構造を分析すれば関係が取れるだろう・・・ 「検索」は「情報検索」の上位語 「情報検索」と「文献検索」は兄弟語 「言語生成」と「言語解析」は対立語
用語の構造化:内部構造 • そこそこの範囲でしか通用しない • 構造が対応してても意味は対応しない 例:ヒメオオクワガタはオオクワガタの下位 語ではない。 例:日本語と自立語は兄弟ではない。前者 は「言語」、後者は「単語」。
発表概要 • コーパスからの用語抽出 • 頻度を用いる手法 • 教師あり学習を用いる手法 • 現状の限界と課題 • 用語の構造化 • 文脈ベクトルを用いるクラスタリング • 語の内部構造を用いる手法 • 現状の限界と課題
用語の構造化 • 文脈ベクタ、内部構造を使う手法それぞれの欠点はすでに述べた • 両者はどう補い合うか?という研究はほとんどない • 現実のニーズに対して、要求仕様が明確になされないまま、閉塞した研究が行なわれている
終わりにかえて:状況整理 • 本当にまじめに「用語抽出と構造化」が必要とされるところでは、 • 用語集合の集合としての性質が問題となる 例えば、辞書。50万語の辞書と8万語の辞書と3万語の辞書とは異なるポリシーをもって見出し語集合が集められる(50万語の辞書の任意の6パーセントを取れば小辞典ができるのではない)
終わりにかえて:状況整理 • 本当にまじめに「用語抽出と構造化」が必要とされるところでは、 • 安直に「用語は変化しない」と言えない 例えば、「構文解析」は「構文を解析する」のように言換えられる(指す概念は同等)。カルテ上の病名表記などでは、もっとバリエーションと一定のパターンでの生産性が高いだろう
終わりにかえて:状況整理 • 本当にまじめに「用語抽出と構造化」が必要とされるところでは、 • 用語間の関係は、目的に応じてしっかり決められることが多い。多少似たような語のクラスターというだけでは不足
終わりにかえて:状況整理 • 専門用語の自動抽出手法も、専門用語の自動構造化手法も、対処できていない • 暫定的課題: • 最終的に、人間の手は必要 • どこまで、機械が自動処理で支援できるか? • そのときに、優先的に求められる仕様は何か? (例:網羅性対精度)
最後・・・・・・ ありがとうございました