3.2 Công cụ TuLiPA
3.2.3 Chuyển đổi kết quả phân tích cú pháp RCG sang TAG
Kết quả của q trình phân tích cú pháp RCG là một tập các dẫn xuất (rừng dẫn xuất) cho biết các quy tắc văn phạm (các mệnh đề RCG) và cách thức kết hợp các quy tắc trong quá trình phân tích cú pháp. Việc chuyển đổi các dẫn xuất trong văn phạm RCG sang dẫn xuất TAG tương ứng có thể được thực hiện bằng cách giải nghĩa tên các vị từ của các mệnh đề sử dụng trong q trình dẫn xuất.
Ví dụ: Dưới đây là dẫn xuất RCG thu được từ q trình phân tích cú pháp trong bảng 3.3 và cây dẫn xuất TAG tương ứng, trong đó, các cây khởi tạo α1, α2, cây phụ trợ β thể hiện trong hình 3.2:
S(X)→ hα1i(X)
hα1i(aB1B2F)→ hβi(B1, B2)hα2i(F)
hβi(b, c)→ǫ hα2i(d)→ǫ
⇐⇒ α1
β α2
Tính tốn ngữ nghĩa TAG
Thông tin ngữ nghĩa trong TAG được thể hiện dựa trên các cấu trúc đặc trưng. Trong quá trình chuyển đổi kết quả phân tích cú pháp RCG sang dẫn xuất TAG, cây cú pháp TAG từng bước được xây dựng. Cùng với đó, q trình hợp nhất đặc trưng trên các nút của các cây cơ bản TAG cũng được thực hiện thông qua các phép thế và kết nối cho phép ràng buộc chỉ sinh ra các cây phân tích hợp lệ cùng với cơng thức biểu diễn ngữ nghĩa bậc một tương ứng.
Một trong những khó khăn khi xây dựng biểu diễn ngữ nghĩa bậc một cho văn phạm TAG tiếng Việt là hiện tượng nhập nhằng ngữ nghĩa, tức là, tồn tại các câu với một kết quả phân tích cú pháp, nhưng có thể hiểu theo nhiều nghĩa. Ví dụ: Xét câu: “Every man loves a woman”. Về mặt cú pháp, câu trên có thành phần trung tâm là vị từ “loves”, với các tham tố là các danh ngữ “Every man” và “a woman”. Về mặt ngữ nghĩa, động từ trung tâm “loves” tương ứng với một vị từ logic có hai đối, quán từ “a” tương ứng với lượng từ tồn tại ∃, “every” tương ứng với lượng từ với mọi ∀. Tuy nhiên, ở đây có một sự nhập nhằng về phạm vi của các lượng từ dẫn tới câu trên có hai cách biểu diễn ngữ nghĩa tương ứng với hai cách hiểu:
1. Mọi người đàn ông đều yêu cùng một người phụ nữ ∃y(W OMAN(y)∧ ∀x(MAN(x) → LOV E(x, y))).
2. Mỗi người đàn ông đều yêu một người phụ nữ nào đó ∀x(MAN(x) → ∃y(W OMAN(y)∧LOV E(x, y)))
Vấn đề đặt ra là làm thế nào để sinh ra tất cả các biểu diễn ngữ nghĩa cho các câu có hiện tượng nhập nhằng. Để giải quyết khó khăn này, mỗi cây cơ bản TAG trong hệ thống TuLiPA được gắn với một công thức ngữ nghĩa dưới đặc tả cho phép diễn đạt các thông tin ngữ nghĩa chưa xác định hoàn toàn do các hiện tượng nhập nhằng. Một trong các mơ hình biểu diễn dưới đặc tả là ngữ nghĩa lỗ hổng [19]. Trong đó, biểu diễn dưới đặc tả được xây dựng nguyên tắc sau: Với mỗi công thức φ, ta gán một nhãn l, các nhãn được sử dụng như các hằng. Phạm vi chưa biết của các toán tử logic được gọi là lỗ hổng (hole), biểu diễn bởi một biếnh. Khi đó ta có một tập các ràng buộc cho biết quan hệ giữa các công
thức logic về mặt phạm vi đối với các toán tử. Mỗi biến hoặc hằng k nếu nằm trong phạm vi của mỗi toán tử là biến hoặc hằng k′ ta có ràng buộc k ≤ k′. Mỗi phép gán giá trị các biến (lỗ hổng) bằng cách hằng (nhãn công thức) thỏa mãn các ràng buộc sẽ cho ta công thức logic tương ứng. Nội dung dưới đây sẽ tập trung trình bày ngơn ngữ biểu diễn ngữ nghĩa LU [12] được xây dựng dựa trên cơ sở mở rộng của ngữ nghĩa lỗ hổng cho phép xây dựng biểu diễn ngữ nghĩa cho văn phạm TAG.
Gọi H là tập các biến lỗ hổng, Lc là tập các hằng nhãn công thức, Lv là tập các biến nhãn công thức. Gọi Ic (tương ứng Iv) là tập các hằng (tương ứng là
các biến) đối tượng, R là tập các quan hệ n ngôi trênIc∪Iv∪H, và ≤ là quan hệ trên H ∪Lc gọi là quan hệ có phạm vi trên. Ta có các định nghĩa:
Định nghĩa 3.2.1. (Ngơn ngữ LU)
Cho l ∈Lc∪Lv, h ∈ H, i1, ..., in ∈Iv ∪Ic ∪H, Rn ∈R, khi đó: • l :Rn(i1, ..., in) là một cơng thức LU
• l ≤h là một cơng thức LU
• φ, ψ là một cơng thức LU nếu và chỉ nếu cả φ và ψ là các công thức LU • Chỉ có các cơng thức như trên là các công thức LU
Định nghĩa 3.2.2. (Mối quan hệ ≤φ trên Lφ∪Hφ)
Cho φ ∈LU. Khi đó, với mọi k, k′, k′′ ∈Lφ ∪Hφ: 1. k ≤φ k
2. k′ ≤φ k nếu k′ ≤k nằm trong φ 3. k′′≤φ k nếu k′′ ≤φ k′ và k′≤φ k
4. Nếu ∃k :τ nằm trong φ vàk′ xuất hiện trong τ thì k′ ≤φ k và k φ k′
5. Nếu k và k′ là các đối số khác nhau của cơng thức Rn trong φ (nói cách khác, tồn tại Rn(..., k, ..., k′, ...) trong φ) thì k′ φ k và k φ k′
Định nghĩa 3.2.3. (Phép gán cho φ)
Cho P là một ánh xạ từ Hφ sang Lφ và φ′ là kết quả thay thế mọi k ∈ Hφ trong φ bởi P(k). Khi đó P được gọi là một phép gán có thể cho φ khi và chỉ khi ∀k, k′∈ Lφ: Nếu k′≤φ k thì hoặc k =k′ hoặc k k′
Cho trước tập các công thức LU biểu diễn ngữ nghĩa của một câu, khi đó, tập các phép gán có thể cho ta các cơng thức logic bậc một tương ứng.
Ví dụ:Tập cơng thứcLU biểu diễn câu tiếng Anh “Every man loves a woman” trình bày trong ví dụ trên như sau:
{l0 :∀(x, h1, h2), l1 :MAN(x), l2 : LOV E(x, y), l3 :∃(y, h3, h4),
l4 : W OMAN(y), l1 ≤h1, l2 ≤ h2, l4 ≤h3, l2 ≤ h4}.
Từ đó, ta tìm được hai cách gán giá trị có thể là P1 và P2: P1 :h1 = l1, h2 =l3, h3 =l4, h4 =l2
P2 :h1 = l1, h2 =l2, h3 =l4, h4 =l0
Cách gán P1 cho chúng ta công thức ∀x(MAN(x) → ∃y(W OMAN(y) ∧ LOV E(x, y))), cách gán P2 cho công thức ∃y(W OMAN(y)∧ ∀x(MAN(x) → LOV E(x, y))), tương ứng với hai cách hiểu trong thực tế.
Sử dụng ngơn ngữ LU, thành phần ngữ nghĩa được tích hợp vào thành phần cú pháp như sau: Mỗi cây cơ bản TAG được gắn với một công thức LU biểu diễn nghĩa của nó. Các cơng thức này chứa các biến hợp nhất là giá trị của các đặc trưng xuất hiện trong cây cơ bản tương ứng. Khi thực hiện dẫn xuất, cây kết quả có ngữ nghĩa được tính là hợp nhất ngữ nghĩa của các cây cơ bản.
Ví dụ: Quá trình xây dựng biểu diễn ngữ nghĩa của câu “every man loves a woman” sử dụng cho công cụ TuLiPA được thể hiện trong hình 3.5. Chúng ta
có 6 cây cơ bản từ vựng hóa với 6 từ neo tương ứng là “every”, “man”, “loves”, “a”, “woman”, với các công thức LU gắn với từng cây. Quá trình dẫn xuất để hình thành cây cú pháp biểu diễn câu “every man loves a woman” như sau:
• Cây gắn với từ neo “every” kết nối vào cây có từ neo “man” thu được: x≡ x′, l1 ≡l′
1 do đó ta có l0: every(x, h1, h2), l1: man(x), l1 ≤ h1, l2 ≤h2 • Cây gắn với chuỗi từ neo “every man” có được từ bước trước tiếp tục thế
S NP↓[idx:i,lab1=l′2] NP[idx:x[lab=l′′1]] man l′ 1: man(x′) NP[idx:x,lab1=l2][lab=l0] det every l0:every(x, h1, h2),l1≤h1, l2≤h2 NP[lab:l1]* VP loves l′ 2:love(i, j) NP↓[idx:j,lab1=l′2] NP[idx:y[lab=l′′4]] woman l′ 4:woman(y′) NP[idx:y,lab1=l2][lab=l3] det a l3: a(y, h3, h4),l4≤h3,l2≤h4 NP[lab:l4]*
Hình 3.5: Giao diện cú pháp ngữ nghĩa biểu diễn câu: “every man loves a woman”
x≡ i, l2 ≡l′
2 ⇒l0:every(x, h1, h2),l1:man(x),l2:love(x, j),l1 ≤ h1, l2 ≤h2 • Tương tự, cây với từ neo “a” được kết nối vào cây với từ neo “man”, sau
đó, cây kết quả thu được tiếp tục thế vào cây với từ neo “loves”: y ≡ y′ ≡ j, l2 ≡ l′
2, l4 ≡ l′
4 ⇒ l2: love(x, y), l3: a(y, h3, h4), l4: woman(y), l2 ≤ h4, l4 ≤ h3
Vậy, tập các công thức LU biểu diễn câu “every man loves a woman” như sau: l0: every(x, h1, h2), l1: man(x), l2: love(x, y), l3: a(y, h3, h4), l4: woman(y), l1 ≤ h1, l2 ≤ h2, l2 ≤ h4, l4 ≤ h3. Với hai cách gán giá trị đã trình bày trong ví dụ trước, ta có biểu diễn ngữ nghĩa cuối cùng thu được cho câu “every man loves a woman” sử dụng cơng cụ TuLiPA:
• and(every(x, man(x), a(y, woman(y), love(x, y))))
• and(a(y, woman(y), every(x, man(x), love(x, y))))
Tồn bộ nội dung của chương này đã trình bày chi tiết về q trình phân tích cú pháp - ngữ nghĩa sử dụng cơng cụ TuLiPA với các ví dụ cụ thể cho các câu tiếng Anh. Trong chương tiếp theo, luận văn tiến hành thực nghiệm sử dụng cơng cụ TuLiPA cho phân tích cú pháp - ngữ nghĩa cho tiếng Việt.
Chương 4
Xây dựng dữ liệu cho phân tích cú pháp - ngữ nghĩa tiếng Việt
Việc xây dựng dữ liệu cho phân tích cú pháp văn phạm TAG tiếng Việt đã được nghiên cứu từ nhiều năm. Trong cơng trình [4], các tác giả đã đưa ra thuật tốn chi tiết cho phép trích rút tự động văn phạm LTAG từ kho văn bản có chú giải cú pháp (VietTreeBank) và thử nghiệm phân tích cú pháp với bộ văn phạm được trích rút này. Khi trích rút tự động văn phạm TAG từ VietTreeBank với 10 nghìn câu tiếng Việt, các tác giả đã thu được khoảng 740 mẫu cây khởi tạo và hơn 900 mẫu cây phụ trợ. Trong phần này, luận văn tập trung nghiên cứu cấu trúc danh ngữ, động ngữ và tính ngữ tiếng Việt theo nghiên cứu của tác giả Nguyễn Tài Cẩn (1998) [6] và các tài liệu [1], [30], từ đó bổ sung thơng tin cú pháp, ngữ nghĩa cho mỗi mục từ trong từ điển VCL hướng tới xây dựng một từ điển mở rộng phục vụ cho hệ thống phân tích cú pháp - ngữ nghĩa văn phạm TAG.
4.1 Bổ sung thông tin cho cấu trúc danh ngữ, động ngữ, tính ngữ tiếng Việt