[r]
(1)Phân tích cú pháp xác suất
Lê Thanh Hương
1
g Bộ môn Hệ thống Thông tin Viện CNTT &TT – Trường ĐHBKHN Email: huonglt-fit@mail.hut.edu.vn
Làm cách chọn đúng? z Ví dụ:
I saw a man with a telescope z Khi số luật tăng, khả nhập nhằng tăng z Tập luật NYU: PTCP Apple pie : 20,000-30,000
2
p pp p
luật cho tiếng Anh
z Lựa chọn luật AD: V DT NN PP
(1) VP → V NP PP NP → DT NN
(2) VP →V NP NP →DT NN PP
Kết hợp từ (bigrams pr) Ví dụ:
Eat ice-cream (high freq) Eat John (low, except on Survivor) Nhược điểm:
z P(John decided to bake a) có xác suất cao z Xét:
P(w3) = P(w3|w2w1)=P(w3|w2)P(w2|w1)P(w1)
3
P(w3) P(w3|w2w1) P(w3|w2)P(w2|w1)P(w1)
Giả thiết mạnh: chủ ngữ định bổ ngữ câu
Clinton admires honesty
¾sử dụng cấu trúc ngữ pháp để dừng việc lan truyền z Xét Fred watered his mother’s small garden Từgarden có
ảnh hưởng nào?
z Pr(garden|mother’s small) thấp ⇒mô hình trigram khơng tốt
z Pr(garden | X thành phần bổ ngữ cho động từto water) cao
¾sử dụng bigram + quan hệ ngữ pháp
Kết hợp từ (bigrams pr) z V có số loại bổ ngữ định
⇒Verb-with-obj, verb-without-obj z Sự tương thích chủ ngữ bổ ngữ:
John admires honesty Honesty admires John ???
4
Nhược điểm:
• Kích thước tập ngữ pháp tăng
z Các báo tạp chí Wall Street Journal năm: 47,219 câu, độ dài trung bình 23 từ, gán nhãn tay:
có 4.7% hay 2,232 câu có cấu trúc ngữ pháp ¾ Khơng thể dựa việc tìm cấu trúc cú pháp cho
cả câu Phải xây dựng tập mẫu ngữ pháp nhỏ
Ví dụ
S
VP VP
VP
Luật
5
This apple pie looks good and is a real treat DT NN NN VBX JJ CC VBX DT JJ NN
NP NP
VP ADJ
Luật
Luật
Luật
1 NP→DT NN NN NP→DT JJ NN
3 S→NP VBX JJ CC VBX NP
z Nhóm (NNS, NN) thành NX; (NNP, NNPs)=NPX; (VBP, VBZ, VBD)=VBX;
6
(VBP, VBZ, VBD) VBX;
(2)Tính xác suất
X NP
1470 Pr(X →Y)
7 Y DT JJ NN
9711
NP = =0.1532
Tính Pr
S NP VP DT JJ NN VBX NP
DT JJ NN
The big guy ate
4
S →NP VP; 0.35
NP → DT JJ NN; 0.1532
VP → VBX NP; 0.302
8
Luật áp dụng Chuỗi Pr 1S →NP VP 0.35
2NP → DT JJ NN 0.1532x 0.35 = 0.0536 3VP → VBX NP 0.302x 0.0536= 0.0162 4NP → DT JJ NN 0.1532x 0.0162=0.0025 Pr = 0.0025
the apple pie
Văn phạm phi ngữ cảnh xác suất
z văn phạm phi ngữ cảnh xác suất (Probabilistic Context
Free Grammar) gồm phần thông thường CFG
z Tập ký hiệu kết thúc {wk}, k = 1, ,V z Tập ký hiệu không kết thúc {Ni}, i = 1, ,n z Ký hiệu khởiđầu N1
9
z Ký hiệu khởi đầu N
z Tập luật {Ni→ ζj}, ζjlà chuỗi ký hiệu kết thúc không
kết thúc
z Tập xác suất luật là: ∀i ∑jP(Ni→ ζj) =
z Xác suất cú pháp:
P(T) = Πi=1 np(r(i))
Các giả thiết
z Độc lập vị trí:Xác suất khơng phụ thuộc vào vị trí
của từ câu
∀k, P(Njk(k+c) →ζ) giống
z Độc lập ngữ cảnh:Xác suất không phụ thuộc vào
10
ộ ập g y g pụ ộ từ ngồi
P(Njkl→ζ| từ khoảng k đến l) = P(Njkl→ζ)
z Độc lập tổ tiên:Xác suất khơng phụ thuộc vào
các nút ngồi cay
P(Njkl→ζ| nút ngồi Njkl ) = P(Njkl→ζ)
Các thuật toán
z CKY
z Beam search
z Agenda/chart based search
11
z Agenda/chart-based search z …
CKY kết hợp xác suất z Cấu trúc dữ liệu:
zMảng lập trình động π[i,j,a] lưu xác suất lớn ký hiệu không kết thúc a triển khai thành chuỗi i…j
ế ế ầ
12
(3)Tính Pr dựa suy diễn z Trường hợp bản: có từđầu vào
Pr(tree) = pr(A→ wi)
z Trường hợp đệ qui:Đầu vào xâu từ A⇒w* ij if ∃k:A→ ΒC, B ⇒w* ik,C ⇒w* kj,i≤k ≤j
13
p[i,j] = max(p(A→ ΒC) x p[i,k] x p[k,j])
i k j
A
B C
wij 14
TÍnh xác suất Viterbi (thuật toán CKY)
15
0.0504
Ví dụ
z S ỈNP VP 0.80 z NP ỈDet N 0.30
z VP ỈV NP 0.20
z VỈincludes 05
z Det Ỉthe 0.50
z Det Ỉa 0.40
z N Ỉmeal 0.01
z NỈflight 02 z V Ỉincludes 0.05 z N Ỉflight 0.02
Dùng thuật tốn CYK phân tích câu vào: “The flight includes a meal”
Tính Pr S →NP VP 1.0 VP → V NP PP 0.4 VP → V NP 0.6 NP → N 0.7 NP → N PP 0.3
6 PP → PREP N 1.0 NP NP PP VP
S VP
NP PP V N 1.0
0.4 7
0.6 0.3
17
7 N → a_dog 0.3 N → a_cat 0.5 N → a_telescop 0.2 10 V → saw 1.0 11 PREP → with 1.0
N V N PREP N PREP N 0.7
0.3 1.0 0.5 1.0 0.2
0.7
1.0 1.0
Pl= 1×.7×.4×.3×.7×1×.5×1×1×.2 = 00588 Pr= 1×.7×.6×.3×.3×1×.5×1×1×.2 = 00378
¾Plis chosen
a_dog saw a_cat with a_telescope
Xác suất Forward Backward The big brown fox
NP N’
N’’ The
big t
Xt 1 t-1… …T
•Forward= xác suất phần
tử bao gồm nút cụ thểnàođó
18
N N big
brown fox Forward
Probability= ai(t)=P(w1(t-1), Xt=i)
i
Backward Probability= bi(t)=P(wtT |Xt=i)
bi(t)
ai(t) thể
•Backward= xác suất
(4)Xác suất ngoài N1= Start
Nj
β
α Outside αj(p,q) Inside βj(p,q)
19
z Npq= ký hiệu không kết thúc Njtrải từ vị trí p đến q xâu
z αj = xác suất (outside) z βj = xác suất (inside)
z Nj phủcác từ wp … wq, Nj⇒∗wp … wq
w1 wm
β
wp wqwq+1
wp-1
N1= Start
Nj
α Outside αj(p,q) Inside βj(p,q)
Xác suất ngoài
20
w1 wm
β
wp wqwq+1
wp-1
αj(p,q) βj(p,q) = P(N1⇒∗ w1m, Nj ⇒∗ wpq | G) = P(N1⇒∗ w
1m|G)•P(Nj ⇒∗ wpq | N1⇒∗ w1m,G) αj(p,q)=P(w1(p-1), Npqj,w(q+1)m|G)
βj(p,q)=P(wpq|Npqj, G)
Tính xác suất xâu
z Sử dụng thuật toán Inside, thuật tốn lập trình động dựa xác suất inside
P(w1m|G) = P(N1⇒* w1m|G) = P(w1m|N1m1, G) = β1(1,m)
21
z Trường hợp bản:
βj(k,k) = P(wk|Nkkj, G)=P(Nj→wk|G) z Suy diễn:
βj(p,q) = Σr,sΣd∈(p,q-1)P(Nj→NrNs) βr(p,d) βs(d+1,q)
Suy diễn
Nj
P(Nj→NrNs)
Tính βj(p,q) với p < q – tính tất điểm j – thực từ lên
22
Nr Ns
wp wdwd+1 wq βr(p,d) x βs(d+1,q)
P(Nj→NrNs)
-nhân thành phần, tính tổng theo j, r,s.
Ví dụ
1 S →NP VP 1.0 VP → V NP PP 0.4 VP → V NP 0.6 NP → N 0.7
5 NP→ N PP 0.3 NP NP PP
VP
S VP
NP
PP
V N
1.0
0.4
0.6
0.3
23
5 NP → N PP 0.3 PP → PREP N 1.0 N → a_dog 0.3 N → a_cat 0.5 N → a_telescope 0.2 10 V → saw 1.0
11 PREP → with 1.0 P(a_dog saw a_cat with a_telescope) = N V N PREP N NP NP PP V N
PREP N 0.7
0.3 1.0 0.5 1.0 0.2
0.7
1.0 1.0
1×.7×.4×.3×.7×1×.5×1×1×.2 + ×.6 ×.3 = 00588 + 00378 = 00966
Tìm kiếm kiểu chùm
z Tìm kiếm khơng gian trạng thái
z Mỗi trạng thái cú pháp với xác suất
nhất định
z Tại thời điểm, giữ thành phần có điểm cao
(5)Làm giàu PCFG
z PCFG đơn giản hoạt động không tốt
giả thiết độc lập
z Giải quyết: Đưa thêm thông tin
Ph th ộ ấ t ú
25
z Phụ thuộc cấu trúc
zViệc triển khai nút phụ thuộc vào vị trí
trên ( độc lập với nội dung từ vựng nó)
zVí dụ: bổ sung thông tin cho nút cách lưu
giữ thơng tin cha nó: SNP khác với VPNP
Làm giàu PCFG
z PCFG từ vựng hóa : PLCFG (Probabilistic
Lexicalized CFG, Collins 1997; Charniak 1997)
z Gán từ vựng với nút luật z Cấu trúcHead
26
z Cấu trúc Head
z Mỗi phần tử parsed tree gắn liền với
một lexical head
z Để xác định headcủa nút ta phải xác định nút con, nút head(xác định
headtrong vế phải luật)
Làm giàu PLCFG
VP(dumped) →VBD(dumped) NP(sacks) PP(into) 3*10-10 VP(dumped) →VBD(dumped) NP(cats) PP(into) 8*10-11
27
Tại dùng PLCFG
z Tính ngoại lệ (exception) của ngôn ngữ z Sự phân loại theo cú pháp hiện tại chưa thể
hiện hết đặc tính hoạt động của từng từ
vựng vựng.
z Từ vựng hóa luật CFG giúp bộ phân tích cú
pháp thực hiện xác hơn
Hạn chế PLCFG VP -> VBD NP PP
VP(dumped) -> VBD(dumped) NP(sacks) PP(into)
z Khơng có corpus đủ lớn!
zThể hết trường hợp cú pháp, hết trường hợp từ
Penn Treebank
z Penn Treebank: tập ngữ liệu có giải ngữ
pháp, có triệu từ, nguồn ngữ liệu quan trọng
z Tính thưa:
30
z có 965,000 mẫu, có 66 mẫu WHADJP,
trong có mẫu không how muchhoặc how many
z Phần lớn phép xử lý thông minh phụ thuộc
(6)A Penn Treebank tree
31
Đánh giá độ xác của PTCP
z Độ xác parser đo qua việc tính xem có bao
nhiêu thành phần ngữ pháp giống với chuẩn, gọi
gold-standard reference parses
z Độ xác (Precision) =
% trường hợp hệ gán
32
tổng số trường hợp hệ gán (%THợp hệ tính đúng)
z Độ phủ (Recall) =
% số trường hợp hệ gán tổng số trường hợp (%THợp hệ tính so với người)
Biểu diễn theo thành phần
ngữ pháp Đánh giá
Ví dụ 2
35
Độ xác hệ thống PTCP