1. Trang chủ
  2. » Giáo Dục - Đào Tạo

VN KIM SEARCH TIẾNG ANH với TRUY vấn có LIÊN từ LUẬN lý, TÍNH từ và LƯỢNG từ

74 5 0

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

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 74
Dung lượng 814,91 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Nó cũng được chỉ ra là có một ánh xạ chặt với ngôn ngữ RDF.” [3] Sowa đã định nghĩa đồ thị ý niệm trong một bài báo của mình như sau: “Đồ thị ý niệm là một đồ thị hữu hạn, liên thông, k

Trang 1

ĐẠI HỌC QUỐC GIA TP HCM TRƯỜNG ĐẠI HỌC BÁCH KHOA KHOA KHOA HỌC & KỸ THUẬT MÁY TÍNH

-o0o -

LUẬN VĂN TỐT NGHIỆP ĐẠI HỌC

VN-KIM SEARCH TIẾNG ANH VỚI TRUY VẤN

CÓ LIÊN TỪ LUẬN LÝ, TÍNH TỪ VÀ LƯỢNG TỪ

Hội Đồng : Khoa Học Máy Tính 1 GVHD : Pgs.Ts Cao Hoàng Trụ GVPB : Ks Châu Kim Cường

-o0o - SVTH 1 : Nguyễn Trần Đăng Khoa

(50601130) SVTH 2 : Tạ Tất Tài

(50602084)

TP Hồ Chí Minh, tháng 12 – 2010

Trang 2

CÔNG TRÌNH ĐƯỢC HOÀN THÀNH TẠI TRƯỜNG ĐẠI HỌC BÁCH KHOA ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH

Cán bộ hướng dẫn khoa học : PGS.TS CAO HOÀNG TRỤ

Cán bộ chấm nhận xét 1 :

Cán bộ chấm nhận xét 2 :

Luận văn đại học được bảo vệ tại HỘI ĐỒNG CHẤM BẢO VỆ LUẬN VĂN ĐẠI HỌC TRƯỜNG ĐẠI HỌC BÁCH KHOA, ngày tháng năm

Trang 3

LỜI CAM ĐOAN

Chúng tôi cam đoan rằng ngoại trừ các kết quả tham khảo từ các công trình khác như đã ghi rõ trong luận văn, các công việc trình bày trong luận văn này là do chính chúng tôi thực hiện và chưa có phần nội dung nào của luận văn này được nộp để lấy một bằng cấp ở trường đại học nào khác

Ngày Tháng Năm

Ký tên

Trang 4

LỜI CẢM ƠN

Trước hết, chúng tôi xin gởi lời cảm ơn chân thành và sâu sắc đến Pgs.Ts Cao Hoàng Trụ, và

kỹ sư Châu Kim Cường, những người đã trực tiếp hướng dẫn chúng tôi trong quá trình làm luận văn này Sự hướng dẫn chu đáo, tận tình, cùng với những tài liệu và lời khuyên quý giá của thầy

và anh trong hơn 3 tháng qua là nhân tố không thể thiếu để chúng tôi có thể hoàn thành nhiệm vụ

Chúng tôi xin gửi lời cảm ơn đến gia đình và bạn bè, những người luôn sát cánh, động viên, và tạo mọi điều kiện tốt nhất để chúng tôi có thể học tập và hoàn tất được luận văn tốt nghiệp này

Chúng tôi chân thành biết ơn sự tận tình dạy dỗ và sự giúp đỡ của tất cả quý thầy cô khoa Khoa học và Kỹ thuật Máy tính trường Đại học Bách khoa

Luận văn này khó tránh khỏi còn thiếu sót do tầm nhìn của chúng tôi còn hạn hẹp, rất mong nhận được sự góp ý của quý thầy cô cùng các bạn

Trang 5

TÓM TẮT

Luận văn này xây dựng một hệ thống tìm kiếm dựa trên ngữ nghĩa Hệ thống có thể “hiểu”

được câu truy vấn đầu vào bằng tiếng Anh Câu truy vấn không chỉ chứa thực thể và từ quan hệ,

mà còn chứa tính từ, lượng từ, và liên từ luận lý

Để biên dịch câu truy vấn ngôn ngữ tự nhiên, luận văn này dựa trên nền tảng web ngữ nghĩa, kết hợp với phương pháp dịch ít phụ thuộc vào cú pháp của nhóm VN-KIM Để thể hiện nội dung biên dịch được, luận văn biểu diễn bằng đồ thị ý niệm Cuối cùng, câu truy vấn SeRQL được dùng để tìm kiếm kết quả Hướng tiếp cận này đã giúp đề tài xây dựng được một hệ thống trực quan với người sử dụng, và tráng kiện với lỗi cú pháp

Hiệu quả của hệ thống được đánh giá trên tập câu truy vấn mẫu “TREC 2002” Tỉ lệ số câu

hệ thống biên dịch thành công là 85.91%

Trang 6

MỤC LỤC

LỜI CAM ĐOAN ii

LỜI CẢM ƠN iii

TÓM TẮT .iv

MỤC LỤC v

DANH MỤC HÌNH viii

DANH MỤC BẢNG ix

CHƯƠNG 1 TỔNG QUAN 1

1.1 Giới thiệu 1

1.2 Mục tiêu phạm vi 3

1.3 Kết quả đạt được 5

1.4 Cấu trúc luận văn 6

CHƯƠNG 2 KIẾN THỨC NỀN TẢNG 7

2.1 Chú thích ngữ nghĩa và tìm kiếm ngữ nghĩa 7

2.1.1 Các khái niệm 7

2.1.2 Các phần mềm, công cụ sử dụng 8

2.2 Đồ thị ý niệm 10

2.2.1 Sơ lược về đồ thị ý niệm 10

2.2.2 Đồ thị ý niệm mở rộng 12

2.3 Tìm kiếm thực thể và tài liệu 13

2.3.1 Câu truy vấn SeRQL [8] 13

2.3.2 Semantic Lucene 14

CHƯƠNG 3 PHÂN TÍCH VẤN ĐỀ VÀ PHƯƠNG PHÁP GIẢI QUYẾT 16

3.1 Phương pháp chuyển đổi câu truy vấn sang đồ thị ý niệm 16

3.2 Xử lý câu truy vấn thông thường 17

3.3 Xử lý câu truy vấn có từ để hỏi là “How many” 19

Trang 7

3.4 Xử lý câu truy vấn có liên từ luận lý 21

3.5 Xử lý câu truy vấn có tính từ 22

3.6 Xử lý câu truy vấn có tính từ so sánh nhất 24

3.7 Xử lý câu truy vấn có tính từ định lượng so sánh hơn 25

CHƯƠNG 4 THIẾT KẾ 27

4.1 Kiến trúc toàn bộ hệ thống 27

4.2 Chi tiết các bước của giải thuật 29

4.2.1 Nhận biết các thành phần của câu truy vấn 29

4.2.2 Phân tách câu truy vấn 30

4.2.3 Xác định lớp của thực thể 30

4.2.4 Gom các thực thể 31

4.2.5 Xác định quan hệ ẩn 31

4.2.6 Xác định loại quan hệ giữa các thực thể 32

4.2.7 Xoá bỏ quan hệ không phù hợp 35

4.2.8 Xác định quan hệ giữa tính từ và thực thể 36

4.2.9 Xây dựng đồ thị ý niệm 39

4.2.10 Xây dựng câu truy vấn SeRQL 39

CHƯƠNG 5 HIỆN THỰC 40

5.1 Các khối xử lý và giao diện các lớp quan trọng 40

5.1.1 Ứng dụng web phía Client 40

5.1.2 Hệ thống xử lý trên server 40

5.2 Hệ thống luật 44

5.2.1 Cấu trúc của hệ thống luật 45

5.2.2 Cấu trúc thành phần điều kiện của luật 45

5.2.3 Cấu trúc thành phần hành động của luật 46

Trang 8

5.2.4 Xây dựng một số luật đặc biệt 47

5.3 Lưu trữ và hiển thị đồ thị 47

5.4 Xây dựng câu truy vấn SeRQL 49

CHƯƠNG 6 THỬ NGHIỆM 53

6.1 Môi trường thử nghiệm 53

6.2 Kết quả thực nghiệm 54

CHƯƠNG 7 KẾT LUẬN 57

7.1 Kết quả đạt được 57

7.2 Các vấn đề còn tồn tại 58

7.3 Hướng phát triển 58

TÀI LIỆU THAM KHẢO 59

PHỤ LỤC A: TẬP CÂU MẪU TREC 2002 60

Trang 9

DANH MỤC HÌNH

Hình 1-1 Đồ thị có đề xuất quan hệ không tồn tại trong cơ sở tri thức 5

Hình 2-1 Ba module của Proton [5] 9

Hình 2-2 Cơ sở tri thức của KIM (30/09/2006) [6] 10

Hình 2-3 Đồ thị ý niệm ví dụ 11

Hình 2-4 Đồ thị ý niệm có đỉnh truy vấn con 12

Hình 3-1 Đồ thị ý niệm cho mỗi bộ ba 18

Hình 3-2 Đỉnh truy vấn con 19

Hình 3-3 Đồ thị ý niệm cho câu truy vấn có "how many" 20

Hình 3-4 Đồ thị ý niệm ví dụ cho câu truy vấn có "how many" [3] 20

Hình 3-5 Đồ thị ý niệm ví dụ cho câu truy vấn có "how many" [3] 20

Hình 3-6 Đồ thị ý niệm cho câu truy vấn có liên từ luận lý 22

Hình 3-7 Đồ thị ý niệm ví dụ, cho câu truy vấn có tính từ so sánh nhất 24

Hình 3-8 Đồ thị ý niệm ví dụ, cho câu truy vấn có tính từ định tính so sánh nhất 24

Hình 3-9 Đồ thị ý niệm ví dụ, cho câu truy vấn có tính từ định lượng so sánh nhất 25

Hình 4-1 Kiến trúc tổng quan 27

Hình 4-2 Các bước xử lý 28

Hình 4-3 Lược đồ ánh xạ kiểu quan hệ của bộ ba truy vấn [3] 33

Hình 4-4 Xác định loại quan hệ giữa hai thực thể ei và ej [2] 34

Hình 4-5 Lược đồ ánh xạ kiểu quan hệ giữa tính từ và thực thể [3] 37

Hình 4-6 Xác định loại quan hệ giữa tính từ adj và thực thể [3] 38

Hình 5-1 Cấu trúc tập phần tử TransformRules và rule 45

Hình 5-2 Cấu trúc phần tử điều kiện luật 46

Hình 5-3 Cấu trúc phần tử hành động 46

Hình 5-4 Một luật hoàn chỉnh 47

Hình 5-5 Cấu trúc dữ liệu lưu trữ đồ thị ý niệm 47

Hình 5-6 Dạng tổng quát của đồ thị ý niệm 48

Hình 5-7 Tên hình 49

Trang 10

DANH MỤC BẢNG

Bảng 5-1 Giao diện các dịch vụ 40

Bảng 5-2 Bản tóm tắt các phương thức lớp ENSearch 41

Bảng 5-3 Bản tóm tắt các phương thức lớp QuerytoCG 41

Bảng 5-4 Bản tóm tắt các phương thức lớp QuerytoCG (2) 42

Bảng 5-5 Bản tóm tắt các phương thức lớp Processing XML 42

Bảng 5-6 Bản tóm tắt các phương thức lớp ProcessingQuery 43

Bảng 5-7 Bản tóm tắt các phương thức lớp ProcessingQuery (2) 43

Bảng 5-8 Bản tóm tắt các phương thức lớp QueryOutput 43

Bảng 5-9 Bản tóm tắt các phương thức lớp SeRQLMapping 44

Bảng 5-10 Các thuộc tính của phần tử điều kiện 46

Bảng 6-1 Kết quả thực nghiệm trên TREC 2002 trước khi làm giàu Ontology 54

Bảng 6-2 Kết quả thực nghiệm trên TREC 2002 sau khi làm giàu Ontology 55

Bảng 6-3 Kết quả thực nghiệm trên TREC 2002 sau khi làm giàu Ontology phân theo dạng câu 55

Trang 11

CHƯƠNG 1 TỔNG QUAN

1.1 Giới thiệu

Kể từ khi ra đời đến nay, World Wide Web (WWW) đã làm thay đổi rất nhiều cách con người trao đổi và tiếp cận với thông tin, tri thức Và đối với nền kinh tế tri thức hiện nay, tầm quan trọng của WWW càng lớn hơn Điều đó đặt ra yêu cầu là: phải làm sao để quá trình khai thác tri thức từ WWW đạt được hiệu suất tối ưu Muốn vậy, một giải pháp là phải tự động hóa được quá trình đó; nói cách khác, máy móc phải có khả năng khai thác thông tin trên WWW với một độ chính xác cao

Hiện nay, đã có những công cụ phần mềm nhắm đến mục tiêu đó Nổi bật nhất có lẽ là các động cơ tìm kiếm dựa trên từ khóa (keyword – based search engine), như động cơ tìm kiếm của Google, Yahoo, Tuy đã đạt được những thành công nhất định, nhưng các hệ thống này còn có những khuyết điểm làm cho người sử dụng chưa được hài lòng Có thể nêu ra như:

 Kết quả trả về cho một truy vấn là nhiều, nhưng độ chính xác lại thấp Người dùng phải tốn nhiều thời gian với những kết quả không thích hợp

 Kết quả trả về hoàn toàn phụ thuộc vào từ khóa được cung cấp Trong khi, theo mong muốn của con người, thì các truy vấn tương tự nhau về mặt ngữ nghĩa phải dẫn đến những kết quả như nhau

Do công cụ tìm kiếm chủ yếu chỉ so trùng, mà chưa “hiểu” được nội dung của thông tin chứa trên WWW và nội dung của câu truy vấn, nên dẫn đến những hạn chế trên

Như vậy, để làm tăng hiệu quả của quá trình tìm kiếm tự động, một hướng tiếp cận là làm cho máy tính “hiểu” được nội dung của thông tin: thông tin được lưu trữ trên WWW và thông tin trong câu truy vấn của người dùng

Đề tài này quan tâm đến khía cạnh giúp cho máy tính hiểu được nội dung của câu truy vấn dùng ngôn ngữ tự nhiên là tiếng Anh Nhìn chung, việc hướng dẫn cho máy tính xử lý 1 câu truy

Trang 12

vấn bằng ngôn ngữ tự nhiên (bất kỳ) nhằm hiểu được ý nghĩa là khá phức tạp, có thể liệt kê ra một số khó khăn:

 Ngữ pháp của ngôn ngữ tự nhiên rất đa dạng, cách sử dụng rất linh hoạt Và một câu có thể có nhiều ngữ pháp phù hợp (mặc dù đối với con người sẽ không có nghĩa) Dẫn đến không thể chỉ dựa vào cấu trúc của câu để xác định ngữ nghĩa

 Cùng một từ nhưng có thể ứng với nhiều từ loại (danh từ, động từ, ) Muốn hiểu đúng phải xác định đúng loại từ Lấy ví dụ: “Time flies like an arrow” “Time” và “flies” có ít nhất 2 cách hiểu có ý nghĩa: “Time” làm danh từ và “flies” làm động từ, hay “Time” làm động từ và “flies” làm danh từ

 Phải giải quyết sự đa hình của từ (morphology) nếu muốn nhận biết đầy đủ các thành phần của câu Ví dụ như động từ “fly” có thể có dạng “flies”, “flying”, “flew”

 Việc xác định quan hệ ngữ nghĩa giữa các đối tượng trong câu đòi hỏi phải có tri thức về các mối quan hệ phù hợp giữa các đối tượng Và phải xem xét ngữ cảnh của câu để chọn

ra quan hệ phù hợp nhất

 Câu có thể hàm chứa những mối quan hệ ngầm giữa các đối tượng, mà không được biểu hiện ra bằng các từ ngữ biểu diễn quan hệ, vì các mối liên hệ này được con người ngầm thỏa thuận trên một nền tảng kiến thức chung

 Một cách thường xuyên, câu truy vấn bằng ngôn ngữ tự nhiên không chặt về ngữ pháp,

mà thường được dùng ở dạng thông dụng không “chuẩn” ngữ pháp

Tuy có nhiều khó khăn như đã kể trên, nhưng hiện nay các nhóm nghiên cứu về lĩnh vực web ngữ nghĩa đã đạt được những tiến bộ đáng kể Và việc xây dựng một động cơ tìm kiếm theo ngữ nghĩa là khả thi, có thể thành công với những câu truy vấn không quá phức tạp Vì vậy, đề tài này sẽ ứng dụng các thành tựu đó để xây dựng một động cơ tìm kiếm cho phép người dùng truy vấn bằng ngôn ngữ tự nhiên, và trả về tài liệu chứa nội dung cần tìm

Trang 13

1.2 Mục tiêu phạm vi

Liên quan đến mục tiêu tạo ra một công cụ tìm kiếm dựa trên nền tảng Web ngữ nghĩa, đã có nhiều nghiên cứu được biết đến Các nghiên cứu này sử dụng nhiều hình thức khác nhau cho câu truy vấn đầu vào [2], như:

 Hình thức đồ thị: người sử dụng thao tác trực tiếp trên đồ thị để thực hiện truy vấn

 Hình thức mẫu câu được dựng sẵn: người sử dụng sẽ lựa chọn trong số những mẫu câu truy vấn được xây dựng sẵn, lưu trong hệ thống, để thực hiện truy vấn

 Từ khóa bằng ngôn ngữ tự nhiên

 Hình thức câu đầy đủ: người sử dụng đưa và một câu ngôn ngữ tự nhiên bất kỳ để thực hiện truy vấn

Các hình thức biểu diễn này, nếu càng gần với ngôn ngữ tự nhiên thì lại càng khó xử lý đối với máy tính Tuy nhiên, nếu càng gần với ngôn ngữ tự nhiên thì càng dễ tiếp cận đối với người

sử dụng Hiển nhiên, người sử dụng mong muốn nhất là cho phép nhập vào một câu truy vấn dùng ngôn ngữ tự nhiên

Về phương pháp biên dịch câu truy vấn ngôn ngữ tự nhiên, toát lên từ các nghiên cứu là 2 hướng tiếp cận:

 Phân tích cú pháp: cách này dựa vào việc phân tích cú pháp của câu truy vấn để dịch ra ngôn ngữ khác mà máy tính hiểu được Vì vậy phụ thuộc rất chặt vào cú pháp, bất kỳ lỗi

cú pháp nào cũng dẫn đến biên dịch thất bại Ngoài ra, sẽ khó khăn khi chuyển đổi, sử dụng ngôn ngữ đầu vào khác [2]

 Dịch theo cách ít phụ thuộc vào cú pháp: linh động hơn khi có lỗi cú pháp hoặc khi phải chuyển đổi ngôn ngữ đầu vào Ngoài ra, rút ngắn được thời gian xử lý [2]

Từ cái nhìn trên, hệ thống tìm kiếm mà đề tài này xây dựng sẽ nhận dữ liệu đầu vào là một câu truy vấn bằng tiếng Anh, là ngôn ngữ sử dụng bởi quốc tế Hệ thống, sau khi xử lý bằng phương pháp ít phụ thuộc vào cú pháp, sẽ trả về tài liệu chứa thông tin được tìm kiếm hoặc trả về

Trang 14

số liệu được yêu cầu (lúc này không sử dụng chức năng tìm kiếm mà chỉ đưa ra số liệu trả lời)

Đồng thời, để giúp người dùng kiểm tra liệu cách “hiểu” câu truy vấn của hệ thống có đúng hay không, hệ thống cũng vẽ ra đồ thị ý niệm tương ứng với câu truy vấn đã nhận vào

Một hệ thống như vậy nếu xây dựng mới hoàn toàn sẽ đòi hỏi rất nhiều thời gian và công sức Vì vậy, đề tài sẽ dựa trên hệ thống tìm kiếm ngữ nghĩa cho tiếng Việt (VN-KIM Search) có sẵn [1], tái sử dụng nhiều mô-đun không phụ thuộc vào ngôn ngữ, như mô-đun chú giải, đánh chỉ mục, gom cụm, truy xuất tài liệu, chỉ tập trung làm mới mô-đun xử lý câu truy vấn

Hệ thống sẽ bảo đảm được khả năng xử lý những câu truy vấn tiếng Anh đơn giản, chỉ bao gồm danh từ, động từ, từ để hỏi và giới từ Ví dụ như câu truy vấn: “What actress starred in ‘The Lion in Winter’ ?” Đây là khả năng mà hiện nay VN-KIM Search đã làm được cho tiếng Việt

Luận văn không chỉ dừng lại ở những câu truy vấn đơn giản như ví dụ trên, mà còn nhắm đến mục tiêu trả lời được những câu truy vấn phức tạp hơn Đó là câu truy vấn có liên từ luận lý, tính từ định tính, tính từ định lượng, tính từ so sánh nhất, và lượng từ Lấy ví dụ như các câu truy vấn sau:

 “Who was biographer and Samuel Johnsons's friend?” chứa liên từ luận lý

 “What famous model was married to Billy Joel?” chứa tính từ định tính

 “What are the old university in the US?” chứa tính từ định lượng

 “What is the highest dam in the U.S.?” chứa tính từ so sánh nhất

 “How many films did Ingmar Bergman make?” chứa lượng từ

Hiện đã có nghiên cứu của nhóm VN-KIM để biên dịch những câu truy vấn dạng này từ ngôn ngữ tự nhiên sang đồ thị ý niệm Luận văn này sẽ ứng dụng thành quả nghiên cứu đó

Hiện nay, mô-đun nhận biết thực thể của VN-KIM Search không thể dùng cho tiếng Anh

Nên, ở bước nhận biết thực thể, đề tài sẽ sử dụng công cụ sẵn có, và giả sử là quá trình này hoàn toàn chính xác Đề tài cũng không giải quyết vấn đề về quan hệ 3 ngôi trong [3], vì việc đó liên quan tới việc mở rộng, “làm mịn” Ontology, là một bài toán khác

Trang 15

“hiểu” câu truy vấn của hệ thống mà không bị quá lệ thuộc vào cơ sơ tri thức Ví dụ như sau:

“What is the longest dam in the U.S.?” Mặc dù quan hệ giữa “dam” và “long” không có trong cơ sơ tri thức, nhưng ta vẫn có thể cung cấp đồ thị ý niệm cho người dùng (với quan hệ

“ảo” được vẽ màu xanh lá)

Hình 1-1 Đồ thị có đề xuất quan hệ không tồn tại trong cơ sở tri thức

Ngoài ra, để truy xuất được tài liệu, thì chỉ ngừng lại ở đồ thị là chưa đủ, cần phải chuyển đồ thị đó sang ngôn ngữ SeRQL, là ngôn ngữ dùng để truy xuất cơ sở tri thức ngữ nghĩa Luận văn này đã đề xuất và hiện thực cách thức chuyển từ đồ thị ý niệm của những câu truy vấn dạng này sang truy vấn SeRQL để lấy về thực thể (entity) cần tìm

Luận văn cũng đề xuất và hiện thực cách xử lý câu truy vấn có chứa dạng so sánh hơn của tính từ định lượng Các câu truy vấn có so sánh hơn với một hằng số, hoặc so sánh hơn với một

thực thể, như “What dam in the U.S is higher than 1200 meters?”, “What dam is higher than

Dworshak in the U.S.?” cũng đã được chuyển sang đồ thị ý niệm, rồi chuyển sang câu truy vấn SeRQL tương ứng

Trang 16

1.4 Cấu trúc luận văn

Chương 1 đã trình bày khái quát động cơ, mục đích, phạm vi và kết quả thực hiện đề tài

Tiếp theo sau Chương 1 là phần trình bày chi tiết về ý tưởng và phương pháp để đạt được mục đích đã đề ra

Chương 2 trình bày những nghiêu cứu, hệ thống, công cụ liên quan, được sử dụng trong đề tài

Chương 3 trình bày ý tưởng về cách giải quyết các loại câu truy vấn đã nêu ở chương 1 Các mục trong chương này tập trung giải quyết từng loại câu truy vấn riêng biệt

Chương 4 trình bày sơ đồ tổng quan hệ tống Cũng như trình tự các bước xử lý câu truy vấn, giải thuật cụ thể từng bước

Chương 5 trình bày giao diện các lớp chính của hệ thống, phương pháp lưu trữ và hiển thị đồ thị ý niệm, cấu trúc tập luật, và giải thuật xây dựng câu truy vấn SeRQL

Chương 6 đánh giá hiệu suất hệ thống trên tập câu hỏi mẫu TREC 2002 Chương 7 là các kết luận, và hướng phát triển đề nghị của hệ thống

Phụ Lục là các câu hỏi trong tập TREC 2002, một vài CG sinh ra, và kế hoạch thực hiện luận văn này

Trang 17

CHƯƠNG 2 KIẾN THỨC NỀN TẢNG

2.1 Chú thích ngữ nghĩa và tìm kiếm ngữ nghĩa

2.1.1 Các khái niệm

Ontology và cơ sở tri thức

Ontology: Trong khoa học và kỹ thuật máy tính, ontology là một biểu diễn hình thức của tri thức, dưới dạng một tập các khái niệm (concept) và mối liên hệ giữa các khái niệm đó Một số ontology hiện có: SUMO, PROTON, KIMO

Cơ sở tri thức (knowledge base, kb): Là một dạng đặc biệt của cơ sở dữ liệu dùng để quản lý tri thức, cung cấp các cách thức để lưu trữ, tổ chức và truy hồi tri thức Một số cơ sở tri thức hiện có: TAP KB, KIM WKB, WordNet (WordNet không hẳn là một cơ sở tri thức mà là một cơ sở

dữ liệu từ vựng, tuy nhiên cũng được sử dụng trong web ngữ nghĩa)

Chú thích ngữ nghĩa

Chú thích (annotation, tagging): là gắn tên, thuộc tính, bình luận, mô tả… vào một tài liệu hay một đoạn văn bản Nó cung cấp các thông tin thêm (metadata) về một mẫu dữ liệu đã có Chú thích làm tăng tốc độ tìm kiếm và giúp tìm thông tin chính xác hơn

Chú thích ngữ nghĩa (semantic annotation): đi sâu hơn chú thích thông thường Nó làm giàu các dữ liệu phi cấu trúc (unstructured), bán cấu trúc (semistructured) bằng cách kết nối chúng với tri thức có cấu trúc của một lĩnh vực nào đó

Chú thích ngữ nghĩa nhận diện các khái niệm và mối quan hệ giữa các khái niệm đó trong văn bản, qua đó cung cấp một đường liên kết giữa thông tin trong văn bản với ontology

Bằng cách nói cho máy tính biết quan hệ giữa các mẫu dữ liệu (data item) và làm thế nào để

xử lý các quan hệ đó một cách tự động, máy tính sẽ có thể thực hiện các tác vụ sàng lọc và tìm kiếm phức tạp

Tìm kiếm ngữ nghĩa

Trang 18

Tìm kiếm ngữ nghĩa (semantic search): là tìm kiếm thông tin không dựa trên sự hiện diện của từ khóa hay cụm từ, mà dựa vào nghĩa của từ Vấn đề của các động cơ tìm kiếm dựa trên từ khóa đó là, nếu thông tin được cung cấp bởi nhiều nguồn khác nhau, thì các thuật ngữ sẽ không được sử dụng một cách thống nhất, cùng một thuật ngữ có thể được dùng với nhiều nghĩa khác nhau, và cũng có khi nhiều thuật ngữ khác nhau lại dùng để chỉ các khái niệm có cùng nghĩa

Động cơ tìm kiếm ngữ nghĩa cố gắng vượt qua lỗ hổng trên bằng cách sử dụng ngữ nghĩa học (semantics), và nhờ đó, cung cấp cho người dùng các kết quả chính xác, thích đáng Nó còn cho phép trả về các kết quả không liên quan một cách tường minh đến câu truy vấn nguyên mẫu

Ví dụ: trong cơ sở tri thức cho biết “Saigon is a city in Vietnam”, và “University of

Technology in Hochiminh city”, khi người dùng muốn hỏi “University in Vietnam” thì động cơ

tìm kiếm ngữ nghĩa có thể trả về các tài liệu liên quan đến “University of Technology”, mặc dù trong câu truy vấn không hề chứa các từ “Saigon”, “Hochiminh city” hay “University of

Technology”

Tìm kiếm ngữ nghĩa hữu dụng trong việc:

 Xử lý các thông tin phức tạp từ nhiều nguồn khác nhau

 Truy hồi tài liệu dựa trên một tập các mối quan hệ bên ngoài các tài liệu đó

 Cung cấp nhiều lựa chọn cho việc nghiên cứu sâu hơn

 Xác định và sàng lọc kết quả hiệu quả hơn

 Sử dụng thông tin từ nguồn có thẩm quyền hiệu quả hơn để định hướng tìm kiếm

Đề tài này sử dụng GATE cùng với PROTON và KIM WKB để chú thích các thực thể và từ quan hệ Phần tiếp theo sẽ nói kỹ hơn về các phần mềm và công cụ này

2.1.2 Các phần mềm, công cụ sử dụng

PROTON và KIM WKB

PROTON (PROTo Ontology): Là một ontology mô tả một cách tổng quát các khái niệm thuộc tất cả các miền (domain) tri thức PROTON ra mắt lần đầu vào năm 2005 [5], ban đầu được phát triển trong dự án SEKT, hiện tại được duy trì bởi Ontotext

Trang 19

Nguyên tắc thiết kế của PROTON có thể được tóm tắt như sau:

 Không phụ thuộc vào miền ứng dụng

 Các định nghĩa hợp logic

 Đúng với các chuẩn phổ biến

 Bao phủ tốt các thực thể có tên và các miền cụ thể

Ontology của PROTON bao gồm 3 module: “System”, “Top” và “Upper” module, với tổng cộng khoảng 250 lớp và 100 quan hệ , thuộc tính thuộc nhiều lĩnh vực khác nhau được định nghĩa

Hình 2-1 Ba module của Proton [5]

KIM WKB [6] (KIM World Knowledge Base (WKB)): Là một cơ sở tri thức về thế giới

KIM WKB dựa trên ontology PROTON, nhưng chỉ phụ thuộc vào System module, và mở rộng module này bằng KIMSO (KIM System Ontology), các module còn lại có thể được thay thế

Ngoài ra, KIM sử dụng thêm KIMLO (KIM Lexical Ontology) giúp cho nó có khả năng nhận diện các thực thể và quan hệ chưa có trong KB, đó là nhờ các ngữ liệu được định nghĩa bởi thành phần ontology này và có trong KB, ví dụ như: các hậu tố của các tổ chức (Ltd., ) , các tên người thông dụng, các chức danh KIM có cơ sở tri thức lên đến hàng chục ngàn thực thể, sau đây là bản thống kê vào tháng 9/2006:

Trang 20

Hình 2-2 Cơ sở tri thức của KIM (30/09/2006) [6]

GATE và ANNIE

GATE [7] (General Architecture for Text Engineering): được phát triển bởi đại học Sheffield

từ năm 1995 GATE là một cơ sở hạ tầng để xây dựng và phát triển các thành phần của phần mềm xử lý ngôn ngữ tự nhiên Dựa trên cơ sở hạ tầng này, người dùng có thể xây dựng các tài nguyên ngôn ngữ, xây dựng hoặc sử dụng lại các tài nguyên xử lý cho phù hợp với mục đích

ANNIE (A Nearly New Information Extraction): là một công cụ chú thích ngữ nghĩa trong GATE ANNIE bao gồm nhiều bước xử lý theo dạng ống (đầu ra của bước này là đầu vào của bước kia), hầu hết các bước này độc lập với ngôn ngữ và miền ứng dụng, nhờ vậy ANNIE có ưu điểm đó là không cần sửa đổi khi chuyển đổi qua những ứng dụng khác nhau ANNIE dựa trên giải thuật trạng thái hữu hạn và JAPE

JAPE (Java Annotation Patterns Engine): một thành phần của GATE JAPE là một bộ chuyển đổi trạng thái hữu hạn, thao tác trên các chú giải dựa vào biểu thức chính quy (regular expressions) Nó hữu dụng trong việc so trùng mẫu, rút trích ngữ nghĩa, và nhiều tác vụ trên cây

cú pháp

2.2 Đồ thị ý niệm

2.2.1 Sơ lược về đồ thị ý niệm

Đồ thị ý niệm là một hình thức biểu diễn logic (logical formalism) vừa có tính trực quan, vừa có sự chính xác Về hình thức, đây là một đồ thị tạo ra bởi các đỉnh và các cạnh (có thể có hướng hoặc không có hướng) Nhờ sử dụng cách biểu diễn đồ họa trực quan đó, đồ thị cho phép

Trang 21

con người nhanh chóng có được một cái nhìn tổng quan, dễ nắm bắt ý nghĩa Về nội dung, đồ thị

ý niệm có thể được ánh xạ trực tiếp sang logic vị từ (predicate logic) Nhờ đó, có thể biểu diễn ngữ nghĩa một cách chính xác, giữ được tính chính xác về mặt logic Với những đặc điểm đó, đồ thị ý niệm vừa dễ tiếp cận đối với con người, vừa khả xử lý đối với máy tính

Và đồ thị ý niệm đã được dùng như là một hình thức biểu diễn tri thức, là một ngôn ngữ trung gian cho việc chuyển đổi qua lại giữa hình thức biểu diễn hướng máy tính và ngôn ngữ tự nhiên “Tim Berners Lee, người phát minh của WWW, kết luận rằng các CG có thể dễ dàng tích hợp với Semantic Web Nó cũng được chỉ ra là có một ánh xạ chặt với ngôn ngữ RDF.” [3]

Sowa đã định nghĩa đồ thị ý niệm trong một bài báo của mình như sau: “Đồ thị ý niệm là một

đồ thị hữu hạn, liên thông, không có hướng, lưỡng phân với những nút thuộc một loại được gọi là

ý niệm (hoặc khái niệm – concepts) và những nút thuộc loại còn lại được gọi là quan hệ khái niệm (conceptual relations).” [3]

Như vậy, đồ thị ý niệm thuộc loại đồ thị phân đôi, và bao gồm 2 loại đỉnh: các đỉnh khái niệm và các đỉnh quan hệ Trong đó, các đỉnh khái niệm chỉ liên kết với các đỉnh quan hệ bởi các cạnh và ngược lại

Đỉnh khái niệm được biểu diễn bằng hình chữ nhật có nhãn là kiểu khái niệm kết hợp với tham chiếu Đỉnh quan hệ có hình oval với nhãn chính là kiểu quan hệ của nó Mỗi đỉnh quan hệ

có thể liên kết với nhiều đỉnh khái niệm bằng các cạnh có hướng Để ngắn gọn, chúng ta sẽ gọi đỉnh quan hệ, đỉnh khái niệm lần lượt là quan hệ, khái niệm

Hình 2-3 Đồ thị ý niệm ví dụ

Hình trên là đồ thị ý niệm cho câu “John is a student There is a subject CS is a field of

study The subject is in CS John studies the subject” Hoặc ngắn gọn hơn “John studies a subject

Trang 22

Trong ví dụ này, [STUDENT: John], [SUBJECT:*], [FIELD: CS] là các khái niệm với

STUDENT, SUBJECT và FIELD trở thành kiểu khái niệm, trong khi đó (STUDY) và (IN) là các

quan hệ với STUDY và IN là các kiểu quan hệ Các tham khảo John và CS là các tham chiếu xác

định Tham chiếu “*” là tham chiếu tổng quát ám chỉ tới một thực thể không xác định

Đồ thị ý niệm được sử dụng để kiểm tra tính chính xác của quá trình dịch câu truy vấn trong

đề tài Bên cạnh các tham chiếu xác định và tham chiếu tổng quát, được bổ sung thêm tham chiếu nghi vấn Tham chiếu nghi vấn biểu diễn cho thực thể được truy vấn trong câu Một đồ thị ý niệm truy vấn là một đồ thị ý niệm mà các tham chiếu có thể là tham chiếu xác định, tham chiếu tổng quát hoặc là tham chiếu nghi vấn được biểu diễn bằng dấu “?”

2.2.2 Đồ thị ý niệm mở rộng

Đồ thị ý niệm mở rộng [3] là đồ thị ý niệm có sử dụng thêm một khái niệm đặc biệt, gọi là đỉnh truy vấn con Đó là một đỉnh khái niệm, nhưng có kiểu khái niệm riêng, và tham chiếu đến thực thể của nó là một đồ thị ý niệm khác Tức là, bên trong đỉnh truy vấn con là nội dung một đồ thị ý niệm truy vấn tri thức Đỉnh truy vấn con sẽ được biểu diễn bằng hình chữ nhật vát góc Ta xét một ví dụ minh họa: ta có câu truy vấn lồng nhau như sau: “Find names of lecturers whose names are identical to those of lectures teaching at Bach Khoa University” Câu truy vấn này sẽ được biểu diễn như sau:

Hình 2-4 Đồ thị ý niệm có đỉnh truy vấn con

Trong đề tài [3], đỉnh truy vấn con được sử dụng trong phần lớn các phương pháp sẽ đề xuất

ở những phần tiếp theo

Trang 23

2.3 Tìm kiếm thực thể và tài liệu

Đề tài này biến đổi từ đồ thị ý niệm sang ngôn ngữ truy vấn SeRQL để truy vấn thực thể trong cơ sở tri thức Thực thể tìm được sẽ dùng để tìm tài liệu trên Semantic Lucene

2.3.1 Câu truy vấn SeRQL [8]

SeRQL (Sesame RDF Query Language) là một ngôn ngữ truy vấn cơ sở tri thức Tương tự như SQL được sử dụng làm ngôn ngữ truy vấn trên các cơ sở dữ liệu quan hệ, SeRQL được sử dụng trên các cơ sở dữ liệu viết bằng ngôn ngữ RDF

Trong SeRQL, có 2 loại câu truy vấn: một loại sẽ trả về một bảng các giá trị (một tập các ràng buộc (binding) giữa biến với giá trị, tương tự như khi truy vấn với SQL), loại còn lại sẽ trả

về một đồ thị RDF (RDF graph) Trong đề tài này chỉ sử dụng loại thứ nhất, gọi là select queries

(phiên bản 2.3.2), sẽ được trình bày sau đây

Đối với 1 câu truy vấn thuộc loại select queries , sẽ có 8 mệnh đề có thể được sử dụng, đó là:

SELECT, FROM, FROM CONTEXT, WHERE, ORDER BY, LIMIT, OFFSET và USING NAMESPACE Chỉ có mệnh đề SELECT là bắt buộc, các mệnh đề còn lại có thể không có mặt trong câu truy vấn Các mệnh đề SELECT, FROM, WHERE và ORDER BY là những mệnh đề

sẽ được sử dụng để truy vấn trong đề tài này

Mệnh đề SELECT ở SeRQL cũng tương tự như trong SQL, sẽ chỉ ra các biến mà ta cần trả

về giá trị Nếu truy vấn thành công, tập kết quả trả về sẽ là các giá trị được ràng buộc với các biến liệt kê trong mệnh đề SELECT Ví dụ [8]:

SELECT O, S FROM {S} rdfs:label {O}

Mệnh đề FROM ở SeRQL cũng tương tự như trong SQL, nhưng, thay vì chỉ ra các bảng (table) có chứa dữ liệu, người sẽ phải chỉ ra các biểu thức đường đi (path expression) có chứa dữ liệu trong cơ sở tri thức RDF Trong ví dụ trên, biểu thức đường đi là “{S} rdfs:label {O}”

Mệnh đề WHERE, cũng tương tư như SQL, là nơi để người dùng đặc tả các ràng buộc mà các biến phải thỏa mãn Nếu có nhiều ràng buộc, chúng có thể được liên kết bằng các từ khóa AND, OR, NOT, là các toán tử của đại số Bool Trong mệnh đề WHERE, ta cũng có thể sử dụng

Trang 24

câu truy vấn lòng nhau (nested query) và sử dụng từ khóa ALL để biểu diễn ràng buộc đối với một tập giá trị Ví dụ [8]:

SELECT highestValue FROM {node} ex:value {highestValue}

WHERE highestValue >= ALL ( SELECT value

FROM {} ex:value {value}

Để sắp xếp kết quả trả về theo một thứ tự nhất định, người dùng có thể sử dụng mệnh đề ORDER BY, kết hợp các từ khóa DESC (giảm dần) và ASC (tăng dần – mặc định) Có thể kết hợp sắp xếp trên nhiều biến trả về, cách nhau bởi dấu “,” Ví dụ [8]:

SELECT Countr, Population FROM {Country} ex:population {Population}

ORDER BY Population DESC

Ngoài ra, SeRQL cũng hỗ trợ 3 toán tử UNION, INTERSECT và MINUS để thực hiện kết hợp, giao và loại trừ các tập kết quả Ví dụ [8]:

SELECT title FROM {book} dc10:title {title}

UNION SELECT title FROM {book} dc11:title {title}

Đề tài sẽ sử dụng các toán tử tập hợp này vào việc giải quyết các câu truy vấn có liên từ luận

Trang 25

VN-KIM Semantic Lucene (S-Lucene): là hiện thực mở rộng của Lucene cho tìm kiếm ngữ nghĩa VN-KIM S-Lucene là một thư viện phần mềm trong hệ thống VN-KIM, có vai trò quan trọng trong việc quản lý, truy hồi các thực thể hay các tài liệu đã được chú giải

Khác biệt chủ yếu giữa Lucene và S-Lucene đó là Lucene đánh chỉ mục và tìm kiếm trên từ khóa, trong khi đó S-Lucene mở rộng cho đánh chỉ mục và tìm kiếm theo thực thể

Đầu vào của S-Lucene là các bộ ba (name/class/ID) nhận được từ quá trình tìm kiếm thực thể S-Lucene trả về các tài liệu tương ứng với các bộ ba đó

Trang 26

CHƯƠNG 3 PHÂN TÍCH VẤN ĐỀ VÀ PHƯƠNG PHÁP GIẢI QUYẾT

3.1 Phương pháp chuyển đổi câu truy vấn sang đồ thị ý niệm

Mặc dù đồ thị ý niệm là một cách biểu diễn rất gần với ngôn ngữ tự nhiên, sinh tự động đồ thị ý niệm từ các câu truy vấn ngôn ngữ tự nhiên là một nhiệm vụ phức tạp (các khó khăn đã được nêu ở mục 1.1) Hiện nay, có nhiều phương pháp đã được đề xuất để giải quyết bài toán này, như:

 Phương pháp dựa vào phân tích cấu trúc liên kết của văn phạm để ánh xạ sang đồ thị ý niệm, áp dụng học máy để có được các cấu trúc liên kết đó

 Phương pháp ánh xạ cây cú pháp thành đồ thị ý niệm cú pháp, rồi từ đồ thị ý niệm cú pháp chuyển đổi thành đồ thị ý niệm, chủ yếu dựa vào luật ánh xạ

 Phương pháp sử dụng các tài nguyên ngôn ngữ (như VerbNet hay WordNet) để xác định vai trò ngữ nghĩa của các thành phần trong câu, dựa vào đó, cùng với những tri thức đặc trưng miền để xây dựng đồ thị ý niệm

 Phương pháp xây dựng một giao diện truy vấn ngôn ngữ tự nhiên sử dụng các kỹ thuật

xử lý ngôn ngữ tự nhiên đơn giản, như NLP-Reduce

 Phương pháp phân tích câu truy vấn nhờ vào cấu trúc ontology, so trùng chuỗi mờ (fuzzy string matching) để chuyển về ngôn ngữ truy vấn SPARQL, như trong hệ thống QuestIO

Trong các phương pháp nêu trên, 3 phương pháp đầu chủ yếu phân tích từ loại và văn phạm trong câu để xác định khái niệm và quan hệ trong đồ thị ý niệm Nhược điểm dễ thấy của phương pháp dạng này là chỉ xử lý được các câu có cú pháp đã biết Đòi hỏi câu truy vấn được nhập vào phải đúng cú pháp (điều này là không thực tế!) Đồng thời, tồn tại khả năng nhập nhằng cú pháp, khi có nhiều hơn một cú pháp chấp nhận được Các phương pháp này cũng gặp khó khăn khi

Trang 27

chuyển đổi sang các ngôn ngữ khác, lý do là vì các ngôn ngữ khác nhau thì cú pháp cũng khác nhau

Ví dụ về sự nhập nhằng cú pháp: “Stolen painting found by tree” Bức tranh bị trộm được

tìm thấy bên cạnh cái cây, hay một cái cây nào đó tìm thấy bức tranh bị trộm?

2 phương án sau đi theo hướng tiếp cận khác, trong đó việc chuyển đổi không chú trọng đến cấu trúc cú pháp của câu Mặc dù việc bỏ qua cú pháp có thể làm ảnh hưởng ít nhiều đến độ chính xác của giải thuật chuyển đổi, nhưng điều này lại tạo ra nhiều ưu điểm:

 Tính tráng kiện (robust): có thể xử lý cho nhiều dạng câu khác nhau Khi truy vấn đầu vào không có cú pháp hoặc không đầy đủ, phương pháp vẫn có thể xây dựng được đồ thị

đề tài trước đây của nhóm nghiên cứu VN-KIM

Phần tiếp theo sẽ trình bày phương pháp cụ thể mà đề tài sử dụng để xây dựng đồ thị ý niệm cho từng dạng câu truy vấn

3.2 Xử lý câu truy vấn thông thường

Câu truy vấn thông thường ở đây được hiểu là các câu truy vấn chỉ có chứa thực thể và từ quan hệ, không chứa các thành phần khác như tính từ, liên từ luận lý, lượng từ…

Việc chuyển đổi câu truy vấn từ ngôn ngữ tự nhiên sang đồ thị ý niệm thực chất là quá trình xác định các thực thể trong câu truy vấn và tìm ra mối quan hệ giữa chúng Do vậy, với mỗi câu truy vấn nhập vào, trước hết, cần phải nhận dạng được các thành phần quan trọng trong câu

Thành phần quan trọng trong câu đó là: thực thể có tên, thực thể không tên và từ quan hệ

Trang 28

Vấn đề xác định loại quan hệ giữa các thực thể

Mỗi thực thể nhận diện được ở trên sẽ đóng vai trò chủ thể hoặc khách thể trong các quan

hệ Xác định loại quan hệ nghĩa là tìm quan hệ tồn tại trong Ontology và thỏa mãn các ràng buộc

về chủ thể, khách thể và từ quan hệ

Xem xét tập mẫu tiếng Anh TREC 2002, ta nhận thấy các câu truy vấn thường không dài, số lượng thực thể và số quan hệ xuất hiện trong câu không nhiều Thông thường chỉ có tối đa 3 thực thể và 2 từ quan hệ, số trường hợp tối đa có thể xảy ra khi chọn 2 thực thể đi cùng 1 quan hệ là 6 trường hợp Do vậy, với một quá trình tìm kiếm hợp lý, đồng thời kết hợp với các heuristic, ta có thể xây dựng chính xác đồ thị ý niệm cho câu truy vấn mà không cần phân tích cú pháp của câu

Sau khi xác định tất cả các loại quan hệ có trong câu truy vấn, đồ thị ý niệm sẽ được xây dựng dựa vào các loại quan hệ đó Với mỗi bộ ba có dạng:

S RW O (với S là khách thể, O là chủ thể, RW là quan hệ)

Ta biểu diễn dưới dạng đồ thị ý niệm như sau:

Hình 3-1 Đồ thị ý niệm cho mỗi bộ ba

Trang 29

3.3 Xử lý câu truy vấn có từ để hỏi là “How many”

Các câu truy vấn dạng này muốn hỏi về số lượng thực thể thỏa mãn một điều kiện nào đó

Trong đa số trường hợp, câu trả lời được xác định bằng cách đếm số thực thể có trong cơ sở tri thức thỏa mãn điều kiện đặt ra Do vậy, để xử lý được, trước tiên cần làm rõ:

 Đối tượng mà câu truy vấn muốn “đếm”

 Phạm vi mà câu truy vấn muốn đề cập

Ví dụ trong câu “How many casinos are in Atlantic City, NJ?”, đối tượng cần đếm đó là

“casino” (sòng bạc), còn phạm vi đếm đó là “casinos are in Atlantic City, NJ” (sòng bạc nằm ở thành phố Atlantic, NJ)

Đồ thị ý niệm sẽ được xây dựng dựa trên đối tượng và phạm vi xác định được Ở đây, chúng tôi sử dụng cách biểu diễn do tác giả Mai Hoàng Anh [1] đề nghị Theo đó, phạm vi mà câu truy vấn muốn bao phủ sẽ được biểu diễn bằng một đỉnh truy vấn con, đối tượng cần “đếm” được biểu diễn bởi một đường đồng tham chiếu

Xét câu truy vấn có dạng:

How many S RW O (S: khách thể, O: chủ thể, RW: từ quan hệ) Phạm vi ở đây là (S-RW-O) được biểu diễn thành một đỉnh truy vấn con Việc xây dựng đồ thị ý niệm cho dạng câu đơn giản này đã được đề cập trong phần 3.2 Với những câu có phạm vi phức tạp hơn, chỉ cần có thể xây dựng đồ thị ý niệm cho phạm vi đó để tạo đỉnh truy vấn con thì các bước còn lại đều làm tương tự

Hình 3-2 Đỉnh truy vấn con

Đỉnh truy vấn con được gắn vào “quan hệ đỉnh” là quan hệ COUNT Khái niệm S (đối tượng cần đếm) đồng tham chiếu tới S trong đỉnh truy vấn con:

Trang 30

Hình 3-3 Đồ thị ý niệm cho câu truy vấn có "how many"

Với giải pháp này, đồ thị tương ứng với câu truy vấn “How many counties are in Indiana?”

là:

Hình 3-4 Đồ thị ý niệm ví dụ cho câu truy vấn có "how many" [3]

Để ngắn gọn, một đường liên kết mới được định nghĩa, thay thế đường đồng tham chiếu Ở đây đường liên kết mới được biểu diễn bằng nét đôi:

Hình 3-5 Đồ thị ý niệm ví dụ cho câu truy vấn có "how many" [3]

Một điểm cần lưu ý: Các câu truy vấn có “How many”, ngoài phần lớn có thể được trả lời bằng cách đếm như đã nói ở trên, cũng có một số ngoại lệ Ví dụ với câu “How many people live

in Chile?”, không có cơ sở tri thức nào chứa đầy đủ thông tin từng người sống ở Chile, mà cho dù

có đi nữa, thì việc đếm số người để trả lời cho câu hỏi đó là không khả thi Thực chất, câu này muốn hỏi về thuộc tính dân số của thực thể Chile Các ngoại lệ dạng này cần được nhận ra và xử

lý riêng

Trang 31

3.4 Xử lý câu truy vấn có liên từ luận lý

Đối với các câu truy vấn có liên từ luận lý, trước tiên cần phải phân tách câu truy vấn đó thành các câu truy vấn nguyên tử Câu truy vấn nguyên tử là câu truy vấn không chứa liên từ luận

lý Mỗi câu truy vấn nguyên tử sẽ được xử lý như một câu truy vấn thông thường, để tạo ra đồ thị

ý niệm và truy vấn SeRQL tương ứng Cuối cùng, các đồ thị ý niệm và các truy vấn SeRQL sẽ được kết hợp lại để tạo ra kết quả cuối cùng

Đề tài dựa vào phương pháp chuyển đổi câu truy vấn có cấu trúc song song của tác giả Trần Liên Thắng được đề cập đến trong [3] để phân tách câu truy vấn Xét các dạng câu truy vấn chứa liên từ luận lý có cấu trúc song song sau (với S là chủ thế, O là khách thể, RW là từ quan hệ):

Trang 32

Đầu tiên sẽ được phân tách thành (S-RW1-O1) và (S-RW2-O2-OR-S-RW3-O3) Câu đầu tiên đã ở dạng nguyên tử, câu thứ hai vẫn chứa liên từ luận lý nên được tách tiếp thành (S-RW2-O2) và (S-RW3-O3) Cuối cùng ta nhận được 3 câu nguyên tử là (S-RW1-O1), (S-RW2-O2), (S-RW3-O3)

Sau khi phân tách, mỗi câu truy vấn nguyên tử được chuyển sang đồ thị ý niệm, tạo thành một đỉnh truy vấn con Các đỉnh truy vấn con này được nối với nhau bằng một trong các quan hệ INTERSECT, UNION, MINUS tương ứng với liên từ luận lý AND, OR, NOT giữa chúng Các liên kết đồng tham chiếu được thêm vào nếu cần thiết

Đồ thị ý niệm tạo thành có dạng như sau:

Hình 3-6 Đồ thị ý niệm cho câu truy vấn có liên từ luận lý

Trang 33

 Cách 1: Định nghĩa lớp con Ứng với mỗi tính từ ta sẽ định nghĩa lớp con của thực thể ngay sau ADJ mà có tính chất thỏa ADJ theo một độ đo nào đó Các mẫu truy vấn ở trên

sẽ được biểu diễn thành:

S ← (SubclassOf) ←Sub_S → (RW) → O Hoặc

S → (RW) → Sub_O → (SubclassOf) → O

 Cách 2: Định nghĩa thêm quan hệ Định nghĩa kiểu quan hệ HASPROPERTY gắn với thực thể ngay sau ADJ và range lớp là STRING Các mẫu truy vấn ở trên sẽ được biểu diễn thành:

[String: *] ← (HASPROPERTY) ← S → (RW) → O Hoặc

S → (RW) → O → (HASPROPERTY) → [String: *]

Tuy nhiên, để truy vấn được tài liệu, hoặc tìm được số liệu trả lời, việc biểu diễn các câu truy vấn có tính từ sang đồ thị ý niệm phải phụ thuộc vào cách ontology thể hiện thuộc tính của thực thể Vì đồ thị ý niệm sẽ được ánh xạ trực tiếp sang ngôn ngữ SeRQL để truy xuất cơ sở tri thức được định nghĩa trên ontology Do đó, khi chọn cách biểu diễn cho tính từ, đề tài này xem xét thuộc tính đó được ontology thể hiện dưới dạng nào để xây dựng đồ thị ý niệm tương ứng

Lấy ví dụ với tính từ định tính: trong ontology đã có lớp MODEL bao gồm các thực thể là người mẫu, để thể hiện thuộc tính nổi tiếng (FAMOUS) của người mẫu, ontology có thể định nghĩa thêm lớp FAMOUS_MODEL là lớp con của lớp MODEL, chứa các thực thể là người mẫu được xem là nổi tiếng Trong trường hợp này, đề tài sẽ chọn Cách 1 để biểu diễn đồ thị ý niệm:

[MODEL: *] ← (SubclassOf) ← [FAMOUS_MODEL: ?] → (RW) → O Cũng có thể với lớp MODEL như trên, nhưng thuộc tính FAMOUS có thể được định nghĩa

là một quan hệ HAS_FAME_PROPERTY với miền chủ ngữ (domain) là lớp MODEL, còn tầm vực vị ngữ (range) là lớp STRING với các giá trị “Yes” hoặc “No” để cho biết các thực thể người mẫu là nổi tiếng hay không Trong trường hợp này, đề tài sẽ chọn Cách 2 để biểu diễn đồ thị ý niệm:

[String: Yes] ← (HAS_FAME_PROPERTY) ← [MODEL: ?] → (RW) → O

Trang 34

Khi Ontology chưa định nghĩa bất cứ cách nào trong 2 cách trên, thì đề tài sẽ dùng cách biểu diễn 1, sinh ra lớp con giả, cho tính từ định tính và cách biểu diễn 2, sinh ra quan hệ giả, cho tính

Ví dụ: “What the most famous model married to Samuel Johnsons?” có đồ thị ý niệm là:

Hình 3-7 Đồ thị ý niệm ví dụ, cho câu truy vấn có tính từ so sánh nhất

Trong đó MOST_FAMOUS_MODEL là con của lớp MODEL

Nếu trong ontology không có sẵn lớp con của thực thể tương ứng với tính từ so sánh nhất,

mà thuộc tính FAMOUS được biểu diễn bởi quan hệ HAS_FAME_PROPERTY với miền chủ ngữ (domain) là lớp MODEL, còn tầm vực vị ngữ (range) là lớp STRING với các giá trị

“MOST”, “LEAST” để cho biết các thực thể người mẫu là nổi tiếng nhất hay ít nổi tiếng nhất

Trong trường hợp này, đồ thị ý niệm cho câu truy vấn ở ví dụ trên sẽ là:

Hình 3-8 Đồ thị ý niệm ví dụ, cho câu truy vấn có tính từ định tính so sánh nhất

Với câu truy vấn có tính từ định lượng so sánh nhất (Ví dụ: tallest, highest), hướng giải quyết tương tự như đã trình bày ở mục 3.3 (cho dạng truy vấn “How many”), điểm khác biệt là thay quan hệ “COUNT” thành quan hệ “MIN”, hoặc “MAX” tương ứng, và đường liên kết sẽ chỉ tới lớp “String” trong quan hệ ứng với tính từ định lượng mà câu truy vấn cần đề cập

Trang 35

Cụ thể như sau: xét dạng tổng quát cho câu truy vấn loại này như bên dưới, với “ADJ_EST”

đại diện cho cụm tính từ so sánh nhất (most adj, least adj, adjEST,…):

Sau đó, ta xác định xem so sánh nhất của tính từ trong truy vấn là tương ứng với lấy “lượng”

lớn nhất hay lấy “lượng” nhỏ nhất Ví dụ: “highest” tương ứng với lấy lượng lớn nhất, còn

“lowest” sẽ lấy lượng nhỏ nhất Nếu là trường hợp đầu tiên thì quan hệ là “MAX”, ngược lại là

“MIN”

Nhiệm vụ còn lại là định nghĩa quan hệ “MAX”, “MIN” chỉ tới đỉnh truy vấn con và một đường liên kết nét đôi sẽ được nối từ quan hệ này tới lớp “String” trong cách biểu diễn tính từ định lượng

Ví dụ câu truy vấn “What is the highest dam in the U.S.?” sẽ được biểu diễn như sau:

Hình 3-9 Đồ thị ý niệm ví dụ, cho câu truy vấn có tính từ định lượng so sánh nhất

3.7 Xử lý câu truy vấn có tính từ định lượng so sánh hơn

Đề tài này mở rộng biểu diễn thêm một dạng nữa của tính từ định lượng, đó là dạng so sánh hơn Trong phần này sẽ đề xuất cách biểu diễn cho 2 dạng so sánh hơn: so sánh hơn với một hằng

số, và so sánh hơn với một thực thể có tên

Trang 36

Đối với dạng so sánh hơn với một hằng số, mẫu câu tổng quát như sau, với “ADJ_ER” đại diện cho cụm tính từ so sánh hơn (more adj than, less adj than, adjER than,…):

Đầu tiên, ta sẽ biểu diễn mối quan hệ giữa “S” và “ADJ_ER” như mục 3.5 Phần

“CONSTANTS” sẽ được nhận biết như một giá trị thuộc lớp “String” Sau đó, tùy theo tính từ nguyên gốc là gì, ta sẽ xác định được quan hệ so sánh hơn là “isGreaterThan” hay

“isSmallerThan” Ví dụ: “higher” sẽ tương ứng với “isGreaterThan”, còn “lower” sẽ tướng ứng với “isSmallerThan” Cuối cùng là thêm quan hệ này vào giữa lớp “String” (trong mối quan hệ biểu diễn tính từ) và hằng số Biểu diễn có dạng như sau:

S → (hasProperty) → [String: *] → (isGreaterThan) → [String: *]

Đối với dạng so sánh hơn với thực thể có tên, mẫu câu tổng quát như sau:

Để biểu diễn dạng này, ta sẽ tìm lần lượt 2 mối quan hệ thực thể - tính từ, đó là S – ADJ và

O – ADJ Rồi biểu diễn 2 mối quan hệ này như ở mục 3.5 Sau đó, cũng xác định mối quan hệ so sánh là “isGreaterThan” hay “isSmallerThan” tương tự như trên Cuối cùng là liên kết 2 lớp

“String” bằng quan hệ này Biểu diễn có dạng tổng quát sau:

S → (hasProperty) → [String: *] → (isGreaterThan)

S → (hasProperty) → [String: *]

Trang 37

CHƯƠNG 4 THIẾT KẾ

VN-KIM Service là nơi xử lý câu truy vấn VN-KIM Service gồm nhiều khối xử lý nhỏ Các khối này sử dụng các dịch vụ ở bên dưới để thực hiện chức năng của mình

Ngày đăng: 01/11/2022, 20:23

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm