Bài giảng Xử lý ngôn ngữ tự nhiên: Phân tích ngữ nghĩa trình bày các nội dung: Tại sao cần phân tích ngữ nghĩa, một số khái niệm cơ bản về logic, cách biểu diễn vị từ, các thuộc tính về sự kiện,... Mời các bạn cùng tham khảo nội dung chi tiết.
Tại cần phân tích ngữ nghĩa Phân tích ngữ nghĩa z z z Lê Thanh Hương g Bộ môn Hệ thống Thông tin Viện CNTT &TT – Trường ĐHBKHN Email: huonglt-fit@mail.hut.edu.vn trả lời cho điểm đọc hiểu đọc thực đơn đặt ăn đọc hướng dẫn sử dụng để hiểu cách sử d dụng Thế coi hiểu? Thế coi hiểu? z z z z VD: “cho tất đồ chơi vào giỏ” z z … xác định phát biểu hay sai z … sử dụng nội dung để trả lời câu hỏi z … phản ứng phù hợp hiểu NP nghĩa xác định NP đề cập đến Dễ: Mai ăn kẹo Ỉ Mai ăn gì? Khó: Nước qn trắng P-Q4 Ỉ Qn đen chiếu tướng khơng? … dịch: phụ thuộc vào ngơn ngữ đích z Anh – Anh? Anh – Pháp? z Anh – logic ? z z z cần hiểu sâu tất loài cá biết bơi = ∀x [fish(x) ⇒can_swim(x)] Một số khái niệm logic Logic: thuật ngữ Lambda loại đối tượng bản: z Giá trị - Booleans z λ: z giá trị ngữ nghĩa câu z Thực thể - Entities z z Giá trị NP NP, vd vd., đối tượng bàn bàn, ghế ghế, thời gian z Hàm z z z cách để viết hàm “bất kỳ” z Hàm trả giá trị nhị phân gọi vị từ (predicate) Vd., frog(x), green(x) Hàm trả hàm khác Hàm nhận hàm khác tham số z Khơng có tên hàm Được dùng để định nghĩa tính chất hàm Cho square = λp p*p Tương đương với int square(p) { return p*p; } Định dạng: λ CuuDuongThanCong.com https://fb.com/tailieudientucntt Logic: thuật ngữ Lambda Logic: Một số vị từ λ: z z z z z z z z z z Cho square = λp p*p Khi square(3) = (λp p*p)(3) = 3*3 Chú ý: square(x) hàm, giá trị x*x Hàm: λx square(x) = λx x*x x x = λp p*p p p = square most – vị từ vị từ khác z most(pig, big) = “most pigs are big” z trả true đa số giá trị thỏa vị từ thỏa vị từ thứ z Cho even = λp (p mod == 0) vị từ trả giá trị True/False even(x) = true x chẵn Còn even(square(x))? λx even(square(x)) = true với số x có square(x) chẵn z λx (even(x*x)) = λx (x*x mod == 0) z tương đương với, most(λx pig(x), λx big(x)) tương tự: z z all(pig,big) exists(pig,big) (tương đương với ∀x pig(x) ⇒ big(x)) (tương đương với ∃x pig(x) AND big(x)) Cách biểu diễn vị từ Sử dụng lượng từ Gilly swallowed a goldfish z z z goldfish tên đối tượng Gilly z Vấn đề Gilly swallowed a goldfish z swallowed(Gilly, goldfish) z swallowed(Gilly, goldfish) Tốt hơn: ∃g goldfish(g) AND swallowed(Gilly, g) Hoặc sử dụng vị từ lượng từ: z z z Gilly swallowed a goldfish and Milly swallowed a goldfish z chuyển thành: exists(λg goldfish(g), λg swallowed(Gilly,g)) tương đương: exists(goldfish, swallowed(Gilly)) z “trong tập cá có cá bị nuốt Gilly” swallowed(Gilly, goldfish) AND swallowed(Milly, goldfish) goldfish … 10 Thời z Gilly swallowed a goldfish z z Các thuộc tính kiện z exists(goldfish, λg swallowed(Gilly,g)) z Cải tiến: Một phát biểu có thuộc tính khác nữa: z z swallowed(Gilly,g) chuyển thành swallow(t,Gilly,g), t thời gian i ∃t past(t) AND exists(λg goldfish(g), λg swallow(t,Gilly,g)) z “Có lúc khứ, cá vật bị Gilly nuốt” z Gilly swallowed a goldfish z ∃t past(t) AND exists(goldfish, swallow(t,Gilly)) z z [Gilly] swallowed [a goldfish] [on a dare] [in a telephone booth] [with 30 other freshmen] [after many bottles of vodka had been consumed] consumed] xác định ai? làm gì? sao? nào? (who what why when) Thay biến thời gian t với biến kiện e z ∃e past(e), act(e,swallowing), swallower(e,Gilly), exists(goldfish, swallowee(e)), exists(booth, location(e)), … z Có thể biểu diễn khứ λe ∃t before(t,now), ended-at(e,t) 11 12 CuuDuongThanCong.com https://fb.com/tailieudientucntt Trật tự lượng từ z Phân tích ngữ nghĩa câu Ví dụ z In this country a woman gives birth every 15 Our job is to find that woman and stop her z z Phân tích cú pháp Tìm ngữ nghĩa từ Xác định ngữ nghĩa cho thành phần ngữ pháp, thực từ lên ∃woman (∀15min gives gives-birth-during(woman, birth during(woman 15min)) ∀15min (∃woman gives-birth-during(15min, woman)) 13 Ngữ nghĩa thành phần assert(every(nation, λx ∃e present(e), act(e,wanting), wanter(e,x), wantee(e, λe’ act(e’,loving), Sfin lover(e’,G), lovee(e’,L)))) D t Det Every every N nation nation λv λx ∃e present(e),v(x)(e) Ngữ nghĩa thành phần START NP VPfin T -s z z z z VPstem Vstem want Sinf z z Thay S → NP loves NP z S[sem=loves(x,y)] → NP[sem=x] loves NP[sem=y] Luật tổng quát S → NP VP: z V[sem=loves] → loves z VP[sem=v(obj)] → V[sem=v] NP[sem=obj] z S[sem=vp(subj)] → NP[sem=subj] VP[sem=vp] z z TAG version: l ( ) S loves(x,y) x VP NP V loves NP y Điền mẫu: S[sem=showflights(x,y)] → I want a flight from NP[sem=x] to NP[sem=y] 16 START assert(loves(L,G)) loves(L,G) có sem=loves(Laura)(George) Trong phần này, ta: z S[sem=loves(x,y)] → NP[sem=x] loves NP[sem=y] Nghĩa S phụ thuộc vào nghĩa NP Muốn diễn đạt G loves L George loves Laura z S → NP loves NP Ngữ nghĩa thành phần Ngữ nghĩa thành phần z Thêm thuộc tính “sem” cho luật phi ngữ cảnh z Punc λs assert(s) NP VPinf George λy λx λe act(e,wanting), G VPstem T wanter(e,x), wantee(e,y) λa a to NP Vstem λy λx λe act(e,loving), love Laura 15 L lover(e,x), lovee(e,y) z 14 NP George G Sfin Punc λs assert(s) VPfin λy loves(L,y) Vpres AdjP loves Laura loves = L λx λy loves(x,y) tính ngữ nghĩa từ lên Ngữ pháp dạng chuẩn Chomsky Mỗi nút có con: hàm tham số Để lấy ngữ nghĩa nút, áp dụng hàm vào tham số 17 18 CuuDuongThanCong.com https://fb.com/tailieudientucntt Cách biểu diễn ngữ nghĩa Ngữ nghĩa thành phần loves(L,G) z START ∃e present(e), act(e,loving), lover(e,G), lovee(e,L) z Sfin Punc NP George G VPfin λy ∃e present(e), act(e,loving), λy loves(L,y) lover(e,y), lovee(e,L) z z Sử dụng “Event” (EVENT :condition1 val1 :condition2 val2… :condn valn) Ví dụ: ụ (see :agent John :patient Mary :tense past) Vpres AdjP loves Laura loves = L λx λy loves(x,y) λx λy ∃e present(e), act(e,loving), lover(e,y), lovee(e,x) 19 20 Luật cú pháp/ngữ nghĩa Ý nghĩa câu Thành phần/luật Verb ate N V S NP VP z Dịch nghĩa λxλy.ate(y, x) N V S*= VP*(NP*) N* V*(NP*) z z z λ form ứng với VP gắn với λ form với NP Từ giá trị Cho cú pháp, phân tích từ lên để có ngữ nghĩa câu ate(John, ice-cream) ice cream) Vị từ đánh giá dựa CSDL để trả giá trị T/F 21 Dịch ngữ nghĩa Ví dụ z S (IP) VP(NP )= ate (john , icecream ) john Phân tích ngữ nghĩa câu sau: z Tơi biết Tâm gặp An λy ate (y, (y iceice VP V(NP )= λy.ate cream ) NP John 22 V λxλy.ate(y , x) ate NP ice-cream ice-cream 23 24 CuuDuongThanCong.com https://fb.com/tailieudientucntt Ví dụ (top-level) Shall I clear the database? (y or n) y >John saw Mary in the park OK >Where did John see Mary IN THE PARK >John gave Fido to Mary OK >Who gave John Fido I DON'T KNOW >Who gave Mary Fido JOHN >John saw Fido OK >Who did John see FIDO AND MARY Cách thực z z z λ mức cao gọi đến VP Giá trị VP xác định mức cách sử dụng tham số NP Nói cách khác, để tìm ý nghĩa câu, ta gọi VP sử dụng tham số NP T i nút Tại út lá, ỗi từ ũ kè kèm th them ột số ố thông thô titin ngữ nghĩa 25 26 CuuDuongThanCong.com https://fb.com/tailieudientucntt ... z z Phân tích cú pháp Tìm ngữ nghĩa từ Xác định ngữ nghĩa cho thành phần ngữ pháp, thực từ lên ∃woman (∀15min gives gives-birth-during(woman, birth during(woman 15min)) ∀15min (∃woman gives-birth-during(15min,... tích từ lên để có ngữ nghĩa câu ate(John, ice-cream) ice cream) Vị từ đánh giá dựa CSDL để trả giá trị T/F 21 Dịch ngữ nghĩa Ví dụ z S (IP) VP(NP )= ate (john , icecream ) john Phân tích ngữ nghĩa. .. NP[sem=y] Nghĩa S phụ thuộc vào nghĩa NP Muốn diễn đạt G loves L George loves Laura z S → NP loves NP Ngữ nghĩa thành phần Ngữ nghĩa thành phần z Thêm thuộc tính “sem” cho luật phi ngữ cảnh z