Bài giảng Xử lý ngôn ngữ tự nhiên (Natural Language Processing): Bài 4 - Lê Thanh Hương

7 23 0
Bài giảng Xử lý ngôn ngữ tự nhiên (Natural Language Processing): Bài 4 - Lê Thanh Hương

Đang tải... (xem toàn văn)

Thông tin tài liệu

Trên thực tế, người ta thường sử dụng phương pháp dưới lên để làm việc này.[r]

(1)

Phân tích cú pháp

1 Lê Thanh Hương

Bộ môn Hệ thống Thông tin Viện CNTT &TT – Trường ĐHBKHN Email: huonglt-fit@mail.hut.edu.vn

Bài toán PTCP

P T C

cây PTCP mẫu

độ xác tính

điể

2

C P Văn phạm câu

Các PTCP hiện có độ chính xác cao

(Eisner, Collins, Charniak, etc.) cú pháp

điểm

Khái nim v văn phm

z Phân tích câu “Bị vàng gặm cỏ non” z Cây cú pháp:

z Tập luật

z C ỈCN VN

z CN ỈDN z VN ỈĐgN

z ĐgN ỈĐgT DN

z DN ÆDT TT

3

Văn phm

z Một văn phạm sản sinh một hệ thống z G = ( T, N, S, R ), đó

z T (terminal) – tập ký hiệu kết thúc

z N (non terminal) – tập ký hiệu không kết thúc z S (start) – ký hiệu khởi đầu

z R (rule) – tập luật

z R = { αỈβ| α, β ∈(T∪N) } z αỈβgọi luật sản xuất

4

Dng chun Chomsky

z Mọi NNPNC khơng chứa εđều có thể sinh từ một văn phạm tnđó mọi sản xuất đều có dạng A ỈBC hoặc A Ỉa, với A,B,C∈N a ∈T

∈T

z Ví dụ: Tìm dạng chuẩn Chomsky cho văn phạm G với T = {a,b}, N ={S,A,B}, R như sau:

z S ỈbA|aB

z A ỈbAA|aS|a

z B ỈaBB|bS|b

5

Nhc li v văn phm

z Văn phạm: tập luật viết lại

z Ký hiệu kết thúc: ký hiệu phân rã

nữa

z Ký hiệu không kết thúc: ký hiệu phân rã

Xét ă h G

6 z Xét văn phạm G:

S →NP VP NP →John, garbage VP →laughed, walks G sinh câu sau:

(2)

Cu trúc ng pháp

Cây cú pháp biểu diễn cấu trúc ngữ pháp câu Bò vàng gặm cỏ non

C

CN VN

7

DT

Bò ĐgặgTm

DT

cỏ nonTT

TT

vàng

DN ĐgN

DN

Các ng dng ca PTCP

ƒ Dịch máy (Alshawi 1996, Wu 1997, )

tiếng Anh tiếng Việt

các thao tác với

8 ƒ Nhận dạng tiếng nói sử dụng PTCP (Chelba et al 1998)

Put the file in the folder Put the file andthe folder

Các ng dng ca PTCP

ƒ Kiểm tra ngữ pháp (Microsoft) ƒ Trích rút thơng tin (Hobbs 1996)

9

Kho văn NY Times

CSDL câu truy vấn

Văn phm phi ng cnh (Context-Free Grammar)

… gọi văn phạm cấu trúc đoạn

z G = <T,N,P,S,R>

z T – tập ký hiệu kết thúc (terminals)

z N - tập ký hiệu không kết thúc (non-terminals) z P – ký hiệu tiền kết thúc (preterminals), viết lại trở

thành ký hiệu kết thúc P⊂N

10 thành ký hiệu kết thúc, P ⊂N

z S – ký hiệu bắt đầu

z R: X → γ, X ký hiệu không kết thúc; γlà chuỗi

ký hiệu kết thúc khơng kết thúc (có thể rỗng)

z Văn phạm G sinh ngôn ngữ L z Bộ nhận dạng: trả vềyeshoặc no z Bộ PTCP: trả tập cú pháp

So với văn phạm cảm ngữ cảnh R: αAγ ⇒ αβγ

z Văn phạm ngữ cấu: z α→β, với α ∈V+ , β ∈V*

z Văn phạm cảm ngữ cảnh:

z r = α→β, với α ∈V+ , β ∈V* , ⏐α⏐≤⏐β⏐

z α1Aα2→α1β’α2 với β’≠ε

z Văn phạm phi ngữ cảnh:

z A → θ, A ∈N,

ớiθ V* ( T N )*

11

z với θ ∈V*= ( T ∪N )*

z Văn phạm qui:

z A →aB,

z A →Ba,

z A →a,

với A, B ∈N, a ∈T

VPCQ VPPNC

VPCNC VPNC

Văn phm phi ng cnh

(3)

Áp dụng tập luật ngữ pháp

z S

→NP VP

→DT NNS VBD

The children slept

13 p

z S

→NP VP

→DT NNS VBD NP

→DT NNS VBD DT NN

The children ate the cake

Cấu trúc đoạn đệ qui

14

Văn phạm cho ngôn ngữ tự nhiên có nhập nhằng

S

NP VP

Nhập nhằng - PP

có thểgắn điểm (với VP với NP)

John saw snow on the campus

15 NP

0 John VP

PP NP 1 saw NP

2 snow

3 on

4 the campus 6

PTCP kiu xung

z Hướng đích

z Khởi đầu với danh sách ký hiệu cần triển khai (S,

NP,VP,…)

z Viết lại đích tập đích cách: S NP VP

……

16

z tìm luật có vế trái trùng với đích cần triển khai

z triểu khai với vế phải luật, tìm cách khớp với câu đầu vào

z Nếu đích có nhiều cách viết lại Ỉchọn luật để áp

dụng (bài tốn tìm kiếm)

z Có thể sử dụng tìm kiếm rộng (breadth-first search)

tìm kiếm sâu (depth-first search)

Khó khăn với PTCP xuống

z Các luật đệ qui trái

z PTCP xuống bất lợi có nhiều luật có vế trái

S→NP X1 S→NP X2 …… S→NP X600 S→VP Y1

17

z Nhiều thao tác thừa: triển khai tất nút phân tích

xuống

z PTCP xuống làm việc tốt có chiến lược điều khiển ngữ pháp phù hợp

z PTCP xuống triển khai ký hiệu tiền kết thúc

thành ký hiệu kết thúc Trên thực tế, người ta thường sử dụng phương pháp lên để làm việc

z Lặp lại cơng việc: chỗ có cấu trúc giống

PTCP dưới lên

z Hướng liệu

z Khởi tạo với xâu cần phân tích

z Nếu chuỗi tập đích phù hợp với vế phải luật

→thay vếtrái luật

…… S NP VP

18 →thay vế trái luật

z Kết thúc tập đích = {S}

z Nếu vế phải luật khớp với nhiều luật tập đích, cần lựa chọn luật áp dụng (bài tốn tìm kiếm)

z Có thể sử dụng tìm kiếm rộng (breadth-first search)

(4)

Khó khăn với PTCP dưới lên

z Không hiệu có nhiều nhập nhằng mức

từ vựng

z Lặp lại cơng việc: có cấu trúc

chung

19

chung

z Cả PTCP TD (LL) BU (LR) có độ phức

tạp hàm mũ độ dài câu

Thut toán CKY (b nhn dng)

ƒ Vào:xâu n từ ƒ Ra:yes/no

ƒ Cấu trúc ngữ pháp: bảng n x n (chart table)

20

g p p g ( )

ƒ hàng đánh số đến n-1 ƒ cột đánh số đến n

ƒ cell [i,j] liệt kê tất nhãn cú pháp i j

Thut toán CKY (bottom-up)

ƒ fori := to n

ƒ Thêm tất từ loại từ thứ i vào ô [i-1,i] ƒ forwidth := to n

ƒ forstart := to n-width

end := start + width

21

ƒ end := start + width ƒ formid := start+1 to end-1

ƒ formọi nhãn cú pháp X [start,mid]

ƒ formọi nhãn cú pháp Y [mid,end]

ƒ formọi cách kết hợp X Y (nếu có)

ƒ Thêm nhãn kết vào [start,end] chưa có nhãn

Ví d

Bò vàng gặm cỏ non

1

0 DT

CN DN

C

22

1

TT

ĐgT

VN

ĐgN

DT DN

4

TT

Văn phm phi ng cnh

1 Start→S S → NP VP NP → Det Noun

4 NP →Name

9 V →ate

10 Name →John

11 Name →ice-cream, snow 12 Noun →ice-cream, pizza

23

5 NP → Name PP PP → Prep NP

7 VP →V NP

8 VP →V NP PP

13 Noun →table, guy, campus 14 Det → the

15 Prep → on

Lut kết hp

z Ơ Cell[i,j] chứa nhãn X nếu

z Có luật X→YZ;

z Cell[i,k] chứa nhãn Y ô Cell[k,j] chứa nhãn Z,

24

với k nằm i j;

(5)

CKY phi s dng lut nh

phân

z Chuyển VP→V NP PP thành:

8.a VP→V Arguments

8 b Arguments→ NP PP

25

8.b Arguments → NP PP

CKY chart

1

0 DT

1 NN

2 VBD

“ The guy ate the ice-cream on the table”

26

2 VBD

3 DT

4 NN

5 IN

6 DT

7 NN

Áp dng thao tác ‘dán’

1

0 DT NP

1 NN

27

2 VBD

3 DT

4 NN

5 IN

6 DT

7 NN

Nhp nhng!

1

0 DT NP S

1 NN

2 VBD VP

5 NP → NN PP 8.a VP→V Arguments 8.b Arguments → NP PP

28

3 DT NP NP,

Args

4 NN

5 IN PP

6 DT NP

7 NN

Thut toán Earley (top-down)

z Tìm nhãn nhãn thiếu (partial constituents) từ đầu vào

z A →B C D E nhãn thiếu:

A + D = A

29

z Tiến hành dần từ trái sang phải

B C D E

A →B C D E

B C D E

A →B C D E

Ví d

ROOT →S NP→Papa

S →NP VP N →caviar

NP →Det N N →spoon

30

NP →NP PP V →ate

VP →VP PP P →with

VP →V NP Det →the

(6)

Recursive Descent (Đệ quy)

z 0ROOT →.S z 0S → NP VP

ROOT →S VP →VP PP NP→Papa V →ate S →NP VP VP →V NP N →caviar P →with NP →Det N PP →P NP N →spoon Det→the NP →NP PP Det→a Papa ate the caviar with a spoon

31

z 0NP → Papa z 0NP →Papa 1

z 0S →NP VP

Root S VP

NP

VP Papa ROOT→S S →NP VP NP →Papa

VP Papa

Goal stack

Recursive Descent

z 0S →NP VP

z 1VP → VP PP

ROOT →S VP →VP PP NP→Papa V →ate S →NP VP VP →V NP N →caviar P →with NP →Det N PP →P NP N →spoon Det→the NP →NP PP Det→a Papa ate the caviar with a spoon

32

ƒ 1VP → VP PP ƒ 1VP → VP PP

1VP → VP PP stack overflowed

VP→VP PP VP→VP PP

PP VP PP VP PP PP VP PP PP VP→VP PP

VP PP

PP PP VP→VP PP

Recursive Descent

ROOT →S VP →V NP NP→Papa V →ate S →NP VP VP →VP PP N →caviar P →with NP →Det N PP →P NP N →spoon Det→the NP →NP PP Det→a

0 Papa ate the caviar with a spoon

ƒ 0ROOT →.S

ƒ 0S → NP VP NP P

33

z 1VP → V NP sau = nonterminal, lặp lặp lại việc tìm ký hiệu (“predict”) ƒ 1V →.ate sau = terminal, tìm ởđầu vào (“scan”)

ƒ 1V →ate 2 sau = rỗng, đích cha hồn chỉnh (“attach”)

z 1VP →V NP predict (đích tiếp theo)

ƒ 2NP → 2 phân tích tiếp cuối …

ƒ 2NP → 7 we hoàn thành đích NP cha Ỉattach

z 1VP →V NP .7 attach z 0S →NP VP .7 attach

ƒ0NP → Papa

ƒ0NP →Papa 1

ƒ 0S →NP VP

Recursive Descent

z 0ROOT →.S

z 0S → NP VP

z 0NP → Papa

ROOT →S VP →V NP NP→Papa V →ate S →NP VP VP →VP PP N →caviar P →with NP →Det N PP →P NP N →spoon Det→the NP →NP PP Det→a

0 Papa ate the caviar with a spoon

thực lời gọi hàm:

S() gọi NP() VP(), VPđược triển khai

34 p

z 0NP →Papa 1 z 0S →NP VP

z 1VP → V NP ƒ 1V →.ate ƒ 1V →ate 2

z 1VP →V NP ƒ 2NP → 2 ƒ 2NP → 7

z 1VP →V NP .7 z 0S →NP VP .7

cần quay lại để thử luật VP khác S() gọi NP() VP(), VP triển khai cách đệ qui

Recursive Descent

ROOT →S VP →V NP NP→Papa V →ate S →NP VP VP →VP PP N →caviar P →with NP →Det N PP →P NP N →spoon Det→the NP →NP PP Det→a

0 Papa ate the caviar with a spoon

ƒ 0ROOT →.S

ƒ 0S → NP VP

ƒ0NP → Papa

35

ƒ 1VP →.V NP ƒ V →.ate ƒ 1V →ate 2 ƒ 1VP →V NP

ƒ 2NP → 2 phân tích tiếp cuối cùng…

ƒ 2NP → đoạn NP từ2 đến

chỗ cần quay lại

0NP → Papa

ƒ0NP →Papa 1

ƒ 0S →NP VP

ƒ1VP → VP PP

Recursive Descent

ROOT →S VP →V NP NP→Papa V →ate S →NP VP VP →VP PP N →caviar P →with NP →Det N PP →P NP N →spoon Det→the NP →NP PP Det→a

0 Papa ate the caviar with a spoon

ƒ 0ROOT →.S

ƒ 0S → NP VP NP P

36

ƒ 1VP →.VP PP 1VP →.VP PP

1VP →.VP PP stack overflowed

khơng giải

– cần thay đổi tập luật đểloại trừđệqui trái

ƒ0NP → Papa

ƒ0NP →Papa 1

ƒ 0S →NP VP

ƒ1VP → VP PP

(7)

Thuật toán Earley

z Thuật tốn Earley giống thuật tốn đệ qui nói trên, giải vấn đềđệ qui trái

z Sử dụng bảng phân tích giống thuật tốn CKY, nhằm lưu lại thơng tin tìm thấy Ỉlập trình động “Dynamic programming.”

Các thao tác thuật toán

37 z Xử lý phần sau dấu theo kiểu đệ qui :

z Nếu từ, quét (scan)đầu vào để xem có phù hợp khơng z Nếu ký hiệu khơng kết thúc, đốn (predict) khả để

khớp (giảm số phép tiên đốn cách nhìn trước k ký hiệu từ đầu vào sử dụng luật phù hợp với k ký hiệu đó)

z Nếu rỗng, ta hồn thành thành phần ngữ pháp, gắn (attach) vào chỗ liên quan

0

0 ROOT S

khởi tạo

tương đương với (0, ROOT → S)

38

0

0 ROOT S

0 S NP VP

predictluật có vế trái S

(0, S → NP VP)

39

0 ROOT S

0 S NP VP

0 NP Det N NP NP PP NP Papa

predictluật có VT = NP (có luật phù hợp)

40

0 ROOT S S NP VP

0 NP Det N

0 NP NP PP NP Papa D t th

predictluật có VT = Det (2 luật)

41 Det the

0 Det a

0 ROOT S S NP VP NP Det N

0 NP NP PP

0 NP Papa D t th

predictluật có VT = NP

ta làm việc bước trước, không làm lại! Chú ý: ta phải làm lại việc với luậtđệqui trái

42 Det the

0 Det a

Ngày đăng: 09/03/2021, 05:54

Từ khóa liên quan

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan