部分木に基づくマルコフ確率場と 言語解析への適用 工藤 拓 松本裕治 奈良先端科学技術大学院大学 1 統計的言語解析 (背景) Y X PRP VBD DT NN PRP VBD DT NN X I ate a cake I ate a cake I ate Y a cake NP VP NP PRP VBD DT NN I ate a cake Text Chunking (Shallow Parsing) History-based Methods から X Y へ GlobalYdiscriminative models Part of Speech Tagging X PRP VBD DT NN I ate a cake VBD PRP ate I 方法論の変化 NN I ate a cake PRP VBD DT NN DT a Dependency Parsing cake S NP PRP VP VBD ate I NP DT NN a cake Phrase Structure Parsing 木から木への変換 X: 入力木, Y: 解析木 学習データ : T { X1 , Y1 ,, X K , YK } 統計的言語解析: P(Y|X) を最大にする Y を導出2 History-based Methods (HM) 言語処理 (品詞タグ付け, 構文解析) を 分類問題の順次適用として実現 Input: I had an apple クラス PRP PRP VBD PRP VBD DT PRP VBD DT 事例 (=履歴) NN 正準的な構築順序を定義 過去の履歴を元に, 現在 のクラスを決定 既知の学習アルゴリズム を直接適用可能 3 History-based Methods の問題点 履歴に依存 いったん間違えると, 伝播 ラベルバイアス問題 [Lafferty 01] 最適な構築順序とは? 品詞タグ付け (前向き/後ろ向き) 構文解析 (トップダウン/ボトムアップ/左隅/右 隅) 一意に決定困難 (タスク依存, 入力文依存) 発見的に対処 前向き, 後ろ向きの多数決 [Kudo 01] 4 Global discriminative models 解析結果 1 つを学習事例とみなす +1 解析木そのものが正しいか正しくないか学習 構築順序という概念は存在しない 順序に関係せず, 唯一の確率値 P(Y|X)を算出 I bought a 事例 car with this money クラス -1 I bought a car with this money -1 I bought a car with this money MRF/CRF [Lafferty 01] Tree Kernel [Collins 02] HMM-SVM [Altun 03] … 5 Global discriminative models の論点 負例の構築方法 T { X1 , Y1 ,, X K , YK } HM の N-best 解で近似 陰に構築 (動的計画法) 学習アルゴリズム側で動的に生成 学習方法 MRF (線形対数モデル/最大エントロピー) Boosting SVM 素性 人手で発見的に定義 Tree Kernel - 全部分木の候補から素性選択 6 概要 手法 負例の構築方法 (N-best 解) 学習方法 (MRF) 素性 (全部分木候補から素性選択) 実験 考察, 従来研究との比較 まとめと今後の課題 7 1. 手法 - 負例の構築方法 - 学習方法 - 素性 8 負例の構築方法 History-based Methods の N-best 解 確からしい順に N 個結果を得る Viterbi + A* ビーム探索 N-best 解に正解が存在すると仮定 入力木 X に対する N-best 解の集合を H(X) と表記 9 学習方法 (1/2) マルコフ確率場 (a.k.a. 線形対数モデル / 最大エントロピーモデル) n exp i f i (Y ) i 1 P (Y | X ) Z(X ) n Z ( X ) exp i f i (Y ) Y H ( X ) i 1 f i () : 素性関数 (1 ,, n ) : パラメータ 10 学習方法 (2/2) パラメータの導出 T { X1 , Y1 ,, X K , YK } 最尤推定 (最大エントロピー原理) ˆ arg max logP(Yk | X k ) k 正規分布による正則化 (過学習の抑制) [Chen99] 2 || || ˆ arg max logP(Yk | X k ) 2 k : ハイパーパラメータ (交差検定等で設定) 11 素性関数 f i () の設計 (1/3) 解析木の 構造 を考慮したい 解析木 Y 中の 部分木 を素性 各部分木にパラメータ i が対応 a a a b c d Y 0.2 b a c 0.5 -0.1 b 0.1 c -1.0 c d 0.3 a d 0.4 a b c 0.3 b a c 0.1 d c d 0.1 12 素性関数 f i () の設計 (2/3) X: a – b – c a b b c a b c-0.1 b 0.3 0.1 c a c Y1 a 0.2 H(X): n-best (n=3) a b Y2 a a c 0.2 b c 0.1 P(Y1|X)=exp(0.8)/Z b 0.1 b a c-0.1 a -0.3 0.2 Y3 b b c 0.1 a c -0.1 P(Y2|X)=exp(-0.1)/Z c -0.1 c a b0.1 a -0.1 0.2 c c b 0.1 a b 0.2 P(Y3|X)=exp(0.4)/Z 正解の解析木の対数確率尤度を最大にするようλを設定 13 素性関数 f i () の設計 (3/3) T { X1 , Y1 ,, X K , YK } K 素性集合: F k 1{t | t Yk } 素性関数: ft (Y ) I (t Y ) (全部分木) (部分木 t の有無) exp t f t (Y ) tF P (Y | X ) Z(X ) Z ( X ) exp t f t (Y ) Y H ( X ) tF 14 素性選択 (1/2) K F k 1{t | t Yk } 素性集合 F は 巨大 全部分木を使用→ 過学習, 学習困難 素性選択 1. 2. 3. 頻度: ξ回以上出現する部分木のみ 部分木のサイズ: サイズが L 以上 M以下 クラスと素性の相関性: カイ二乗値が χ以上 1,2,3 を全て満たす部分木のみを使う Σ=<ξ,L,M,χ>: 素性選択パラメータ 15 素性選択 (2/2) クラスと素性の統計的な相関性 K 正例: 負例: P k 1 Yk N-best 解 K N k 1{H ( X k ) Yk } 「良い」部分木 t : 正例/負例に偏って出現する t a OPt , b ONt , c OPt , d ONt chi(t ) (ad bc) /(a b)(a c)(b d )(c d ) 2 chi(t) がχ以上の部分木 t を素性 16 実装 頻出部分木マイニングの適用 木の集合から頻出する部分木を効率よく列挙す るアルゴリズム 最右拡張 (木の枚挙手法) FREQT [Asai02], TreeMinerV [Zaki02] 最右拡張を用いた高速な解析 ~O(|Y|) リランキングのコストは問題になりにくい 17 2. 実験 18 設定 英語品詞タグ付け PTB 15 – 18: 学習, 20: テ スト, 21: dev HM: 最大エントロピー法に 基づく Tagger, N=20 ☆ 英語基本句同定 PTB 15 – 18: 学習, 20: テ スト, 交差検定: dev HM: 最大エントロピー法に 基づく Chunker , N=20 ☆ X I ate a Y cake PRP VBD DT NN I ate a cake Part of Speech Tagging X Y PRP VBD DT NN I ate a cake NP VP NP PRP VBD DT NN I ate a Text Chunking (Shallow Parsing) ☆ [Ratnaparkhi 98] の拡張, 正則化付き最大エントロピー 19 cake 解析木 Y の表現方法 品詞タグ付け BOS PRP VP DT JJ NN NN MD VP TO RB He reckons the current account deficit will narrow to # CD NN . EOS only # 1.8 billon . 基本句同定 BOS NP VP PRP VP NP DT JJ VP NN NN MD VP PP NP TO RB He reckons the current account deficit will narrow to # CD NN O EOS . only # 1.8 billon . 20 実験結果 (品詞付与) モデル 精度 History-based ME Tagger (n-best 出力用) 95.98% 修正学習法 [Nakagawa et al. 02] 95.87% 提案手法 96.10% 21 実験結果 (基本句同定) モデル 精度(F 値) History-based ME Chunker (n-best 出力用) 93.40 History-based SVM Chunker [Kudo et al. 00] 93.46 History-based SVM Chunker の 8システム の多数決 [Kudo et al. 01] 93.91 History-based RW Chunker [Zhang et al. 02] 93.57 History-based RW Chunker + syntactic role 素性 [Zhang et al. 02] 94.17 提案手法 22 94.13 考察 両タスクとも、従来手法に比べ高性能 恣意的な素性選択ではなく, 一般的, 統一的な選択 素性選択パラメータ: Σ=<ξ,L,M,χ> L = 2 に固定したときの最適な M 品詞タグ付け: M=4 基本句同定: M=5 大きな部分木は過学習の原因 23 関連研究との比較 負例 学習 素性 欠点 [Collins01 N-best ] [Collins02 N-Best ] MRF/Boosting Heuristics 素性の恣意性 Perceptron Kernel 解析コスト大 CRF/FF DP MRF Heuristics [Lafferty01] [Miyao 03] 陰に列挙 素性の恣意性 学習コスト大 HMM-SVM 〃 SVM N-best MRF [Altun 03] 本手法 (マルコフ性を満 たす必要) 〃 部分木 + 素性選択 〃 24 まとめ 部分木を素性とする MRF の提案 統計的相関性に基づく素性選択 頻出部分木マイニングアルゴリズムの適用 一般的な手法, タスク非依存 英語品詞タグ付け 英語基本句同定 従来手法に比べ高精度 25 今後の課題 他のタスク 係り受け解析, 構文解析 グラフ構造への拡張 (部分グラフ) 頻出部分グラフマイニングアルゴリズム 負例の構築 N-best に変わる新しい手法 マルコフ連鎖モンテカルロ 学習アルゴリズム HMM-SVM 26
© Copyright 2025 ExpyDoc