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 quân trắng P-Q4 Æ Quân đ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: λ 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 Thay biến thời gian t với biến kiện e z 11 [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) ∃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) 12 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 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 NP John 22 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 ) V λxλy.ate(y , x) ate NP ice-cream ice-cream 23 24 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 25 λ 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 26 ... 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... 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,... 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 NP John 22 Phân tích ngữ