SlideShare uma empresa Scribd logo
1 de 31
Baixar para ler offline
15/08/09 Copyright (C) 2015 by Yusuke Oda, AHC-Lab, IS, NAIST 1
PCFG構文解析法
小田 悠介
NAIST
@odashi_t
NLP東京Dの会 8/9/2015
15/08/09 Copyright (C) 2015 by Yusuke Oda, AHC-Lab, IS, NAIST 2
今日話す内容
● CFG と CKY アルゴリズム
● PCFG
● Vertical/Horizontal Markovization (Stanford Parser)
● PCFG-LA (Berkeley Parser)
● 頑健な構文解析器 (Ckylark)
15/08/09 Copyright (C) 2015 by Yusuke Oda, AHC-Lab, IS, NAIST 3
Chomsky 階層
Type-0
Type-1
Type-2
Type-3 正規言語
文脈自由言語
文脈依存言語
帰納的可算言語
● 形式言語理論のおさらい
今日の話題
チューリングマシン上の
アルゴリズム
15/08/09 Copyright (C) 2015 by Yusuke Oda, AHC-Lab, IS, NAIST 4
文脈自由文法
● 文脈自由文法 (context-free grammar: CFG)
– Chomsky 階層の Type-2 文法
– 単一の記号を複数の記号列に書き換える規則の集合
S文
VP動詞句
NP名詞句 DT限定詞 This
isVBZ動詞:三単現
NP名詞句
DT限定詞
NN名詞:単数
a
pen
– 注目している記号の周囲の情報 (=文脈) は考慮しない (=自由)
– CFG により生成される自然言語の構文木は句構造 (phrase structure) と呼ぶ
15/08/09 Copyright (C) 2015 by Yusuke Oda, AHC-Lab, IS, NAIST 5
This is a pen
Cocke-Kasami-Younger アルゴリズム
● Cocke-Kasami-Younger (CKY or CYK) アルゴリズム
– 文法 と入力単語列 が与えられたとき
で を生成可能か判別(構文木も作れる)
– 小さい部分木から順に生成 ... 動的計画法の一種
DT
NNS
NP
VBZ
NNS
DT
NN
NP
NN
S NP
S
VP
SQ
S
全体の解析は
15/08/09 Copyright (C) 2015 by Yusuke Oda, AHC-Lab, IS, NAIST 6
Chomsky 標準形
● CKY アルゴリズムは Chomsky 標準形の文法のみ解析可能
Binary 規則
文法 → 文法 + 文法
Lexicon
文法 → 単語
Chomsky 標準形: 以下の規則のみからなる CFG
● 実際の構文は...
NP
DT
Unary
VP
NP PPVBZ
Trinary
NP
JJDT JJ NN
もっと大きな規則
15/08/09 Copyright (C) 2015 by Yusuke Oda, AHC-Lab, IS, NAIST 7
Unary 規則の取り扱い
● 限定適用(近似)
– 各 CKY テーブル上で、予め決めた回数だけ Unary 規則を適用(普通は 1 回だけ)
– 実用的にはこれで十分な場合が多い
● Ckylark の実装
DT
NNS
VBZ
DT
NNS
VBZ
NP
VP● 厳密な unary chain
– Unary 規則の集合でグラフを構築
– 今見ている記号に到達可能な経路を列挙
● Berkeley Parser の実装
S
FRAG
NP
VP
NNS
VBZ
SBAR
DT
NP
DT
NP
DT
NP
DT
NP
DTDT
SBAR S FRAG
DT
NNS
VBZ
NP
VP
SBAR
S
FRAG
15/08/09 Copyright (C) 2015 by Yusuke Oda, AHC-Lab, IS, NAIST 8
Trinary 以上の規則の取り扱い
● 基本的な考え: 分解して binary 規則に変形
VP
NP PPVB
VP
VP/PP
PPVB NP
文法範疇の使用(厳密)
VP
NP PPVB
VP
VP
PPVB NP
X-bar 文法(近似)
● 分解方向によるバリエーション
VP
X
PPVB NP
左分解
VP
X
PPVB NP
右分解
– 言語や文法の特徴で適切に選択
– Berkeley Parser および Ckylark は
X-bar 文法かつ左分解
● 分解方向は無理矢理変更可能
15/08/09 Copyright (C) 2015 by Yusuke Oda, AHC-Lab, IS, NAIST 9
自然言語の曖昧性
● 複数の(多分)正しい構文木が存在する可能性
PRP VBD DT NN IN DT NN
NP VP
NP
PP
NP
S
I saw a girl with a telescope I saw a girl with a telescope
PRP VBD DT NN IN DT NN
NP VP
NP
PP
NP
S
NP
15/08/09 Copyright (C) 2015 by Yusuke Oda, AHC-Lab, IS, NAIST 10
確率的文脈自由文法 (1)
● 確率的文脈自由文法 (probabilistic CFG: PCFG) [Booth&Thompson1973] 他
– 構文木の「確からしさ」を解析時に考慮
● 各規則が生成確率を持つ
VP
ξ = 0.05VBZ
VBZ NP ξ = 0.18
......
VBZ VP ξ = 0.09
VBZ NP PP ξ = 0.15
VBP NP ξ = 0.17
VBP NP PP ξ = 0.10
MD VP ξ = 0.14
VBG S ξ = 0.02
15/08/09 Copyright (C) 2015 by Yusuke Oda, AHC-Lab, IS, NAIST 11
確率的文脈自由文法 (2)
● 構文木の生成確率
PRP VBD
DT NN IN
DT NN
NP VP
NP PP
NP
S
I saw a girl with a telescope
● 最も単純な PCFG モデル: Treebank 中の規則の個数をスコアとする
– 最尤推定と同じ
ξ
ξ ξ
ξ ξ
ξ ξ
ξ
ξξ
ξξξ
構文木の生成確率
ランダム生成したときに
その木が得られる確率
15/08/09 Copyright (C) 2015 by Yusuke Oda, AHC-Lab, IS, NAIST 12
構文解析の評価 (1)
● Labeled precision/recall/Fβ
– 各句の (先頭位置, 終端位置, 記号) の一致数
● Crossing brackets
– 参照木の句を跨ぐような解析結果の句の数
● Tagging accuracy
– 当てた品詞(準終端記号)の数
15/08/09 Copyright (C) 2015 by Yusuke Oda, AHC-Lab, IS, NAIST 13
構文解析の評価 (2)
PRP VBD DT NN IN DT NN
NP VP
NP
PP
NP
S
I saw a girl with a telescope I saw a girl with a telescope
PRP VBD DT NN IN DT NN
NP VP
NP
PP
NP
S
NP
Gold Parse
S:1-7 NP:1-1 VP:2-7 NP:3-4
PP:5-7 NP:6-7
S:1-7 NP:1-1 VP:2-7 NP:3-7
NP:3-4 PP:5-7 NP:6-7
– LP = 6/7 85.7%≒
– LR = 100%
– LF1 = (2*LP*LR) / (LP+LR) 92.3%≒
– Crossing brackets = 0
– Tagging accuracy = 100%
15/08/09 Copyright (C) 2015 by Yusuke Oda, AHC-Lab, IS, NAIST 14
単純なPCFGの問題 (1)
● 文法の種類が荒すぎる
– 例: 右の構文木の 2 個の NP は同じ?
● NP … Subject, PRP のみを生成しやすい
● NP … Object, NN を含む句を生成しやすい
● NP が PRP のみを生成する確率は NP の 約 8.7 倍
[Klein&Manning2003]
– 明らかに同じ記号で違う意味のものが存在
● 別の記号に分けるべき
PRP VBD DT NN
NP VP
NP
S
He ate an apple
PRPNP
VBDVP
DTNP
NNNP
NPS
VPS
NPVP
SROOT
He ate an apple
● Parent annotation [Johnson1998]
– 各記号に親のラベルを付与
– 縦方向の 2 階 Markov 連鎖でモデル化するのと同じ
● 普通の PCFG は 1 階 Markov 連鎖
15/08/09 Copyright (C) 2015 by Yusuke Oda, AHC-Lab, IS, NAIST 15
単純なPCFGの問題 (2)
● データスパースネス
– ほとんどの規則の登場回数が 1 回
● 記号の複雑な組み合わせ
● 記号の反復
– 過学習の原因
● …学習データに登場 不当に高確率
● …学習データにない 0
Penn Treebank 中の規則の頻度 [Collins1999]
VP → VB NP NP NP PRN
VP → VB NP SBAR PP SG ADVP
VP → VB NP ADVP ADVP PP PP
VP → VB RB
VP → VB NP PP NP SBAR
VP → VB NP PP SBAR PP
...
実際にPenn Treebank に 1 回しか登場しない
規則の例 [Collins1999]
● 対応策: 大きな規則の分解
– X-bar 文法でもある程度対応可能
● ただし規則の周辺情報は消滅
– 周辺情報をどこまで残す?
15/08/09 Copyright (C) 2015 by Yusuke Oda, AHC-Lab, IS, NAIST 16
Vertical/Horizontal Markovization (1)
● Vertical/Horizontal Markovization [Klein&Manning2003]
– 巨大な生成規則を周辺情報を含む部分木に分割
– Parent annotation などいくつかの既存法の一般化
NP VP
DT JJ JJ NN
a quick brown fox
VBZ
jumps
S
NP
DT JJ JJ NN
ROOT
NPROOT-S
: DT
DT
JJ
JJ
NN
NPROOT-S
: DT...JJ
NPROOT-S
: DT...JJ-NN
NPROOT-S
NPROOT-S
: DT...JJ-JJ
NPROOT-S
: DT...JJ-NN
親 V-1個の祖先 主辞 H個の兄弟
15/08/09 Copyright (C) 2015 by Yusuke Oda, AHC-Lab, IS, NAIST 17
Vertical/Horizontal Markovization (2)
● Stanford Parser
– V/H Markovization + 色々な文法分割のヒューリスティクス + 探索の工夫
– LF1 = 86.3% [Klein&Manning2003] 時点
VとHを色々変えたときのLF1と規則の数 [Klein&Manning2003]
単純なPCFG
Parent annotation
[Collins1999]
15/08/09 Copyright (C) 2015 by Yusuke Oda, AHC-Lab, IS, NAIST 18
潜在注釈付き PCFG
● 潜在注釈付き PCFG (PCFG with Latent Annotation: PCFG-LA)
[Matsuzaki+2005]
– 各記号に直接近隣の情報を関連付けるのではなく、周辺の特徴を捉えた潜在クラスを付与
DT[5] VBD[3] DT[2] NN[9]
NP[1] VP[2]
NP[2]
S[4]
This is a pen
● 潜在クラスをどのように作る?
– コーパスから自動的に生成できると嬉しい
NP[1] … Subject になりやすい特徴を持つ
NP[2] … Object になりやすい特徴を持つ
DT[5] … This や that を生成しやすい
DT[2] … A を生成しやすい
15/08/09 Copyright (C) 2015 by Yusuke Oda, AHC-Lab, IS, NAIST 19
Split-merge アルゴリズム (1)
● Split-merge アルゴリズム [Petrov+2006]
– 教師なし学習による潜在クラス生成法
● Split-step … 潜在クラスを適当に分割、EM アルゴリズムで生成確率を推定
● Merge-step … Split の効果がなかった潜在クラスを再結合
– 潜在クラスが木構造として得られる
● [Petrov+2006]: split-step で 2 分割、merge-step で半分を再結合
– 1 回の split-merge で潜在クラス数が 1.5 倍に増加
Split-merge により自動生成された潜在クラス階層 [Petrov+2006]
15/08/09 Copyright (C) 2015 by Yusuke Oda, AHC-Lab, IS, NAIST 20
Split-merge アルゴリズム (2)
最終的な潜在クラスの例 [Petrov+2006]
似たような特徴の
単語同士が
クラスタリング
されている
15/08/09 Copyright (C) 2015 by Yusuke Oda, AHC-Lab, IS, NAIST 21
Coarse-to-fine 構文解析
● PCFG-LA の問題: 生成規則が膨大
– 潜在クラス付き記号の数は split-merge により指数的に増加
– 通常の CKY …解析では計算が終わらない
● Coarse-to-fine 構文解析
– まず階層の浅い潜在クラスで CKY 解析
– 確率の低いノードを削除、残ったノードで次の階層の解析
Coarse-to-fine 解析時の CKY テーブル(色の濃さは確率) [Petrov2009]
15/08/09 Copyright (C) 2015 by Yusuke Oda, AHC-Lab, IS, NAIST 22
PCFG-LA の解析精度
● Berkeley Parser
– Split-merge + 平均化スムージング + 単語素性による未知語処理 + 探索の工夫
– LF1 = 90.2% [Petrov+2006] 時点
過学習
PCFG-LA による構文解析の LF1 値 [Petrov2009]
15/08/09 Copyright (C) 2015 by Yusuke Oda, AHC-Lab, IS, NAIST 23
…実際の構文解析器では
● 実際に構文解析を使用するのは、大きなシステムのパイプラインの一部
● 基本的に解析失敗は可能な限り避けたい
– 例: 機械翻訳
形態素
解析
構文
解析
機械
翻訳
入力
テキスト
音声認識
etc.
出力
テキスト
音声合成
etc.
– エラーの発生した場所より先の処理が実行不可能
– ユーザ視点だと「壊れた」のと同じ
● 多少変な入力が渡されても問題なく結果を出力できる頑健性が必要
– もしくは裏でエラー処理をものすごく頑張る
15/08/09 Copyright (C) 2015 by Yusuke Oda, AHC-Lab, IS, NAIST 24
Coarse-to-fine 解析の問題
● Coarse-to-fine 解析は稀に探索に失敗
– 構文木の確率が極端に低い場合、CKY ノードを枝刈りしすぎる
Level 0 (PCFG) Level 1 Level 2
DT22
PP
NN1
JJ
NN
DT
NN2
NN1
NN2
NN21
NN11
NN12
NP11
DT12
DT2
VP
CD
NP
NP2
NP1
NNS
NN
DT21
NP12
NN22
DT1
DT11
– 全ての候補が枝刈りされてしまい、そのノード以下の解析が不可能
● どのような構文木も出力することができない
15/08/09 Copyright (C) 2015 by Yusuke Oda, AHC-Lab, IS, NAIST 25
Coarse-to-fine 解析の中間結果を使用
● 失敗が起こったとき、その前段の CKY テーブルで構文木を生成
– Coarse-to-fine 解析は最後まで実行しなくても問題ない
OK OK OK OK
Level 0
(PCFG)
Level 1 Level 2 Level N Tree
Make
parse tree
Tree
Make
parse tree
OK OK Fail
Level 0
(PCFG)
Level 1 Level 2 Level N Tree
Make
parse tree
● 「最初の解析で失敗しなければ」構文木を生成可能
15/08/09 Copyright (C) 2015 by Yusuke Oda, AHC-Lab, IS, NAIST 26
モデルの不整合による解析失敗
● Coarse-to-fine 解析の初段 (=PCFG) で失敗する場合
– 入力が学習データと大きく離れているため、モデルが対応できていない
– 例: 括弧
?
NN
a symbol
@NP
-LRB-
(
DT
PRN
X
( some phrases
@PRN
-RRB-
)
-LRB-
– Penn Treebank 内で、左括弧は PRN 句の前方にのみ存在
– それ以外の使い方はモデル的に想定されていない
15/08/09 Copyright (C) 2015 by Yusuke Oda, AHC-Lab, IS, NAIST 27
未知語スムージング
● 想定外の用法で出現した単語は未知語と考える
– 普通に解析できなくても、未知語に置き換えた場合に解析できることがある
– 非常に小さい割合で生成確率に未知語の生成確率を補間
?
DT NN
a symbol
@NP
NP
(
-LRB-
unk
NN
λ
元の単語生成確率 未知語生成確率
未知語補間係数
非常に小さい値
(実験ではE-10)
15/08/09 Copyright (C) 2015 by Yusuke Oda, AHC-Lab, IS, NAIST 28
● Ckylark [Oda+2015]
– Coarse-to-fine 解析 + 中間結果の利用 + 未知語スムージング + 確率スケーリング
– Penn Treebank の解析精度は Berkeley Parser とほぼ同程度
– NTCIR-PATMT 300 万文(80単語以内の文を抜粋)で解析失敗なし
0
0.0136
0.561
%
Ckylark 0
失敗した文数
(NTCIR PATMT-en)
Tool
Berkeley
#
419
Egret 17287
Failure
Smoothing
factor 0
(PCFG)
1741
1
135
2
24
3
11
4
5
5
57
6
1405
0 130 19 8 4 51 1389
Failed grammar level
失敗の分布
未知語スムージングの
効果
前段で構文木を生成することにより
除去可能
15/08/09 Copyright (C) 2015 by Yusuke Oda, AHC-Lab, IS, NAIST 29
Ckylark の使い方 (1)
● インストール
$ git clone git@github.com:odashi/ckylark
$ cd ckylark
$ autoreconf ­i
$ ./configure
$ make
$ make install
● 構文解析
– 英語: wsj 日本語: jdc 中国語: ctb (日本語と中国語は KyTea が必要)
$ ckylark ­­model wsj
> This is a pen .
< ( (S (NP (DT This)) (VP (VBZ is) (NP (DT a) (NN pen))) (. .)) )
$ kytea ­notags | ckylark ­­model jdc
> これはペンです。
< ( (助動詞でP (助動詞でP (名詞P (助詞はP (代名詞 これ) (助詞は は))
 (名詞 ペン)) (助動詞でP (助動詞で で) (語尾 す))) (補助記号 。)) )
15/08/09 Copyright (C) 2015 by Yusuke Oda, AHC-Lab, IS, NAIST 30
Ckylark の使い方 (2)
● 品詞推定
– Penn Treebank 上の推定精度は 97% くらい
● 不完全な文の構文解析
– 文法記号をワイルドカードとして使用可能
$ ckylark ­­model wsj ­­output­format postag
> This is a pen .
< This/DT is/VBZ a/DT pen/NN ./.
$ kytea ­notags | ckylark ­­model jdc ­­output­format postag
> これはペンです。
< これ/代名詞 は/助詞は ペン/名詞 で/助動詞で す/語尾 。/補助記号
$ ckylark ­­model wsj ­­partial
> This is [NP] .
< ( (S (NP (DT This)) (VP (VBZ is) (NP [NP])) (. .)) )
> [PRP] [VBZ] [PP] .
< ( (S (NP (PRP [PRP])) (VP (VBZ [VBZ]) (PP [PP])) (. .)) )
15/08/09 Copyright (C) 2015 by Yusuke Oda, AHC-Lab, IS, NAIST 31
今日話した内容
● CFG と CKY アルゴリズム
● PCFG
● Vertical/Horizontal Markovization (Stanford Parser)
● PCFG-LA (Berkeley Parser)
● 頑健な構文解析器 (Ckylark)

Mais conteúdo relacionado

Mais procurados

はじめてのKrylov部分空間法
はじめてのKrylov部分空間法はじめてのKrylov部分空間法
はじめてのKrylov部分空間法
tmaehara
 

Mais procurados (20)

学振特別研究員になるために~2022年度申請版
学振特別研究員になるために~2022年度申請版学振特別研究員になるために~2022年度申請版
学振特別研究員になるために~2022年度申請版
 
統計的因果推論への招待 -因果構造探索を中心に-
統計的因果推論への招待 -因果構造探索を中心に-統計的因果推論への招待 -因果構造探索を中心に-
統計的因果推論への招待 -因果構造探索を中心に-
 
[DL輪読会]Flow-based Deep Generative Models
[DL輪読会]Flow-based Deep Generative Models[DL輪読会]Flow-based Deep Generative Models
[DL輪読会]Flow-based Deep Generative Models
 
SSII2022 [TS1] Transformerの最前線〜 畳込みニューラルネットワークの先へ 〜
SSII2022 [TS1] Transformerの最前線〜 畳込みニューラルネットワークの先へ 〜SSII2022 [TS1] Transformerの最前線〜 畳込みニューラルネットワークの先へ 〜
SSII2022 [TS1] Transformerの最前線〜 畳込みニューラルネットワークの先へ 〜
 
時系列予測にTransformerを使うのは有効か?
時系列予測にTransformerを使うのは有効か?時系列予測にTransformerを使うのは有効か?
時系列予測にTransformerを使うのは有効か?
 
Transformerを多層にする際の勾配消失問題と解決法について
Transformerを多層にする際の勾配消失問題と解決法についてTransformerを多層にする際の勾配消失問題と解決法について
Transformerを多層にする際の勾配消失問題と解決法について
 
2019年度チュートリアルBPE
2019年度チュートリアルBPE2019年度チュートリアルBPE
2019年度チュートリアルBPE
 
ブレインパッドにおける機械学習プロジェクトの進め方
ブレインパッドにおける機械学習プロジェクトの進め方ブレインパッドにおける機械学習プロジェクトの進め方
ブレインパッドにおける機械学習プロジェクトの進め方
 
Word2vecの並列実行時の学習速度の改善
Word2vecの並列実行時の学習速度の改善Word2vecの並列実行時の学習速度の改善
Word2vecの並列実行時の学習速度の改善
 
合成変量とアンサンブル:回帰森と加法モデルの要点
合成変量とアンサンブル:回帰森と加法モデルの要点合成変量とアンサンブル:回帰森と加法モデルの要点
合成変量とアンサンブル:回帰森と加法モデルの要点
 
Transformer メタサーベイ
Transformer メタサーベイTransformer メタサーベイ
Transformer メタサーベイ
 
BERT入門
BERT入門BERT入門
BERT入門
 
全力解説!Transformer
全力解説!Transformer全力解説!Transformer
全力解説!Transformer
 
論文の図表レイアウト例
論文の図表レイアウト例論文の図表レイアウト例
論文の図表レイアウト例
 
最適輸送の計算アルゴリズムの研究動向
最適輸送の計算アルゴリズムの研究動向最適輸送の計算アルゴリズムの研究動向
最適輸送の計算アルゴリズムの研究動向
 
機械学習モデルのハイパパラメータ最適化
機械学習モデルのハイパパラメータ最適化機械学習モデルのハイパパラメータ最適化
機械学習モデルのハイパパラメータ最適化
 
変分ベイズ法の説明
変分ベイズ法の説明変分ベイズ法の説明
変分ベイズ法の説明
 
クラシックな機械学習入門:付録:よく使う線形代数の公式
クラシックな機械学習入門:付録:よく使う線形代数の公式クラシックな機械学習入門:付録:よく使う線形代数の公式
クラシックな機械学習入門:付録:よく使う線形代数の公式
 
NLPにおけるAttention~Seq2Seq から BERTまで~
NLPにおけるAttention~Seq2Seq から BERTまで~NLPにおけるAttention~Seq2Seq から BERTまで~
NLPにおけるAttention~Seq2Seq から BERTまで~
 
はじめてのKrylov部分空間法
はじめてのKrylov部分空間法はじめてのKrylov部分空間法
はじめてのKrylov部分空間法
 

Semelhante a PCFG構文解析法

Semelhante a PCFG構文解析法 (20)

不完全な文の構文解析に基づく同時音声翻訳
不完全な文の構文解析に基づく同時音声翻訳不完全な文の構文解析に基づく同時音声翻訳
不完全な文の構文解析に基づく同時音声翻訳
 
構文情報に基づく機械翻訳のための能動学習手法と人手翻訳による評価
構文情報に基づく機械翻訳のための能動学習手法と人手翻訳による評価構文情報に基づく機械翻訳のための能動学習手法と人手翻訳による評価
構文情報に基づく機械翻訳のための能動学習手法と人手翻訳による評価
 
RNN-based Translation Models (Japanese)
RNN-based Translation Models (Japanese)RNN-based Translation Models (Japanese)
RNN-based Translation Models (Japanese)
 
Kansai MT Pivot Arekore
Kansai MT Pivot ArekoreKansai MT Pivot Arekore
Kansai MT Pivot Arekore
 
ChainerによるRNN翻訳モデルの実装+@
ChainerによるRNN翻訳モデルの実装+@ChainerによるRNN翻訳モデルの実装+@
ChainerによるRNN翻訳モデルの実装+@
 
ICASSP2019音声&音響論文読み会 論文紹介(認識系)
ICASSP2019音声&音響論文読み会 論文紹介(認識系)ICASSP2019音声&音響論文読み会 論文紹介(認識系)
ICASSP2019音声&音響論文読み会 論文紹介(認識系)
 
Deep Learning Chapter12
Deep Learning Chapter12Deep Learning Chapter12
Deep Learning Chapter12
 
AI2: Safety and Robustness Certification of Neural Networks with Abstract Int...
AI2: Safety and Robustness Certification of Neural Networks with Abstract Int...AI2: Safety and Robustness Certification of Neural Networks with Abstract Int...
AI2: Safety and Robustness Certification of Neural Networks with Abstract Int...
 
CMSI計算科学技術特論A(8) 高速化チューニングとその関連技術2
CMSI計算科学技術特論A(8) 高速化チューニングとその関連技術2CMSI計算科学技術特論A(8) 高速化チューニングとその関連技術2
CMSI計算科学技術特論A(8) 高速化チューニングとその関連技術2
 
猫でも分かるVariational AutoEncoder
猫でも分かるVariational AutoEncoder猫でも分かるVariational AutoEncoder
猫でも分かるVariational AutoEncoder
 
Exome解析入門
Exome解析入門Exome解析入門
Exome解析入門
 
comp_pfiseminar
comp_pfiseminarcomp_pfiseminar
comp_pfiseminar
 
中間⾔語モデルを⽤いた 多⾔語機械翻訳の精度向上
中間⾔語モデルを⽤いた 多⾔語機械翻訳の精度向上中間⾔語モデルを⽤いた 多⾔語機械翻訳の精度向上
中間⾔語モデルを⽤いた 多⾔語機械翻訳の精度向上
 
LTspice超入門 マルツエレック marutsuelec
LTspice超入門 マルツエレック marutsuelecLTspice超入門 マルツエレック marutsuelec
LTspice超入門 マルツエレック marutsuelec
 
検索評価ツールキットNTCIREVALを用いた様々な情報アクセス技術の評価方法
検索評価ツールキットNTCIREVALを用いた様々な情報アクセス技術の評価方法検索評価ツールキットNTCIREVALを用いた様々な情報アクセス技術の評価方法
検索評価ツールキットNTCIREVALを用いた様々な情報アクセス技術の評価方法
 
R による文書分類入門
R による文書分類入門R による文書分類入門
R による文書分類入門
 
Variational Kalman Filter
Variational Kalman FilterVariational Kalman Filter
Variational Kalman Filter
 
充足可能性問題のいろいろ
充足可能性問題のいろいろ充足可能性問題のいろいろ
充足可能性問題のいろいろ
 
Rokko チュートリアル
Rokko チュートリアルRokko チュートリアル
Rokko チュートリアル
 
PFI Christmas seminar 2009
PFI Christmas seminar 2009PFI Christmas seminar 2009
PFI Christmas seminar 2009
 

Mais de Yusuke Oda

複数の事前並べ替え候補を用いた句に基づく統計的機械翻訳
複数の事前並べ替え候補を用いた句に基づく統計的機械翻訳複数の事前並べ替え候補を用いた句に基づく統計的機械翻訳
複数の事前並べ替え候補を用いた句に基づく統計的機械翻訳
Yusuke Oda
 
Syntax-based Simultaneous Translation through Prediction of Unseen Syntactic ...
Syntax-based Simultaneous Translation through Prediction of Unseen Syntactic ...Syntax-based Simultaneous Translation through Prediction of Unseen Syntactic ...
Syntax-based Simultaneous Translation through Prediction of Unseen Syntactic ...
Yusuke Oda
 

Mais de Yusuke Oda (12)

primitiv: Neural Network Toolkit
primitiv: Neural Network Toolkitprimitiv: Neural Network Toolkit
primitiv: Neural Network Toolkit
 
Neural Machine Translation via Binary Code Prediction
Neural Machine Translation via Binary Code PredictionNeural Machine Translation via Binary Code Prediction
Neural Machine Translation via Binary Code Prediction
 
複数の事前並べ替え候補を用いた句に基づく統計的機械翻訳
複数の事前並べ替え候補を用いた句に基づく統計的機械翻訳複数の事前並べ替え候補を用いた句に基づく統計的機械翻訳
複数の事前並べ替え候補を用いた句に基づく統計的機械翻訳
 
Encoder-decoder 翻訳 (TISハンズオン資料)
Encoder-decoder 翻訳 (TISハンズオン資料)Encoder-decoder 翻訳 (TISハンズオン資料)
Encoder-decoder 翻訳 (TISハンズオン資料)
 
Learning to Generate Pseudo-code from Source Code using Statistical Machine T...
Learning to Generate Pseudo-code from Source Code using Statistical Machine T...Learning to Generate Pseudo-code from Source Code using Statistical Machine T...
Learning to Generate Pseudo-code from Source Code using Statistical Machine T...
 
A Chainer MeetUp Talk
A Chainer MeetUp TalkA Chainer MeetUp Talk
A Chainer MeetUp Talk
 
Syntax-based Simultaneous Translation through Prediction of Unseen Syntactic ...
Syntax-based Simultaneous Translation through Prediction of Unseen Syntactic ...Syntax-based Simultaneous Translation through Prediction of Unseen Syntactic ...
Syntax-based Simultaneous Translation through Prediction of Unseen Syntactic ...
 
ACL Reading @NAIST: Fast and Robust Neural Network Joint Model for Statistica...
ACL Reading @NAIST: Fast and Robust Neural Network Joint Model for Statistica...ACL Reading @NAIST: Fast and Robust Neural Network Joint Model for Statistica...
ACL Reading @NAIST: Fast and Robust Neural Network Joint Model for Statistica...
 
Tree-based Translation Models (『機械翻訳』§6.2-6.3)
Tree-based Translation Models (『機械翻訳』§6.2-6.3)Tree-based Translation Models (『機械翻訳』§6.2-6.3)
Tree-based Translation Models (『機械翻訳』§6.2-6.3)
 
翻訳精度の最大化による同時音声翻訳のための文分割法 (NLP2014)
翻訳精度の最大化による同時音声翻訳のための文分割法 (NLP2014)翻訳精度の最大化による同時音声翻訳のための文分割法 (NLP2014)
翻訳精度の最大化による同時音声翻訳のための文分割法 (NLP2014)
 
Pattern Recognition and Machine Learning: Section 3.3
Pattern Recognition and Machine Learning: Section 3.3Pattern Recognition and Machine Learning: Section 3.3
Pattern Recognition and Machine Learning: Section 3.3
 
Test
TestTest
Test
 

Último

Último (11)

論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 

PCFG構文解析法

  • 1. 15/08/09 Copyright (C) 2015 by Yusuke Oda, AHC-Lab, IS, NAIST 1 PCFG構文解析法 小田 悠介 NAIST @odashi_t NLP東京Dの会 8/9/2015
  • 2. 15/08/09 Copyright (C) 2015 by Yusuke Oda, AHC-Lab, IS, NAIST 2 今日話す内容 ● CFG と CKY アルゴリズム ● PCFG ● Vertical/Horizontal Markovization (Stanford Parser) ● PCFG-LA (Berkeley Parser) ● 頑健な構文解析器 (Ckylark)
  • 3. 15/08/09 Copyright (C) 2015 by Yusuke Oda, AHC-Lab, IS, NAIST 3 Chomsky 階層 Type-0 Type-1 Type-2 Type-3 正規言語 文脈自由言語 文脈依存言語 帰納的可算言語 ● 形式言語理論のおさらい 今日の話題 チューリングマシン上の アルゴリズム
  • 4. 15/08/09 Copyright (C) 2015 by Yusuke Oda, AHC-Lab, IS, NAIST 4 文脈自由文法 ● 文脈自由文法 (context-free grammar: CFG) – Chomsky 階層の Type-2 文法 – 単一の記号を複数の記号列に書き換える規則の集合 S文 VP動詞句 NP名詞句 DT限定詞 This isVBZ動詞:三単現 NP名詞句 DT限定詞 NN名詞:単数 a pen – 注目している記号の周囲の情報 (=文脈) は考慮しない (=自由) – CFG により生成される自然言語の構文木は句構造 (phrase structure) と呼ぶ
  • 5. 15/08/09 Copyright (C) 2015 by Yusuke Oda, AHC-Lab, IS, NAIST 5 This is a pen Cocke-Kasami-Younger アルゴリズム ● Cocke-Kasami-Younger (CKY or CYK) アルゴリズム – 文法 と入力単語列 が与えられたとき で を生成可能か判別(構文木も作れる) – 小さい部分木から順に生成 ... 動的計画法の一種 DT NNS NP VBZ NNS DT NN NP NN S NP S VP SQ S 全体の解析は
  • 6. 15/08/09 Copyright (C) 2015 by Yusuke Oda, AHC-Lab, IS, NAIST 6 Chomsky 標準形 ● CKY アルゴリズムは Chomsky 標準形の文法のみ解析可能 Binary 規則 文法 → 文法 + 文法 Lexicon 文法 → 単語 Chomsky 標準形: 以下の規則のみからなる CFG ● 実際の構文は... NP DT Unary VP NP PPVBZ Trinary NP JJDT JJ NN もっと大きな規則
  • 7. 15/08/09 Copyright (C) 2015 by Yusuke Oda, AHC-Lab, IS, NAIST 7 Unary 規則の取り扱い ● 限定適用(近似) – 各 CKY テーブル上で、予め決めた回数だけ Unary 規則を適用(普通は 1 回だけ) – 実用的にはこれで十分な場合が多い ● Ckylark の実装 DT NNS VBZ DT NNS VBZ NP VP● 厳密な unary chain – Unary 規則の集合でグラフを構築 – 今見ている記号に到達可能な経路を列挙 ● Berkeley Parser の実装 S FRAG NP VP NNS VBZ SBAR DT NP DT NP DT NP DT NP DTDT SBAR S FRAG DT NNS VBZ NP VP SBAR S FRAG
  • 8. 15/08/09 Copyright (C) 2015 by Yusuke Oda, AHC-Lab, IS, NAIST 8 Trinary 以上の規則の取り扱い ● 基本的な考え: 分解して binary 規則に変形 VP NP PPVB VP VP/PP PPVB NP 文法範疇の使用(厳密) VP NP PPVB VP VP PPVB NP X-bar 文法(近似) ● 分解方向によるバリエーション VP X PPVB NP 左分解 VP X PPVB NP 右分解 – 言語や文法の特徴で適切に選択 – Berkeley Parser および Ckylark は X-bar 文法かつ左分解 ● 分解方向は無理矢理変更可能
  • 9. 15/08/09 Copyright (C) 2015 by Yusuke Oda, AHC-Lab, IS, NAIST 9 自然言語の曖昧性 ● 複数の(多分)正しい構文木が存在する可能性 PRP VBD DT NN IN DT NN NP VP NP PP NP S I saw a girl with a telescope I saw a girl with a telescope PRP VBD DT NN IN DT NN NP VP NP PP NP S NP
  • 10. 15/08/09 Copyright (C) 2015 by Yusuke Oda, AHC-Lab, IS, NAIST 10 確率的文脈自由文法 (1) ● 確率的文脈自由文法 (probabilistic CFG: PCFG) [Booth&Thompson1973] 他 – 構文木の「確からしさ」を解析時に考慮 ● 各規則が生成確率を持つ VP ξ = 0.05VBZ VBZ NP ξ = 0.18 ...... VBZ VP ξ = 0.09 VBZ NP PP ξ = 0.15 VBP NP ξ = 0.17 VBP NP PP ξ = 0.10 MD VP ξ = 0.14 VBG S ξ = 0.02
  • 11. 15/08/09 Copyright (C) 2015 by Yusuke Oda, AHC-Lab, IS, NAIST 11 確率的文脈自由文法 (2) ● 構文木の生成確率 PRP VBD DT NN IN DT NN NP VP NP PP NP S I saw a girl with a telescope ● 最も単純な PCFG モデル: Treebank 中の規則の個数をスコアとする – 最尤推定と同じ ξ ξ ξ ξ ξ ξ ξ ξ ξξ ξξξ 構文木の生成確率 ランダム生成したときに その木が得られる確率
  • 12. 15/08/09 Copyright (C) 2015 by Yusuke Oda, AHC-Lab, IS, NAIST 12 構文解析の評価 (1) ● Labeled precision/recall/Fβ – 各句の (先頭位置, 終端位置, 記号) の一致数 ● Crossing brackets – 参照木の句を跨ぐような解析結果の句の数 ● Tagging accuracy – 当てた品詞(準終端記号)の数
  • 13. 15/08/09 Copyright (C) 2015 by Yusuke Oda, AHC-Lab, IS, NAIST 13 構文解析の評価 (2) PRP VBD DT NN IN DT NN NP VP NP PP NP S I saw a girl with a telescope I saw a girl with a telescope PRP VBD DT NN IN DT NN NP VP NP PP NP S NP Gold Parse S:1-7 NP:1-1 VP:2-7 NP:3-4 PP:5-7 NP:6-7 S:1-7 NP:1-1 VP:2-7 NP:3-7 NP:3-4 PP:5-7 NP:6-7 – LP = 6/7 85.7%≒ – LR = 100% – LF1 = (2*LP*LR) / (LP+LR) 92.3%≒ – Crossing brackets = 0 – Tagging accuracy = 100%
  • 14. 15/08/09 Copyright (C) 2015 by Yusuke Oda, AHC-Lab, IS, NAIST 14 単純なPCFGの問題 (1) ● 文法の種類が荒すぎる – 例: 右の構文木の 2 個の NP は同じ? ● NP … Subject, PRP のみを生成しやすい ● NP … Object, NN を含む句を生成しやすい ● NP が PRP のみを生成する確率は NP の 約 8.7 倍 [Klein&Manning2003] – 明らかに同じ記号で違う意味のものが存在 ● 別の記号に分けるべき PRP VBD DT NN NP VP NP S He ate an apple PRPNP VBDVP DTNP NNNP NPS VPS NPVP SROOT He ate an apple ● Parent annotation [Johnson1998] – 各記号に親のラベルを付与 – 縦方向の 2 階 Markov 連鎖でモデル化するのと同じ ● 普通の PCFG は 1 階 Markov 連鎖
  • 15. 15/08/09 Copyright (C) 2015 by Yusuke Oda, AHC-Lab, IS, NAIST 15 単純なPCFGの問題 (2) ● データスパースネス – ほとんどの規則の登場回数が 1 回 ● 記号の複雑な組み合わせ ● 記号の反復 – 過学習の原因 ● …学習データに登場 不当に高確率 ● …学習データにない 0 Penn Treebank 中の規則の頻度 [Collins1999] VP → VB NP NP NP PRN VP → VB NP SBAR PP SG ADVP VP → VB NP ADVP ADVP PP PP VP → VB RB VP → VB NP PP NP SBAR VP → VB NP PP SBAR PP ... 実際にPenn Treebank に 1 回しか登場しない 規則の例 [Collins1999] ● 対応策: 大きな規則の分解 – X-bar 文法でもある程度対応可能 ● ただし規則の周辺情報は消滅 – 周辺情報をどこまで残す?
  • 16. 15/08/09 Copyright (C) 2015 by Yusuke Oda, AHC-Lab, IS, NAIST 16 Vertical/Horizontal Markovization (1) ● Vertical/Horizontal Markovization [Klein&Manning2003] – 巨大な生成規則を周辺情報を含む部分木に分割 – Parent annotation などいくつかの既存法の一般化 NP VP DT JJ JJ NN a quick brown fox VBZ jumps S NP DT JJ JJ NN ROOT NPROOT-S : DT DT JJ JJ NN NPROOT-S : DT...JJ NPROOT-S : DT...JJ-NN NPROOT-S NPROOT-S : DT...JJ-JJ NPROOT-S : DT...JJ-NN 親 V-1個の祖先 主辞 H個の兄弟
  • 17. 15/08/09 Copyright (C) 2015 by Yusuke Oda, AHC-Lab, IS, NAIST 17 Vertical/Horizontal Markovization (2) ● Stanford Parser – V/H Markovization + 色々な文法分割のヒューリスティクス + 探索の工夫 – LF1 = 86.3% [Klein&Manning2003] 時点 VとHを色々変えたときのLF1と規則の数 [Klein&Manning2003] 単純なPCFG Parent annotation [Collins1999]
  • 18. 15/08/09 Copyright (C) 2015 by Yusuke Oda, AHC-Lab, IS, NAIST 18 潜在注釈付き PCFG ● 潜在注釈付き PCFG (PCFG with Latent Annotation: PCFG-LA) [Matsuzaki+2005] – 各記号に直接近隣の情報を関連付けるのではなく、周辺の特徴を捉えた潜在クラスを付与 DT[5] VBD[3] DT[2] NN[9] NP[1] VP[2] NP[2] S[4] This is a pen ● 潜在クラスをどのように作る? – コーパスから自動的に生成できると嬉しい NP[1] … Subject になりやすい特徴を持つ NP[2] … Object になりやすい特徴を持つ DT[5] … This や that を生成しやすい DT[2] … A を生成しやすい
  • 19. 15/08/09 Copyright (C) 2015 by Yusuke Oda, AHC-Lab, IS, NAIST 19 Split-merge アルゴリズム (1) ● Split-merge アルゴリズム [Petrov+2006] – 教師なし学習による潜在クラス生成法 ● Split-step … 潜在クラスを適当に分割、EM アルゴリズムで生成確率を推定 ● Merge-step … Split の効果がなかった潜在クラスを再結合 – 潜在クラスが木構造として得られる ● [Petrov+2006]: split-step で 2 分割、merge-step で半分を再結合 – 1 回の split-merge で潜在クラス数が 1.5 倍に増加 Split-merge により自動生成された潜在クラス階層 [Petrov+2006]
  • 20. 15/08/09 Copyright (C) 2015 by Yusuke Oda, AHC-Lab, IS, NAIST 20 Split-merge アルゴリズム (2) 最終的な潜在クラスの例 [Petrov+2006] 似たような特徴の 単語同士が クラスタリング されている
  • 21. 15/08/09 Copyright (C) 2015 by Yusuke Oda, AHC-Lab, IS, NAIST 21 Coarse-to-fine 構文解析 ● PCFG-LA の問題: 生成規則が膨大 – 潜在クラス付き記号の数は split-merge により指数的に増加 – 通常の CKY …解析では計算が終わらない ● Coarse-to-fine 構文解析 – まず階層の浅い潜在クラスで CKY 解析 – 確率の低いノードを削除、残ったノードで次の階層の解析 Coarse-to-fine 解析時の CKY テーブル(色の濃さは確率) [Petrov2009]
  • 22. 15/08/09 Copyright (C) 2015 by Yusuke Oda, AHC-Lab, IS, NAIST 22 PCFG-LA の解析精度 ● Berkeley Parser – Split-merge + 平均化スムージング + 単語素性による未知語処理 + 探索の工夫 – LF1 = 90.2% [Petrov+2006] 時点 過学習 PCFG-LA による構文解析の LF1 値 [Petrov2009]
  • 23. 15/08/09 Copyright (C) 2015 by Yusuke Oda, AHC-Lab, IS, NAIST 23 …実際の構文解析器では ● 実際に構文解析を使用するのは、大きなシステムのパイプラインの一部 ● 基本的に解析失敗は可能な限り避けたい – 例: 機械翻訳 形態素 解析 構文 解析 機械 翻訳 入力 テキスト 音声認識 etc. 出力 テキスト 音声合成 etc. – エラーの発生した場所より先の処理が実行不可能 – ユーザ視点だと「壊れた」のと同じ ● 多少変な入力が渡されても問題なく結果を出力できる頑健性が必要 – もしくは裏でエラー処理をものすごく頑張る
  • 24. 15/08/09 Copyright (C) 2015 by Yusuke Oda, AHC-Lab, IS, NAIST 24 Coarse-to-fine 解析の問題 ● Coarse-to-fine 解析は稀に探索に失敗 – 構文木の確率が極端に低い場合、CKY ノードを枝刈りしすぎる Level 0 (PCFG) Level 1 Level 2 DT22 PP NN1 JJ NN DT NN2 NN1 NN2 NN21 NN11 NN12 NP11 DT12 DT2 VP CD NP NP2 NP1 NNS NN DT21 NP12 NN22 DT1 DT11 – 全ての候補が枝刈りされてしまい、そのノード以下の解析が不可能 ● どのような構文木も出力することができない
  • 25. 15/08/09 Copyright (C) 2015 by Yusuke Oda, AHC-Lab, IS, NAIST 25 Coarse-to-fine 解析の中間結果を使用 ● 失敗が起こったとき、その前段の CKY テーブルで構文木を生成 – Coarse-to-fine 解析は最後まで実行しなくても問題ない OK OK OK OK Level 0 (PCFG) Level 1 Level 2 Level N Tree Make parse tree Tree Make parse tree OK OK Fail Level 0 (PCFG) Level 1 Level 2 Level N Tree Make parse tree ● 「最初の解析で失敗しなければ」構文木を生成可能
  • 26. 15/08/09 Copyright (C) 2015 by Yusuke Oda, AHC-Lab, IS, NAIST 26 モデルの不整合による解析失敗 ● Coarse-to-fine 解析の初段 (=PCFG) で失敗する場合 – 入力が学習データと大きく離れているため、モデルが対応できていない – 例: 括弧 ? NN a symbol @NP -LRB- ( DT PRN X ( some phrases @PRN -RRB- ) -LRB- – Penn Treebank 内で、左括弧は PRN 句の前方にのみ存在 – それ以外の使い方はモデル的に想定されていない
  • 27. 15/08/09 Copyright (C) 2015 by Yusuke Oda, AHC-Lab, IS, NAIST 27 未知語スムージング ● 想定外の用法で出現した単語は未知語と考える – 普通に解析できなくても、未知語に置き換えた場合に解析できることがある – 非常に小さい割合で生成確率に未知語の生成確率を補間 ? DT NN a symbol @NP NP ( -LRB- unk NN λ 元の単語生成確率 未知語生成確率 未知語補間係数 非常に小さい値 (実験ではE-10)
  • 28. 15/08/09 Copyright (C) 2015 by Yusuke Oda, AHC-Lab, IS, NAIST 28 ● Ckylark [Oda+2015] – Coarse-to-fine 解析 + 中間結果の利用 + 未知語スムージング + 確率スケーリング – Penn Treebank の解析精度は Berkeley Parser とほぼ同程度 – NTCIR-PATMT 300 万文(80単語以内の文を抜粋)で解析失敗なし 0 0.0136 0.561 % Ckylark 0 失敗した文数 (NTCIR PATMT-en) Tool Berkeley # 419 Egret 17287 Failure Smoothing factor 0 (PCFG) 1741 1 135 2 24 3 11 4 5 5 57 6 1405 0 130 19 8 4 51 1389 Failed grammar level 失敗の分布 未知語スムージングの 効果 前段で構文木を生成することにより 除去可能
  • 29. 15/08/09 Copyright (C) 2015 by Yusuke Oda, AHC-Lab, IS, NAIST 29 Ckylark の使い方 (1) ● インストール $ git clone git@github.com:odashi/ckylark $ cd ckylark $ autoreconf ­i $ ./configure $ make $ make install ● 構文解析 – 英語: wsj 日本語: jdc 中国語: ctb (日本語と中国語は KyTea が必要) $ ckylark ­­model wsj > This is a pen . < ( (S (NP (DT This)) (VP (VBZ is) (NP (DT a) (NN pen))) (. .)) ) $ kytea ­notags | ckylark ­­model jdc > これはペンです。 < ( (助動詞でP (助動詞でP (名詞P (助詞はP (代名詞 これ) (助詞は は))  (名詞 ペン)) (助動詞でP (助動詞で で) (語尾 す))) (補助記号 。)) )
  • 30. 15/08/09 Copyright (C) 2015 by Yusuke Oda, AHC-Lab, IS, NAIST 30 Ckylark の使い方 (2) ● 品詞推定 – Penn Treebank 上の推定精度は 97% くらい ● 不完全な文の構文解析 – 文法記号をワイルドカードとして使用可能 $ ckylark ­­model wsj ­­output­format postag > This is a pen . < This/DT is/VBZ a/DT pen/NN ./. $ kytea ­notags | ckylark ­­model jdc ­­output­format postag > これはペンです。 < これ/代名詞 は/助詞は ペン/名詞 で/助動詞で す/語尾 。/補助記号 $ ckylark ­­model wsj ­­partial > This is [NP] . < ( (S (NP (DT This)) (VP (VBZ is) (NP [NP])) (. .)) ) > [PRP] [VBZ] [PP] . < ( (S (NP (PRP [PRP])) (VP (VBZ [VBZ]) (PP [PP])) (. .)) )
  • 31. 15/08/09 Copyright (C) 2015 by Yusuke Oda, AHC-Lab, IS, NAIST 31 今日話した内容 ● CFG と CKY アルゴリズム ● PCFG ● Vertical/Horizontal Markovization (Stanford Parser) ● PCFG-LA (Berkeley Parser) ● 頑健な構文解析器 (Ckylark)