1 / 72

機械学習に基づく 自然言語処理システム

July 5, 2004 at 慶応大学. 機械学習に基づく 自然言語処理システム. 松本裕治 奈良先端科学技術大学院大学 情報科学研究科 (NAIST). 概要. 機械学習に基づく言語処理システム 日本語形態素解析システム「茶筌」 Support Vector Machines の紹介 修正学習モデル:形態素解析への応用 日本語の係り受け解析システム「南瓜」 未知語同定(中国語) 中国語の係り受け解析. 日本語形態素解析システム「茶筌」 ー 開発の履歴 ー. 統計情報に基づく形態素解析.

hank
Download Presentation

機械学習に基づく 自然言語処理システム

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. July 5, 2004 at 慶応大学 機械学習に基づく自然言語処理システム 松本裕治 奈良先端科学技術大学院大学 情報科学研究科 (NAIST)

  2. 概要 • 機械学習に基づく言語処理システム • 日本語形態素解析システム「茶筌」 • Support Vector Machinesの紹介 • 修正学習モデル:形態素解析への応用 • 日本語の係り受け解析システム「南瓜」 • 未知語同定(中国語) • 中国語の係り受け解析

  3. 日本語形態素解析システム「茶筌」ー 開発の履歴 ー

  4. 統計情報に基づく形態素解析 • 品詞付与された解析済みコーパスから、単語の出現のしやすさ、品詞(単語)のつながりやすさを確率値として求める。 • 文を構成する単語の出現確率が直前のn-1語にのみ依存すると仮定して言語の文をモデル化する • n=3 のとき,tri-gram model, n=2のとき,bi-gram modelという。 • 「茶筌」は可変長のマルコフモデルを実装しており、 bi-gram と tri-gram の混合を用いている。 • 文として単語列が与えられた際に最大の出現確率をもつ品詞列を求めることが目的 • そのために、単語の出現確率や品詞の連接確率の積が最大になるような品詞列を求める

  5. 格助詞 0 くるま 名詞 2500 1000 700 1300 で 助動詞 (連用) 0 くる 動詞 カ変(基本) 450 2700 1400 2700 くる 動詞 五段(基本) 3000 まで 格助詞 0 1400 形態素解析の例 4200 3200 4500 文頭 3150 5700 4550 7100

  6. 格助詞 0 くるま 名詞 2500 1000 まつ 動詞 五段(基本) 1900 800 700 1300 1500 で 助動詞 (連用) 0 くる 動詞 カ変(基本) 450 2700 1400 800 まで 格助詞 0 形態素解析の例 4200 3200 6900 7900 4500 文頭 3150 7250 2700 5700 4550 くる 動詞 五段(基本) 3000 1400

  7. 格助詞 0 くるま 名詞 2500 1000 まつ 動詞 五段(基本) 1900 800 700 くる 動詞 カ変(基本) 450 2700 1200 600 まつ 名詞 2500 600 形態素解析の例 4200 3200 6900 1300 4500 文頭 3150 1500 で 助動詞 (連用) 0 7300 1400 800 2700 8200 5700 4550 くる 動詞 五段(基本) 3000 まで 格助詞 0 7650 1400

  8. 格助詞 0 くるま 名詞 2500 1000 まつ 動詞 五段(基本) 1900 800 500 700 文末 くる 動詞 カ変(基本) 450 2700 600 960 まつ 名詞 2500 形態素解析の例 4200 3200 6900 7400 1300 4500 文頭 3150 1500 で 助動詞 (連用) 0 1200 7300 8260 1400 800 2700 5700 4550 くる 動詞 五段(基本) 3000 まで 格助詞 0 600 1400

  9. 形態素解析の例 4200 3200 6900 で 格助詞 0 くるま 名詞 2500 1000 まつ 動詞 五段(基本) 1900 800 500 700 7400 1300 4500 文頭 3150 1500 文末 で 助動詞 (連用) 0 くる 動詞 カ変(基本) 450 2700 1200 600 7300 960 まつ 名詞 2500 1400 800 2700 5700 4550 くる 動詞 五段(基本) 3000 まで 格助詞 0 600 1400

  10. 形態素解析の例 4200 3200 6900 で 格助詞 0 くるま 名詞 2500 1000 まつ 動詞 五段(基本) 1900 800 500 700 7400 1300 4500 文頭 3150 1500 文末 で 助動詞 (連用) 0 くる 動詞 カ変(基本) 450 2700 1200 600 7300 960 まつ 名詞 2500 1400 800 2700 5700 4550 くる 動詞 五段(基本) 3000 まで 格助詞 0 600 1400

  11. 自然言語処理の2大問題 • 曖昧性 (Ambiguity) • 言語処理のあらゆるレベルで曖昧性が生じるため、一意の解釈を得ることが困難 • 曖昧性を解消するために必要な知識が何であるかを知ることが困難 • 頑健性 (Robustness, Coverage) • 文法設計者/言語処理システム設計者が事前に予測することが困難な新しい言語現象が常に存在する • 単純に規則を列挙するだけでは、すべての現象をカバーすることができない • 未知の言語現象に対応するだけの柔軟性を言語処理システムが備えている必要がある

  12. 言語処理のための対極的アプローチ • 統計(機械学習)に基づく言語処理 • 統計的手法、機械学習の進歩による • 頑健性 / 曖昧性解消の能力 • 制約に基づく文法理論(語彙化文法) • 詳細な文法制約の語彙レベルにおける記述 • 制約違反を許容しない脆弱性 • 制約違反の緩和を実現したい→曖昧性の増加 統計的言語処理の頑健性と曖昧性解消力を活かしすため、 これを処理のためのコントロール情報として制約文法による 解析を行う

  13. 言語解析における言語知識とコーパスの利用(統計学習と制約処理の融合)言語解析における言語知識とコーパスの利用(統計学習と制約処理の融合) 言語解析 コーパスに基づく 言語解析 規則に基づく 言語解析 統計・学習 コーパス構築 文法知識・語彙知識 の獲得 データ コーパス 言語知識 (文法、語彙) 統計学習と 制約処理の融合

  14. 自然言語処理のために必要な機械学習法の性質自然言語処理のために必要な機械学習法の性質 • 大規模な素性(基本情報)を扱うことができること • 個々の単語を素性として扱う必要が生じる • 効果的なスムージング (例:単語と品詞の頻度/出現確率の間のスムージング) • 単語の出現頻度の偏り • データ過疎問題(Data sparseness problem) • 基本素性の組み合わせ素性を扱うことが必要

  15. × + ³ + = + ( w x ) b 1 if y 1 i i × + <= - = - ( w x ) b 1 if y 1 i i × + ³ y [( w x ) b ] 1 i i Support Vector Machinesの概要 2値分類,ユークリッド・ベクトル空間内の線形分離: 事例は、ベクトル空間内の点とその所属クラス (正例: +1, 負例:-1)よりなる 正例と負例の分離を、分離(超)平面から例までの距離(margin)が最大になるようにして行う:

  16. マージンdが最大の平面 最大マージンdを得るためには ||w|| を最小化すればよい 分離超平面

  17. 最適化問題 最大マージンの平面は次の最適化問題を解くのと同じ: 最小化: 条件: ラクランジュ定数 α を導入し、双対問題に変換する: 最大化: 条件: 最終的な分離関数:

  18. 1 2 3 4 5 6 7 1 2 4 5 6 7 1,2 1,3 1,4 1,5 1,6 1,7 2,3 2,4 2,5 Kernel関数の導入 線形分離が難しい問題 元の属性に基づくベクトル空間をより高次元な属性をもつ 高次元空間に写像する

  19. Kernel関数を用いる場合の学習 学習: 分離関数: 学習も分類も属性空間の内積にのみ依存する Φ で写像された空間における内積が実際にΦを計算すること なく求める方法があれば、計算による手間を激減させることが できる: K : Kernel function

  20. 例: 多項式Kernel カーネルトリック d次元の多項式Kernel 例: この例は、 2次の空間を 6次の空間に写像することと等しい (d次元の多項式カーネルは、元の空間の属性のd個の組み 合わせ属性を考慮することに相当する)

  21. 学習アルゴリズムの能力と計算量のトレード・オフ学習アルゴリズムの能力と計算量のトレード・オフ 学習モデルの能力と計算量

  22. 修正学習法[Nakagawa & Matsumoto 02] • 問題の大部分は能力が低いが効率のよいモデルで処理が可能 (例えば、確率モデルによる品詞タグ付け精度: 95%) • 処理のすべてを、能力が高いが効率の悪いモデルで行うのは無駄が多い • 2つのモデルの混合: • 効率よいモデルでデータの大半を処理 • 能力の高いモデルで前者の処理の誤り箇所を推定して修正する

  23. 修正学習法による形態素解析 • 確率モデルによる解析結果の誤りを指摘する分類器を構成 • 効率がよいが能力の低い学習モデルと効率に難点があるが能力の高い学習モデルとの組み合わせの一方法 低能力 高効率 高能力 低効率 Stochastic Model Binary Classifier Result Example Revise

  24. Rank Rank 4 4 1 5 5 2 3 1 2 3 修正学習法の例 実行 Stochastic Model 学習 Class Class A A Training Data Training example Test example B B B : x – X E : x – X x z C C O D : x – O D D X E E Binary Classifiers Label: O (Positive) X (Negative) A B C D E

  25. 英語の品詞タグ付け • コーパス: Penn Treebank WSJ (50 POS tags) • 訓練データ: 41,000 文 • テストデータ: 12,000 文 • 統計モデル: ICOPOST T3 (Second order Markov model) [Schröder,2001] • 修正モデル: SVM (2nd order polynomial kernel & linear kernel)

  26. 英語のPOS tagging(結果) (時間) (秒/文)

  27. 日本語形態素解析 • コーパス: RWCPコーパス (89 POS tags) • 訓練データ: 34,000 文 • テストデータ: 3,800 文 • 確率モデル: • bi-gram Markov model • 茶筌 (可変長Markov model) • 修正学習モデル: SVM (2nd order polynomial kernel)

  28. 日本語形態素解析(結果) (F-measure)

  29. 日本語の係り受け解析 • 文節の係り受け関係の基づく文の構文解析 • 二種類の制約: • 各文節は(最後の文節を除いて)、常に右側の文節に係る • 文節係り受けは互いに交差しない

  30. 日本語の係り受け解析の例 私は彼女と京都に行きます 入力文 形態素解析と文節まとめ上げ 私は / 彼女と / 京都に / 行きます 係り受け解析 私は / 彼女と / 京都に / 行きます

  31. 2.最大確率を与える木構造を CYKあるいは Chart 法を用いて求める Output 私は 1 / 彼女と 2 / 京都に 3 / 行きます 4 単純なモデル (確率モデル) Input • 係り受け確率を求めて以下のような行列を作る。 • (学習モデルは確率を求めるものなら何でもよい) 私は 1 / 彼女と 2 / 京都に 3 / 行きます 4 被修飾文節 2 3 4 1 0.1 0.2 0.7 修飾文節 2 0.2 0.8 3 1.0 係り受け行列

  32. 日本語係り受け解析システム「南瓜」(Cascaded Chunking Model)[Kudo & Matsumoto02] • 各文節が右側の文節に係ることができるかどうかを決定的に決めながら、文節のまとめあげを行う • 学習データは、実際に係りうけ解析を実行する過程を模倣することによって得られる

  33. 彼は1  彼女の2  真心に4  感動した。5 ? ? ? 彼は1  彼女の2  真心に4  感動した。5 O DD 彼は1   真心に4  感動した。5 ? ? ? ? ? ? 彼は1   真心に4  感動した。5 彼は1  彼女の2  温かい3  真心に4  感動した。5 O D O O DD 彼は1     感動した。5 彼は1     感動した。5 蓄積された学習事例 によるSVM学習 ? D SVMs 例: 学習の過程 解析済みの学習文 彼は1  彼女の2  温かい3  真心に4  感動した。5 彼は1  彼女の2  温かい3  真心に4  感動した。5 属性(2つの文節の内容)とタグ (D or O) のペアがSVMのための学習事例として蓄積される 学習 データ

  34. 彼は1  彼女の2  真心に4  感動した。5 ? ? ? 彼は1  彼女の2  真心に4  感動した。5 O DD 彼は1   真心に4  感動した。5 ? ? ? ? ? ? 彼は1   真心に4  感動した。5 彼は1  彼女の2  温かい3  真心に4  感動した。5 O D O O DD 彼は1     感動した。5 彼は1     感動した。5 ? D 例: 解析の実行 入力文 彼は1  彼女の2  温かい3  真心に4  感動した。5 彼は1  彼女の2  温かい3  真心に4  感動した。5 学習過程で得られた SVMによって係り受け関係が決定される SVMs

  35. B A C 学習に用いた属性情報 Modifyor not? 彼の1友人は2  この本を3  持っている4 女性を5 探している6 His friend-top this book-acc have lady-acc be looking for 修飾文節 被修飾文節 • 静的な属性 • 修飾文節/被修飾文節 • 中心語/機能語: 表層形, 品詞, 品詞細分類,  活用型, 活用形, 括弧の有無, 引用符の有無, 句読点の有無,… • 文節間属性: 距離, 格助詞の存在情報, 括弧の存在情報, 引用符, 句読点 • 動的な属性 [Kudo, Matsumoto 2000] • A,B: 機能語の情報を被修飾文節に与える • C:中心語の情報を修飾文節に与える

  36. 実験の設定 • 京都大学コーパス 2.0/3.0 • 標準データセット • 学習データ: 7,958 文 / 評価データ: 1,246 文 • 過去の研究と同一 [Uchimoto et al. 98], [Kudo, Matsumoto 00] • 大規模データセット • 38,383 文による2分割交差検定 • Kernel関数: 3次の多項式カーネル • 評価尺度 • 係り受け関係の精度 • 文正解精度

  37. 実験結果 データセット 標準 大規模 モデル Cascaded Chunking Probabilistic Cascaded Chunking Probabilistic 係り受け精度 (%) 89.29 89.09 90.45 N/A 文正解精度 (%) 47.53 46.17 53.16 N/A 学習データの文数 7,956 7,956 19,191 19,191 学習事例数 110,355 459,105 251,254 1,074,316 学習時間 (時間) 8 336 48 N/A 解析時間 (秒/文) 0.5 2.1 0.7 N/A

  38. 機械学習に基づく他の日本語係り受け解析法との比較機械学習に基づく他の日本語係り受け解析法との比較 学習モデル 学習データ (文数) 精度 (%) Fujio & Matsumoto [1998] Word cooccurence + smoothing EDR corpus(190,000) 86.7 Haruno [1999] Decision tree + Boosting EDR coupus(50,000) 85.0 Uchimoto [1999] MaxEnt + probabilities Kyoto-U corpus(7,956) 87.9 MaxEnt+constraint Grammar + prob. Kanayama [2000] EDR corpus(192,778) 88.6 Kyoto-U corpus(7,956) Kudo & Matsumoto [2000] SVM + probabilities 89.1 Kudo & Matsumoto [2002] SVM + cascaded chunking Kyoto-U corpus(7,956) 89.3 Kyoto-U corpus(19,191) 90.5

  39. SVMでは何が学習されているか? 負事例 正事例 w1 P1 P2 … … Pn w’1 N1 N2 … … Nm 分類すべき データ w2 w’2 S sim sim 事例とデータ間の 類似度 wn w’m 分類の決定: (事例による重み付き投票) W1×sim(P1,S)+W2×sim(P2,S)+...+Wn×sim(Pn,S) - [W’1×sim(N1,S)+…+W’m×sim(Nm,S)] アルゴリズムが学習するのは事例の重み

  40. 機械学習問題において設計すべき事項 • 何を決めなければならないか • 類似度 “sim”: モデル (kernel function) と素性集合の決定 • 事例の重み: SVMによって学習される。 多くの事例が0重みを得る。一部の事例(support vectors)が分離関数を決める。 • 設計者が行うのは、よい素性集合と適切なKernel関数の選定

  41. 未知語処理 • 未知語の問題 • 辞書に登録されていない単語 • 辞書にすべての単語が登録されていることはありえない (e.g., 地名、人名、組織名、専門用語など) • 日本語や中国語では未知語と他の単語の境界を同定することが難しい

  42. 中国語(日本語)の未知語抽出[Goh, Asahara & Matsumoto 03, 04] • 確率モデルによる形態素解析 (単語分かち書きと品詞付与) • 文字列に分割(文字素性付与) • SVMに基づくchunkingによる未知語抽出

  43. Chunking (基本句チャンキングの例) He reckons the current account deficit will narrow to only 1.8 billion in September. chunk tag annotation He reckons the current account deficit will narrow to only 1.8 billion in September. NP-BVP-BNP-B NP-I NP-I NP-IVP-B VP-IPP-BNP-B NP-I NP-IPP-BNP-B B : 開始位置 I : チャンクの内部 phrase tag position tag Chunking の結果 Hereckonsthe current account deficitwill narrowtoonly 1.8 billioninSeptember. NPVPNPVPPPNPPPNP

  44. Chunking (名詞句チャンキング) He reckons the current account deficit will narrow to only 1.8 billion in September. chunk tag annotation He reckons the current account deficit will narrow to only 1.8 billion in September. B O B I I IO O O B I IO B B : チャンクの開始位置 I : チャンクの内部 O : チャンクの外部 position tag Chunkingの結果 Hereckonsthe current account deficitwill narrowtoonly 1.8 billioninSeptember. NPNPNPNP

  45. ステップ1: 分かち書き+品詞付与 Input:由于长江泥沙的冲积,江海潮流、… Because of the accumulation of mud from Changjiang, the current of river and sea, … 由于 c 长江 ns 泥 unk 沙 nr 的 u 冲 v 积 unk , w 江 nr 海 nr 潮流 n 、 w 確率モデルによる形態素解析の出力

  46. ステップ2: 文字毎の情報付与 Input:由于长江泥沙的冲积,江海潮流、… 由于 c 长江 ns 泥 unk 沙 nr 的 u 冲 v 积 unk , w 江 nr 海 nr 潮流 n 、 w 由 c-B 于 c-E 长 ns-B 江 ns-E 泥 unk-S 沙 nr-S 的 u-S 冲 v-S 积 unk-S , w-S 江 nr-S 海 nr-S 潮 n-B 流 n-E 、 w-S 文字素性の付与 位置タグ 品詞タグ

  47. ステップ3: 未知語 chunking Input:由于长江泥沙的冲积,江海潮流、… 由于 c 长江 ns 泥 unk 沙 nr 的 u 冲 v 积 unk , w 江 nr 海 nr 潮流 n 、 w 由 c-B 于 c-E 长 ns-B 江 ns-E 泥 unk-S 沙 nr-S 的 u-S 冲 v-S 积 unk-S , w-S 江 nr-S 海 nr-S 潮 n-B 流 n-E 、 w-S 由 c-B O 于 c-E O 长 ns-B O 江 ns-E O 泥 unk-S? 沙 nr-S 的 u-S 冲 v-S 积 unk-S , w-S 江 nr-S 海 nr-S 潮 n-B 流 n-E 、 w-S チャンキングに 使用される素性

  48. ステップ3: 未知語 chunking Input:由于长江泥沙的冲积,江海潮流、… 由于 c 长江 ns 泥 unk 沙 nr 的 u 冲 v 积 unk , w 江 nr 海 nr 潮流 n 、 w 由 c-B 于 c-E 长 ns-B 江 ns-E 泥 unk-S 沙 nr-S 的 u-S 冲 v-S 积 unk-S , w-S 江 nr-S 海 nr-S 潮 n-B 流 n-E 、 w-S 由 c-B O 于 c-E O 长 ns-B O 江 ns-E O 泥 unk-S unk-B 沙 nr-S ? 的 u-S 冲 v-S 积 unk-S , w-S 江 nr-S 海 nr-S 潮 n-B 流 n-E 、 w-S チャンキングに 使用される素性

  49. ステップ3: 未知語 chunking Input:由于长江泥沙的冲积,江海潮流、… 由于 c 长江 ns 泥 unk 沙 nr 的 u 冲 v 积 unk , w 江 nr 海 nr 潮流 n 、 w 由 c-B 于 c-E 长 ns-B 江 ns-E 泥 unk-S 沙 nr-S 的 u-S 冲 v-S 积 unk-S , w-S 江 nr-S 海 nr-S 潮 n-B 流 n-E 、 w-S 由 c-B O 于 c-E O 长 ns-B O 江 ns-E O 泥 unk-S unk-B 沙 nr-S unk-I 的 u-S O 冲 v-S unk-B 积 unk-S unk-I , w-S O 江 nr-S unk-B 海 nr-S unk-I 潮 n-B O 流 n-E O 、 w-S O SVMに基づくチャンキングの結果

  50. 未知語抽出実験の結果 • 結果のF値

More Related