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

72
機機機機機機機機 機機機機機機機機機機 機機機機 機機機機機機機機機機機機機 機機機機機機機 (NAIST) July 5, 2004 at 機機機機

Upload: hank

Post on 15-Jan-2016

65 views

Category:

Documents


0 download

DESCRIPTION

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

TRANSCRIPT

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

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

松本裕治奈良先端科学技術大学院大学情報科学研究科(NAIST)

July 5, 2004at 慶応大学

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

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

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

日本語形態素解析システム「茶筌」

ー 開発の履歴 ー

システム アルゴリズム 辞書検索方式・辞書サイズJuman 1.0(1989 ~ 1993)

接続コスト(人手作成)

B-tree ・ 5万語~12万語

Juman 2.0(1994 ~ 1996)

接続コスト(人手作成)

NDBM( ハッシュデータベース)・12万語

茶筌 1.0(1997 ~1998)

接続コスト(人手作成)

パトリシア木・12万語~23万語

茶筌 2.0(1998 ~2002)

可変長 n-gram (統計学習)

パトリシア木 / Suffix array ・23万語

茶筌 2.3(2003 ~ )

可変長 n-gram /品詞グルーピング

ダブル配列による TRIE ・23万語

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

統計情報に基づく形態素解析

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

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

形態素解析の例

文頭

くるま名詞

2500700

くる動詞

カ変(基本)450

2700

くる動詞

五段(基本)3000

2700

で格助詞

01000

4500

4200

5700

3150

3200

まで格助詞

1400

1400

で助動詞

(連用)0

1300

7100

4550

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

形態素解析の例

文頭

くるま名詞

2500700

くる動詞

カ変(基本)450

2700

で格助詞

01000

4500

4200

5700

3150

3200

まつ動詞

五段(基本)1900

800

まで格助詞

1400

くる動詞

五段(基本)3000

2700

1400

で助動詞

(連用)0

1300

800

6900

7250

4550

1500

7900

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

形態素解析の例

文頭

くるま名詞

2500700

くる動詞

カ変(基本)450

2700

で格助詞

01000

4200

5700

3150

3200

まつ動詞

五段(基本)1900

800

1400

くる動詞

五段(基本)3000

2700

1400

1300

6900

4500

まで格助詞

で助動詞

(連用)0

8004550

1500

まつ名詞2500

600

600

7300

8200

7650

1200

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

形態素解析の例

文頭

くるま名詞

2500700

くる動詞

カ変(基本)450

2700

で格助詞

01000

4200

5700

3150

3200

まつ動詞

五段(基本)1900

800

1400

くる動詞

五段(基本)3000

2700

1400

1300

6900

4500

まで格助詞

で助動詞

(連用)0

8004550

1500

まつ名詞2500

600 7300

600

1200960

文末

5007400

8260

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

形態素解析の例

文頭

くるま名詞

2500700

くる動詞

カ変(基本)450

2700

で格助詞

01000

4200

5700

3150

3200

まつ動詞

五段(基本)1900

800

1400

くる動詞

五段(基本)3000

2700

1400

1300

6900

4500

まで格助詞

で助動詞

(連用)0

8004550

1500

まつ名詞2500

600 7300

600

1200960

文末

5007400

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

形態素解析の例

文頭

くるま名詞

2500700

くる動詞

カ変(基本)450

2700

で格助詞

01000

4200

5700

3150

3200

まつ動詞

五段(基本)1900

800

1400

くる動詞

五段(基本)3000

2700

1400

1300

6900

4500

まで格助詞

で助動詞

(連用)0

8004550

1500

まつ名詞2500

600 7300

600

1200960

文末

5007400

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

自然言語処理の2大問題曖昧性 (Ambiguity)

I. 言語処理のあらゆるレベルで曖昧性が生じるため、一意の解釈を得ることが困難

II. 曖昧性を解消するために必要な知識が何であるかを知ることが困難

頑健性 (Robustness, Coverage)I. 文法設計者 / 言語処理システム設計者が事前に

予測することが困難な新しい言語現象が常に存在する

II. 単純に規則を列挙するだけでは、すべての現象をカバーすることができない

III. 未知の言語現象に対応するだけの柔軟性を言語処理システムが備えている必要がある

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

言語処理のための対極的アプローチ

1.統計(機械学習)に基づく言語処理 統計的手法、機械学習の進歩による 頑健性 / 曖昧性解消の能力

2.制約に基づく文法理論(語彙化文法) 詳細な文法制約の語彙レベルにおける記述 制約違反を許容しない脆弱性

制約違反の緩和を実現したい→曖昧性の増加統計的言語処理の頑健性と曖昧性解消力を活かしすため、これを処理のためのコントロール情報として制約文法による解析を行う

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

言語解析における言語知識とコーパスの利用(統計学習と制約処理の融合)

言語解析

言語知識(文法、語彙)

データコーパス

コーパスに基づく言語解析規則に基づく

言語解析

統計学習と制約処理の融合

文法知識・語彙知識の獲得

統計・学習コーパス構築

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

自然言語処理のために必要な機械学習法の性質

1. 大規模な素性(基本情報)を扱うことができること

個々の単語を素性として扱う必要が生じる2. 効果的なスムージング ( 例:単語と品詞の

頻度 /出現確率の間のスムージング ) 単語の出現頻度の偏り データ過疎問題 (Data sparseness problem)

3. 基本素性の組み合わせ素性を扱うことが必要

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

Support Vector Machines の概要

RRxw

Rxxxx

bwb

yyyyn

in

illii

,0)(

}1,1{)(,),(),( 11

2値分類,ユークリッド・ベクトル空間内の線形分離 : 事例は、ベクトル空間内の点とその所属クラス ( 正例 : +1, 負例 :-1) よりなる

正例と負例の分離を、分離(超)平面から例までの距離 (margin) が最大になるようにして行う :

1])[(

1if1)(

1if1)(

by

yb

yb

ii

ii

ii

xw

xw

xw

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

分離超平面

1iy

1iy0 bxw1 bxw

1 bxw

d

||||

2

||||

||min

||||

||min

11 ww

xw

w

xw

bbd i

yx

i

yx iiii

最大マージン d を得るためには ||w|| を最小化すればよい

d

d

マージン d が最大の平面

d

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

最適化問題最大マージンの平面は次の最適化問題を解くのと同じ :

ラクランジュ定数 α を導入し、双対問題に変換する :

最終的な分離関数 :

最小化:条件:

条件:

最大化:

2||||)( ww L

l

jijijiji

l

ii yyL

1,1

)(2

1)( xx

l

iiii y

1

0,0

1])[( by ii xw

bybfl

iiii

1

)(sgn)sgn()( xxxwx

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

Kernel関数の導入

線形分離が難しい問題

元の属性に基づくベクトル空間をより高次元な属性をもつ高次元空間に写像する

1 2 3 4 5 6 7nspaceInput Rx

nn

spaceFeaturen ')( 'Rx

1 2 4 5 6 7 1,2 1,3 1,4 1,5 1,6 1,7 2,3 2,4 2,5

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

Kernel関数を用いる場合の学習

学習:

l

jijijiji

l

ii yyL

1,1

))()((2

1)( xx

byfl

iiii

1

))()((sgn)( xxx 分離関数 :

学習も分類も属性空間の内積にのみ依存する

Φ で写像された空間における内積が実際に Φ を計算することなく求める方法があれば、計算による手間を激減させることができる :

)()(),( jijiK xxxx K : Kernel function

)(2

1)(

1,1

l

jijijiji

l

ii yyL xx

byfl

iiii

1

)(sgn)( xxx

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

例 : 多項式 Kernel カーネルトリック 例 : d

jijiK )1(),( xxxx d次元の多項式 Kernel

)1,2,2,2,,(),(:

)1,2,2,2,,()1,2,2,2,,(

1222

)1()1(),(

),(,),(2

212122

2121

212122

212121

22

21

2121221122

22

21

21

22211

2

221

221

zzzzzzzz

bbbbbbaaaaaa

bbaababababa

babaK

bbaad

T

jiji

ji

xxxx

RxRx

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

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

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

学習モデル 確率モデル SVM

計算量 小 大

能力 低 高

制限 大規模な素性空間の扱いが困難

大規模データに対する計算

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

修正学習法 [Nakagawa & Matsumoto 02]

問題の大部分は能力が低いが効率のよいモデルで処理が可能 ( 例えば、確率モデルによる品詞タグ付け精度 : 95%)処理のすべてを、能力が高いが効率の悪いモデルで行うのは無駄が多い

2つのモデルの混合 :• 効率よいモデルでデータの大半を処理• 能力の高いモデルで前者の処理の誤り箇所を推定して修正する

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

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

Example

Revise

Result

低能力高効率

高能力低効率

Stochastic Model

Binary Classifier

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

修正学習法の例学習 実行

AB

C

D

E

Training example

Class

Training Data

B : x – X

D : x – OE : x – X

AB

C

D

E

Test example

Class

Label: O (Positive)X (Negative)

O

X

1

2

3

4

5

Rank

1

2

3

4

5

Rank

A B C D E

Binary Classifiers

Stochastic Model

x z

Page 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)

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

英語の POS tagging (結果)

System 学習事例数 学習時間

実行時間

精度

T3 / Original

- 0.004 0.0076

96.59%

T3 / RL(2次多項式 )

1,027,840 16 0.18 96.98%

T3 / RL(線形 )

1,027,840 2 0.011 96.94%

Full SVM 49,999,200

625 4.7 97.11%

(時間 ) (秒 /文 )

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

日本語形態素解析コーパス :RWCP コーパス (89 POS tags) 訓練データ : 34,000 文 テストデータ : 3,800 文確率モデル : bi-gram Markov model 茶筌 ( 可変長 Markov model)

修正学習モデル :SVM (2nd order polynomial kernel)

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

日本語形態素解析(結果)

システム 分かち書き精度 分かち書き+

品詞付けbi-gram / Original 98.42% 95.96%

bi-gram / 修正学習 99.16% 98.23%

茶筌 / Original 99.13% 97.74%

茶筌 / 修正学習 99.28% 98.32%(F-measure)

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

日本語の係り受け解析

文節の係り受け関係の基づく文の構文解析二種類の制約 : 各文節は(最後の文節を除いて)、常に右側の文節に係る

文節係り受けは互いに交差しない

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

日本語の係り受け解析の例

形態素解析と文節まとめ上げ

私は / 彼女と / 京都に / 行きます

私は彼女と京都に行きます入力文

私は / 彼女と / 京都に / 行きます

係り受け解析

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

単純なモデル (確率モデル )

私は 1 / 彼女と 2 / 京都に 3 / 行きます 4

Input

1.03

0.80.22

0.70.20.11

432

係り受け行列

被修飾文節

修飾文

1. 係り受け確率を求めて以下のような行列を作る。

     ( 学習モデルは確率を求めるものなら何でもよい )

2. 最大確率を与える木構造を CYK あるいは Chart 法を用いて求める

Output

私は 1 / 彼女と 2 / 京都に 3 / 行きます 4

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

日本語係り受け解析システム「南瓜」 ( Cascaded Chunking Model ) [Kudo & Matsumoto02]

各文節が右側の文節に係ることができるかどうかを決定的に決めながら、文節のまとめあげを行う学習データは、実際に係りうけ解析を実行する過程を模倣することによって得られる

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

例 : 学習の過程

彼は 1  彼女の 2  温かい 3  真心に 4  感動した。 5

解析済みの学習文

学習データ

属性(2つの文節の内容)とタグ (D or O) のペアがSVM のための学習事例として蓄積される

彼は 1  彼女の 2  温かい 3  真心に 4  感動した。 5

O O D D

? ? ? ?

彼は 1  彼女の 2  真心に 4  感動した。 5

彼は 1  彼女の 2  真心に 4  感動した。 5

O D D

? ? ?

彼は 1   真心に 4  感動した。 5

? ?

彼は 1   真心に 4  感動した。 5

O D 彼は 1     感動した。 5

彼は 1     感動した。 5

D

?

彼は 1  彼女の 2  温かい 3  真心に 4  感動した。 5

SVMs

蓄積された学習事例による SVM 学習

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

例 : 解析の実行

彼は 1  彼女の 2  温かい 3  真心に 4  感動した。 5

入力文

SVMs学習過程で得られた SVM によって係り受け関係が決定される

彼は 1  彼女の 2  温かい 3  真心に 4  感動した。 5

O O D D

? ? ? ?

彼は 1  彼女の 2  真心に 4  感動した。 5

彼は 1  彼女の 2  真心に 4  感動した。 5

O D D

? ? ?

彼は 1   真心に 4  感動した。 5

? ?

彼は 1   真心に 4  感動した。 5

O D 彼は 1     感動した。 5

彼は 1     感動した。 5

D

?

彼は 1  彼女の 2  温かい 3  真心に 4  感動した。 5

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

学習に用いた属性情報

彼の 1 友人は 2  この本を 3  持っている 4 女性を 5 探している 6 His friend-top this book-acc have lady-acc be looking for

修飾文節 被修飾文節

静的な属性 修飾文節 / 被修飾文節

中心語 / 機能語 : 表層形 , 品詞 , 品詞細分類 ,  活用型 , 活用形 , 括弧の有無 , 引用符の有無 , 句読点の有無 ,…

文節間属性 : 距離 , 格助詞の存在情報 , 括弧の存在情報 , 引用符 , 句読点

動的な属性 [Kudo, Matsumoto 2000] A,B: 機能語の情報を被修飾文節に与える C: 中心語の情報を修飾文節に与える

B A C

Modify or not?

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

実験の設定京都大学コーパス 2.0/3.0 標準データセット

学習データ : 7,958 文 /  評価データ : 1,246 文 過去の研究と同一 [Uchimoto et al. 98], [Kudo, Matsumoto 00]

大規模データセット 38,383 文による2分割交差検定

Kernel 関数 : 3次の多項式カーネル

評価尺度 係り受け関係の精度 文正解精度

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

実験結果

N/A 0.7 2.1 0.5解析時間 (秒 / 文 )

N/A 48 336 8学習時間 (時間 )

1,074,316 251,254 459,105 110,355学習事例数

19,191 19,191 7,956 7,956学習データの文数

N/A 53.16 46.17 47.53文正解精度 (%)

N/A 90.45 89.09 89.29係り受け精度 (%)

ProbabilisticCascaded Chunking

ProbabilisticCascaded Chunking

モデル

大規模標準データセット

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

機械学習に基づく他の日本語係り受け解析法との比較

89.1Kyoto-U corpus(7,956)SVM + probabilities

Kudo & Matsumoto [2000]

88.6EDR corpus(192,778)MaxEnt+constraint Grammar + prob.

Kanayama [2000]

87.9Kyoto-U corpus(7,956)MaxEnt + probabilities

Uchimoto [1999]

85.0EDR coupus(50,000)Decision tree + Boosting

Haruno [1999]

86.7EDR corpus(190,000)Word cooccurence + smoothing

Fujio & Matsumoto [1998]

精度(%)

学習データ ( 文数 )学習モデル

90.5Kyoto-U corpus(19,191)

89.3Kyoto-U corpus(7,956)SVM + cascaded chunking

Kudo & Matsumoto [2002]

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

SVM では何が学習されているか ?

正事例 負事例

P1

P2

……Pn

N1

N2

……Nm

S

分類すべきデータ

事例とデータ間の類似度

sim sim

w1

w2

wn w’m

w’2

w’1

分類の決定 : ( 事例による重み付き投票 ) W1×sim(P1,S)+W2×sim(P2,S)+...+Wn×sim(Pn,S)

- [W’1×sim(N1,S)+…+W’m×sim(Nm,S)]

アルゴリズムが学習するのは事例の重み

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

機械学習問題において設計すべき事項

何を決めなければならないか1. 類似度 “ sim”: モデル (kernel function)

と素性集合の決定2. 事例の重み : SVMによって学習される。 多くの事例が0重みを得る。一部の事例

(support vectors)が分離関数を決める。

設計者が行うのは、よい素性集合と適切な Kernel 関数の選定

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

未知語処理未知語の問題 辞書に登録されていない単語 辞書にすべての単語が登録されていること

はありえない (e.g., 地名、人名、組織名、専門用語など )

日本語や中国語では未知語と他の単語の境界を同定することが難しい

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

中国語(日本語)の未知語抽出 [Goh, Asahara & Matsumoto 03, 04]

1. 確率モデルによる形態素解析 (単語分かち書きと品詞付与 )

2. 文字列に分割 ( 文字素性付与 )3. SVMに基づく chunking による未知

語抽出

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

Chunking ( 基本句チャンキングの例 )

He reckons the current account deficit will narrow to only 1.8 billion in September.

He reckons the current account deficit will narrow to only 1.8 billion in September.NP VP NP VP PP NP PP NP

chunk tag annotation

He reckons the current account deficit will narrow to only 1.8 billion in September.NP-B VP-B NP-B NP-I NP-I NP-I VP-B VP-I PP-B NP-B NP-I NP-I PP-B NP-B

Chunking の結果

phrase tag position tagB : 開始位置I : チャンクの内部

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

Chunking ( 名詞句チャンキング )

He reckons the current account deficit will narrow to only 1.8 billion in September.

He reckons the current account deficit will narrow to only 1.8 billion in September.NP NP NP NP

chunk tag annotation

He reckons the current account deficit will narrow to only 1.8 billion in September.

B O B I I I O O O B I I O B

Chunking の結果

position tagB : チャンクの開始位置I : チャンクの内部O : チャンクの外部

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

ステップ 1: 分かち書き+品詞付与Input:由于长江泥沙的冲积,江海潮流、…由于 c长江 ns泥 unk沙 nr的 u冲 v积 unk, w江 nr海 nr潮流 n、 w

確率モデルによる形態素解

析の出力

Because of the accumulation of mud from Changjiang, the current of river and sea, …

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

ステップ 2: 文字毎の情報付与Input:由于长江泥沙的冲积,江海潮流、…

由 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长江 ns泥 unk沙 nr的 u冲 v积 unk, w江 nr海 nr潮流 n、 w

品詞タグ

位置タグ

文字素性の付与

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

ステップ 3: 未知語 chunkingInput:由于长江泥沙的冲积,江海潮流、…

由 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

由于 c长江 ns泥 unk沙 nr的 u冲 v积 unk, w江 nr海 nr潮流 n、 w

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

ステップ 3: 未知語 chunkingInput:由于长江泥沙的冲积,江海潮流、…

由 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

由于 c长江 ns泥 unk沙 nr的 u冲 v积 unk, w江 nr海 nr潮流 n、 w

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

ステップ 3: 未知語 chunkingInput:由于长江泥沙的冲积,江海潮流、…

由 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

SVM に基づくチャンキングの

結果

由 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

由于 c长江 ns泥 unk沙 nr的 u冲 v积 unk, w江 nr海 nr潮流 n、 w

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

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

未知語全体 61.00人名 86.78組織名 70.40

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

中国語依存構造解析器

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

解析アルゴリズム (1/2) SVM を用いた依存構造解析 [Yamada

2003]

初期化:T={(w1,p1),(w2,p2),…,(wn,pn)};i=1; all_shift=true;解析:While |T| >= 1 do

if i==|T| thenif all_shift == true then br

eak;i=1; all_shift=true;

elsex = get_feature(T,i);y = estimate_action(mode

l, x);construction(T,I,y);if y != “SHIFT” then

all_shift = falseend;

end;end;

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

解析アルゴリズム (1/2) SVM を用いた依存構造解析 [Yamada

2003]

初期化:T={(w1,p1),(w2,p2),…,(wn,pn)};i=1; all_shift=true;解析:While |T| >= 1 do

if i==|T| thenif all_shift == true then br

eak;i=1; all_shift=true;

elsex = get_feature(T,i);y = estimate_action(mode

l, x);construction(T,I,y);if y != “SHIFT” then

all_shift = falseend;

end;end;

初期化入力文はトークン列トークンは単語と品詞からなる

i :現在注目しているトークンの ID

all_shift :停止条件

鄭成功Name

收復Verb

臺灣Noun

的Prep.

偉大Adj.

功業Noun

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

臺灣Noun

鄭成功Name

解析アルゴリズム (1/2) SVM を用いた依存構造解析 [Yamada

2003]

初期化:T={(w1,p1),(w2,p2),…,(wn,pn)};i=1; all_shift=true;解析:While |T| >= 1 do

if i==|T| thenif all_shift == true then br

eak;i=1; all_shift=true;

elsex = get_feature(T,i);y = estimate_action(mode

l, x);construction(T,I,y);if y != “SHIFT” then

all_shift = falseend;

end;end;

素性展開:前後 5 単語について

単語 品詞 子の単語 子の品詞

收復Verb

的Prep.

偉大Adj.

功業Noun

BOSBOS

BOSBOS

nilnil

nilnil

nilnil

nilnil

nilnil

前後5単語

前後5単語の子

鄭成功Name

收復Verb

臺灣Noun

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

初期化:T={(w1,p1),(w2,p2),…,(wn,pn)};i=1; all_shift=true;解析:While |T| >= 1 do

if i==|T| thenif all_shift == true then br

eak;i=1; all_shift=true;

elsex = get_feature(T,i);y = estimate_action(mode

l, x);construction(T,I,y);if y != “SHIFT” then

all_shift = falseend;

end;end;

解析アルゴリズム (1/2) SVM を用いた依存構造解析 [Yamada

2003]

係り先の同定素性を基に以下の3つのいづれかを選択 RIGHT右に係る LEFT 左に係る SHIFT 今は係らない決定は SVM による

鄭成功Name

收復Verb

臺灣Noun

BOSBOS

BOSBOS

nilnil

nilnil

nilnil

nilnil

nilnil

素性鄭成功Name

收復Verb

BOSBOS

RIGHT

鄭成功Name

收復Verb

BOSBOS

LEFT

鄭成功Name

收復Verb

BOSBOS

SHIFT

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

解析アルゴリズム (1/2) SVM を用いた依存構造解析 [Yamada

2003]

初期化:T={(w1,p1),(w2,p2),…,(wn,pn)};i=1; all_shift=true;解析:While |T| >= 1 do

if i==|T| thenif all_shift == true then br

eak;i=1; all_shift=true;

elsex = get_feature(T,i);y = estimate_action(mode

l, x);construction(T,I,y);if y != “SHIFT” then

all_shift = falseend;

end;end;

左から右へと各単語についてくりかえす

鄭成功Name

收復Verb

臺灣Noun

的Prep.

偉大Adj.

功業Noun

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

解析アルゴリズム (1/2) SVM を用いた依存構造解析 [Yamada

2003]

初期化:T={(w1,p1),(w2,p2),…,(wn,pn)};i=1; all_shift=true;解析:While |T| >= 1 do

if i==|T| thenif all_shift == true then br

eak;i=1; all_shift=true;

elsex = get_feature(T,i);y = estimate_action(mode

l, x);construction(T,I,y);if y != “SHIFT” then

all_shift = falseend;

end;end;

最初から再度やりなおし

鄭成功Name

收復Verb

臺灣Noun

的Prep.

偉大Adj.

功業Noun

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

解析アルゴリズム (1/2) SVM を用いた依存構造解析 [Yamada

2003]

初期化:T={(w1,p1),(w2,p2),…,(wn,pn)};i=1; all_shift=true;解析:While |T| >= 1 do

if i==|T| thenif all_shift == true then br

eak;i=1; all_shift=true;

elsex = get_feature(T,i);y = estimate_action(mode

l, x);construction(T,I,y);if y != “SHIFT” then

all_shift = falseend;

end;end;

最初から再度やりなおし

收復Verb

臺灣Noun

的Prep.

偉大Adj.

功業Noun

鄭成功Name

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

解析アルゴリズム (1/2) SVM を用いた依存構造解析 [Yamada

2003]

初期化:T={(w1,p1),(w2,p2),…,(wn,pn)};i=1; all_shift=true;解析:While |T| >= 1 do

if i==|T| thenif all_shift == true then br

eak;i=1; all_shift=true;

elsex = get_feature(T,i);y = estimate_action(mode

l, x);construction(T,I,y);if y != “SHIFT” then

all_shift = falseend;

end;end;

最初から再度やりなおし

收復Verb

鄭成功Name

臺灣Noun

的Prep.

偉大Adj.

功業Noun

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

解析アルゴリズム (1/2)SVM を用いた依存構造解析 [Yamada

2003]

初期化:T={(w1,p1),(w2,p2),…,(wn,pn)};i=1; all_shift=true;解析:While |T| >= 1 do

if i==|T| thenif all_shift == true then br

eak;i=1; all_shift=true;

elsex = get_feature(T,i);y = estimate_action(mode

l, x);construction(T,I,y);if y != “SHIFT” then

all_shift = falseend;

end;end;

“SHIFT”ばかりになったら(係り先がなくなったら)おわり

鄭成功Name

收復Verb

臺灣Noun

的Prep.

偉大Adj.

功業Noun

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

SVM 実験各カテゴリの訓練事例とテストデータ

Category Example clause Training data

Testing data for

Anthology

(The anthology of Cheng Chou Yu) 我不知如何回答I don’t know how to answer it

3117/20400

774/3957

Textbook(Textbooks of elementary school) 春天來了 , 春天在哪兒Spring is coming! Where the spring is?

3770/17782

1728/8046

Magazine

( Travel magazines ) 在易北河河岸的小山丘上On the hill which in the streamside of Elbe

4177/25220

3629/23844

News ( Newspaper ) 將使市公所的財政赤字擴大It will raise the deficit financing of municipal

ity

3793/21220

2426/15083

# of clauses/# of words

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

SVM実験ー 実験結果 (2/3)(訓練事例は各カテゴリ )

Experiment (1)Testing data

Anthology Textbook Magazine News

Train

ing d

ata

Anthology88.4494.5974.72

88.0193.1974.72

77.7888.9950.47

76.3087.3851.59

Textbook87.6194.8172.29

88.7594.1976.42

75.6287.1046.95

73.5487.0347.83

Magazine86.9294.2673.50

87.1093.8473.25

77.7889.0852.17

76.8089.9550.97

News86.2094.1570.75

87.6393.0774.31

76.3487.5548.76

77.3988.9852.87

Dep. Acc.

Root Acc.

Clause Acc.

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

SVM の実験結果(訓練事例の大きさによる変化 )Training

datasentences/

WordsAnthology

(test)Textbook

(test)Magazine

(test)News(test)

Part(3)=KO-

10,11,12

3770/17782

87.0394.4469.12

88.2593.8176.00

74.8486.2146.28

71.6686.0445.43

Part(4)=All textbook

9920/44032

89.2594.7075.19

89.8595.1478.89

76.3787.7749.51

72.8885.7549.00

Part(5)=Part(4)+anth

ology

13036/64431

91.3995.6078.68

90.6095.3180.00

78.9789.1952.60

75.2587.6451.57

Part(6)=Part(5)+mag

azine 1.1

17863/92839

92.0796.0280.68

91.1495.5481.29

81.0190.4356.32

78.6489.2455.53

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

SVM 実験(訓練事例の大きさによる変化 )

65

70

75

80

85

90

95

0 20000 40000 60000 80000 100000

anthology textbook newspaper magazine

# of word

Dep.Acc.

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

学習に基づく手法の何がよいか ?

頑健性 / 曖昧性解消能力機械学習による解析が常に正しいわけではないが , 簡単な学習モデルによって解析可能な問題とそれが困難な問題を明確にしてくれる

現在の問題を解くためにどのような情報が必要かの示唆を与えてくれる

support vectors からの有効素性の マイニング [Kudo 03]

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

現在進行中のプロジェクト

Corpus Tools タグ付きコーパスのための検索 タグ付きコーパスの修正 辞書とタグ付きコーパスの整合性維持

機械学習による手法と制約文法に基づく手法の融合による自然言語処理 統計的言語処理システムを制御情報とする日本語

HPSG (Head-driven Phrase Structure Grammar) のパージング

制約の緩和による頑健な文法解析

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

機械学習による手法と制約文法に基づく手法の融合

機械学習によるパージング○ 頑健 : どのような入力文に対しても解を出す○ 曖昧性解消 : 単一の結果 or 順序付の結果× Information poor: 文法的説明の欠如

制約に基づく文法○ Information rich: 文法性の説明× 脆弱 : 低いカバレージ× 曖昧 : 多数の可能な解

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

統計的手法の利点と限界

利点 簡単な問題はデータと機械学習が解いてくれ

る (例外)規則を列挙するなど無意味な作業か

らの解放統計的手法の限界 最終的な姿ではない.すべてが解ける訳では

ない. 文法性/非文法性の説明 深い意味理解

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

なぜ文法研究が必要か

本を読んだのは誰? a. 私は太郎に本を読ませた. (太郎) b. 私は太郎に本を読ませられた. (私)太郎は本を読んだでしょうか? a. 太郎は本を読み直した. ( yes ) b. 太郎は本を読みそびれた. ( no )

なぜ,「本が読みそびれられた」と言えないのか?

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

「直す」の構文木

健が

本を

読み 直す

V V

VN

N V

V

本が

健に

読み 直さ

V V

VN

N V

V

れる

V V

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

「そびれる」の構文木

健が

本を 読み

そびれるV

V V

N

N V

V •「れる/られる」はガ格とヲ格を持つ動詞に結合する•「そびれる」はガ格のみを残した動詞句と結合する•こう考えるべき別の理由

•「健が本を読みそびれた」•○「僕もそうしそびれた」•「健が本を読み直した」•× 「僕もそうし直した」

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

References[Kudo 2001] Taku Kudo and Yuji Matsumoto, “Chunking with Support Vector Machines,” NAACL 2001.[Kudo 2002] Taku Kudo and Yuji Matsumoto, “Japanese dependency analysis using cascaded chunking,” CoNLL 2002.[Nakagawa 2002] Tetsuji Nakagawa, Taku Kudo and Yuji Matumoto, “Revision learning and its application to POS tagging,” ACL2002.[Yamada 2003] Hiroyasu Yamada and Yuji Matsumoto, “Statistical dependency analysis with Support Vector Machines,” 8th International Workshop on Parsing Technologies (IWPT), pp.195-206, April 2003.[Asahara 2003] Masayuki Asahara and Yuji Matsumoto, “Japanese named entity extraction with redundant morphological analysis,” HLT-NAACL 2003.[Kudo 2003] Taku Kudo and Yuji Matsumoto, “Fast methods for kernel-based text analysis,” ACL 2003.[Goh 2003] Chooi Ling Goh, Masayuki Asahara and Yuji Matsumoto, “Chinese unknown word identification using character-based tagging and chunking,” poster/demo paper, ACL 2003.[Yuchang 2004] Yuchang Cheng, Masayuki Asahara, Yuji Matsumoto, “Deterministic dependency structure analyzer for Chinese,” 1st International Joint Conference on Natural Language Processing, pp.135-140, March 2004.