Title: ??????? (full parsing)
1??????? ?8?
2009?11?25?
2????????
- ??????? (full parsing)
- ??????? (decoding)
- ???
- ???(?) ????(?) ?????4 ???????? ?????
- C. D. Manning Hinrich Schütze FOUNDATIONS OF
STATISTICAL NATURAL LANGUAGE PROCESSING MIT
Press, 1999 - D. Jurafsky, J. H. Martin, A. Kehler, K.V. Linden
N. Ward Speech and Language Processing An
Introduction to Natural Language Processing,
Computational Linguistics, and Speech
Recognition Prentice Hall Series in Artificial
Intelligence, 2000
3CFG?????
- ???????
- full parsing, brute-force search, exhaustive
search, parsing - ???s??????????G????????????????????????
- ??????
- ?????????????????????????????????
- ?????????????????????(?????????????)
- ???????
- inference, parsing, decoding
- ???????????????
- ?????????n-best????????
4???????
5??????????????
- ???????
- ????? (earley parsing algorithm)
- ???????
- CKY? (CKY parsing algorithm, CYK?????)
- ????? (chart parsing algorithm)
- ????? (left-corner parsing algorithm)
- ???LR? (generalized LR parsing)
6CKY?
- Cocke, Kasami, Younger?????????????????????CKY????
CYK??????????????? - ???????????????
- ??
- ?????
- ?????????????
- ???????????????????????
- ???????? ????????????????????
- ???????? ????????????????????
- CFG??????????????
- HPSG?CCG??????????????????????????
7?? ???????
- ???????3????
- A ? B C (????????)
- A ? B (????????)
- A ? w (?????)
- ??
- ? w1,w2,...,wn ????????
- ??wi??? lti-1, igt
- ? wi,...,wj??? lti-1, jgt
8?? CKY????(????)
- Si,j wi1,..., wj???????????????
S0,6
S0,5
S1,6
S0,4
S1,5
S2,6
S0,3
S1,4
S2,5
S3,6
S0,2
S1,3
S2,4
S3,5
S4,6
S0,1
S1,2
S2,3
S3,4
S4,5
S5,6
0
1
2
3
4
5
6
w1
w2
w3
w4
w5
w6
9CKY? ????????
- ?? S0, n???
- Si,j???S???????
- Si, i1?Si1, j
- Si, i2?Si2, j
- ....
- Si, j-1?Sj-1, j
10CKY? ????????
Y
X
Z
w1, w2, w3, w4
Y
X
w1, w2, w3, w4
w1, w2, w3, w4
X
Y
w1, w2, w3, w4
11CKY?
S0,6
S0,5
S1,6
S0,4
S1,5
S2,6
S0,3
S1,4
S2,5
S3,6
S0,2
S1,3
S2,4
S3,5
S4,6
????
S0,1
S1,2
S2,3
S3,4
S4,5
S5,6
0
1
2
3
4
5
6
w1
w2
w3
w4
w5
w6
12??????Si,j????
- G(X, Y) Z?p?P.p(Z?X Y)
- X Y?????????????
- X, Y ?????
- P ???????
- Si,j??????????
- for k i1 to j-1
- forall X? Si,k
- forall Y ? Sk,j
- Si,j Si,j ? G(X, Y)
13CKY? Si,j
S0,6
S0,5
S1,6
S0,4
S1,5
S2,6
S0,3
S1,4
S2,5
S3,6
S0,2
S1,3
S2,4
S3,5
S4,6
S0,1
S1,2
S2,3
S3,4
S4,5
S5,6
0
1
2
3
4
5
6
w1
w2
w3
w4
w5
w6
14 CKY?
??
S ? NP VP
VP ? VP PP
VP ? V NP
VP ? V
NP ? NP PP
NP ? John
NP ? Mary
PP ? P NP
P ? with
NP ? DT NP
DT ? a
NP ? telescope
V ? sees
V ? runs
0,6
???????????????????????? (factoring,
???????) ??????????????????????????
0,5
1,6
VP,VP
0,4
1,5
2,6
NP
S
0,3
1,4
2,5
3,6
PP
0,2
1,3
2,4
3,5
4,6
VP
NP
0,1
1,2
2,3
3,4
4,5
5,6
NP
DT
P
V
NP
NP
0
1
2
3
4
5
6
John
sees
Mary
with
a
telescope
15 CKY?
??
S ? NP VP
VP ? VP PP
VP ? V NP
VP ? V
NP ? NP PP
NP ? John
NP ? Mary
PP ? P NP
P ? with
NP ? DT NP
DT ? a
NP ? telescope
V ? sees
V ? runs
S
0,6
0,5
1,6
VP
0,4
1,5
2,6
NP
S
0,3
1,4
2,5
3,6
PP
0,2
1,3
2,4
3,5
4,6
VP
NP
0,1
1,2
2,3
3,4
4,5
5,6
NP
DT
P
V
NP
NP
0
1
2
3
4
5
6
John
sees
Mary
with
a
telescope
16CKY? ??????
- for j 1 to n
- Sj-1,j L(wj) L???w?????????????????
- for l 2 to n
- for i 0 to n l
- j i l
- for k i1 to j - 1
- forall X?Si,k
- forall Y?Sk,j
- Si,j Si,j ? G(X, Y)
- Si,j Si,j ? U(Si,j)
U?????????????????????????
17CKY? ???
- ??????? (worst-case time complexity)
- O(n3)
- n???
- ???????????
- ???????VN?????O(n3VN2)
- ?????????????????????????????????!
18CKY? ????
S0,6
S0,5
S1,6
S0,4
S1,5
S2,6
S0,3
S1,4
S2,5
S3,6
S0,2
S1,3
S2,4
S3,5
S4,6
????
S0,1
S1,2
S2,3
S3,4
S4,5
S5,6
0
1
2
3
4
5
6
w1
w2
w3
w4
w5
w6
19CKY? ????
S0,6
S0,5
S1,6
S0,4
S1,5
S2,6
S0,3
S1,4
S2,5
S3,6
S0,2
S1,3
S2,4
S3,5
S4,6
????
S0,1
S1,2
S2,3
S3,4
S4,5
S5,6
0
1
2
3
4
5
6
w1
w2
w3
w4
w5
w6
20CKY? ?????
- ?CKY??Si,j??????????
- ???
- ???ID
- ?????
- ??????
- ??? ????????????????????????????
- ?????????????ID???
- ?????????????ID
- ?????????ID
21?????
- n???????????????????????????????????????
- CKY?2?????????
22????? ?????
- ???
- ????? lti, j, Y ? X1 ... XkXk1 ... Xngt
- ?????????????????
- X1 ... Xk???????????????
- ????????? (i)?????? (j)
- ?????????????????
- ?????? lti, j, Ygt
- ???????? (i)????? (j)
- ?????
23????? ???????
- Shift-1 ?????????lti, j, Xgt????????
- ???Y?...X...????????????Y?...X...?????????
X
Y ? X1 X2X X3
new!
i
j
Y ? X1 X2X X3
new!
Y ? X1 X2X X3
X
i
j
24????? ???????
- Shift-2 ????????lti, j, Y?...X...gt???????,
- ???????????????X????????????
X
Y ? X1X X2 X3
new!
i
j
Y ? X1X X2 X3
new!
X
Y ? X1X X2 X3
i
j
25????? ???????
- Reduce Shift-1, Shift-2???????????lti, j,
Y?...Xgt???????? - ??????lti, j, Ygt??????
Y
Y ? X1 X2 X3
new!
i
j
i
j
26????? ??????
- for j 1 to n
- Queue Queue ? L(wj) ??????ltj-1, j,
wj?????????gt??? - Chart Chart ? L(wj) ?Y?ß?Pltj-1, j-1, Y?ßgt
- while(Queue is not empty)
- E shift(Queue) E?Queue???
- edges reduced_edges
- if(E is ??????lti, j, Xgt)
- forall F?Chart s.t. Flth, i, Y? ...X...gt
- edges edges ? lth, j, Y?
...X...gt - if(E is ?????lti, j, Y?...X...gt)
- forall F?Chart s.t. Fltj, k, Xgt
- edges edges ? lti, k, Y?
...X...gt - forall E ? edges
- if(E is ltx, y, Y?ßgt)
- reduced_edges
reduced_edges?ltx, y, Ygt - else
- reduced_edges reduced_edges ?
E - Queue Queue ? reduced_edges Chart Chart
? reduced_edges
??????????????????????????????
27?????
- ????????????????????
- ?????????????????ok
- ???????????????????????????(?????????)
28????? ???????
- left-to-right
- ?????????????CKY????????
w1, w2, w3,........,wi-1,wi,........., wn
29????? ??????? (1)
- w1,..,wi-1??????????????????????????
- lti-1, i, l?L(wi)gt????????????????
w1, w2, w3,........,wi-1,wi,........., wn
30????? ??????? (2)
- ????????????lt_, i, Xgt????
- Y?X1....XkX??????????????X?????Xk,..X1????????????
? - ???????????????lt_, i, Ygt???
- ???????????????i?????????????????????????????
Y
Y?A B C X
X
C
B
A
........,wi-1,wi,.........
31????? ??????
- search-left(Y, ß(X1...Xk), i,j)
- if( ß is empty )
- edges edges ? lti, j, Ygt
- forall lth,i,Xkgt ? Chart
- search-left(Y, X1...Xk-1, h, j)
-
- left-corner-parsing(w1,...,wn)
- for j 1 to n
- Queue L(wj) ltj-1, j, wj??????gt
- while(Queue is not empty)
- lti, j, Xgt shift(Queue)
- forall (Y?X1 ... Xk X) ? P
- edges
- search-left(Y, X1...Xk, i, j)
- Chart Chart ? edges Queue
Queue ? edges
??????????????????????????
32??????????
- ?????(dynamic programming)
- ????????????????????????????????????????
- ????????????????????(???????)
- ?????2?????????????
- ?????????????? (packed forest)
- AND, OR???????????
33DECODING
34????????? (viterbi algorithm)
- ???????????????????????????
- ???????????????????
- ???????????????????????
- c.f. max?????sum?????????????????????
- ???
- ?????
35?????????????????
- ??i, j????
- ????k, Z????????
Y
pXpY?Z?XY
X
Z
w1, w2, w3, w4
Y
X
pXpY?Z?XY
w1, w2, w3, w4
w1, w2, w3, w4
X
pXpY?Z?XY
Y
w1, w2, w3, w4
36?????????
- Si,j ltX, pgt???
- X ?????
- p ??????
- Si,j???? (CKY????)
- for k i1 to j-1
- forall ltX, pXgt? Si,k
- forall ltY, pYgt? Sk,j
- forall Z ? G(X, Y)
- Si,j Si,j ? ltZ,
pXpY?Z?X Ygt
???????(??????????????????)?????????????
37 ?????????
0.50.2?VP?V NP 0.010.8 0.008
ltVP, 0.03gt ltVP, 0.008gt ???????????? ltVP,
0.03gt ???????????
0,6
0,5
1,6
ltVP,0.03gt ltVP, 0.008gt
0,4
1,5
2,6
ltNP, 0.00016gt
ltS, 0.0008gt
0,3
1,4
2,5
3,6
ltPP, 0.008gt
0,2
1,3
2,4
3,5
4,6
ltVP, 0.008gt
ltNP, 0.05gt
0,1
1,2
2,3
3,4
4,5
5,6
ltNP, 0.2gt
ltDT, 1.0gt
ltP, 1.0gt
ltNP,0.1gt
ltNP, 0.2gt
ltV, 0.5gt
0
1
2
3
4
5
6
John
sees
Mary
with
a
telescope
38???????????(beam search parsing)
- ????????????????????????????????
- ??????????
- ?????
39??????
- 2?????
- ??N?????
- ??????W?????????
Si,j
ltVP,0.03gt ltNP, 0.002gt ltS, 0.001gt ltNP-S,
0.0005gt ltNP-O, 0.0002gt ltDT, 0.000001gt ltWH,
0.00000083gt ....
??N?????
0.03W??????????
sort
N?1-W???????????
40??????
- N ??????
- W ??????
- Si,j???? (CKY????)
- for k i1 to j-1
- forall ltX, pXgt? Si,k
- forall ltY, pYgt? Sk,j
- forall Z ? G(X, Y)
- Si,j Si,j ? ltZ,
pXpY?Z?X Ygt - sort Si,j according to its p (Si,jltX1,
p1gt...ltXM, pMgt???) - remove ltXN1, pN1gt...ltXM, pMgt
- remove ltX, pgt ? Si,j s.t. p lt p1W
41????????????
- ??????????
- ???????????????
- ?????????????
- ???????????? (iterative parsing)
- ????????????
- ??????????????????
- PCFG????????????????
- ???HPSG????????????????
42???
- ???????
- CKY?
- ?????
- ?????
- ???????
- ?????????
- ??????
- ????????????
- ????12/2(?) 1630 EM?????????????????
- ????
- http//www.r.dl.itc.u-tokyo.ac.jp/ninomi/mistH21w
/cl/