CÁC VẤN ĐỀ MỞ RỘNG VÀ THUẬT GIẢI CẢI TIẾN

Một phần của tài liệu Nghiên cứu cải tiến giải pháp thiết kế hệ hỗ trợ tìm kiếm theo ngữ nghĩa trên kho tài liệu khoa học máy tính (Trang 68)

- SBD_R: Liên hệ ràng buộc giữa các thành phần kể trên.

3) Một tập hợp Inst các thực thể:

3.3. CÁC VẤN ĐỀ MỞ RỘNG VÀ THUẬT GIẢI CẢI TIẾN

Dựa trên mô hình biểu diễn tri thức – CK-ONTO cải tiến, mô hình biểu diễn tài liệu và câu truy vấn, chúng tôi xây dựng một số thuật giải cùng với những xử lý cơ bản nhằm giải quyết các vấn đề chính đặt ra như sau:

Vấn đề 1: Xác định tự động mối quan hệ ngữ nghĩa giữa các đối tượng

Cho trước một ontology CK-ONTO cải tiến gồm tập các keyphrase, các lớp, các quan hệ ban đầu và các luật suy diễn. Yêu cầu xác định tự động các quan hệ ngữ nghĩa trên keyphrase và lớp. Các quan hệ ngữ nghĩa được xác định tự động dựa trên tập các quan hệ đã được xây dựng bằng phương pháp thủ công ban đầu và tập các luật suy diễn trên các sự kiện liên quan đến tính chất của quan hệ hoặc sự kiện liên quan đến các keyphrase và các lớp.

Vấn đề 2: Xử lý câu truy vấn

Cho trước một ontology CK-ONTO cải tiến và một câu truy vấn của người dùng. Yêu cầu phân tích ngữ nghĩa của câu truy vấn và nhận dạng mẫu câu truy vấn

để làm rõ ý muốn tìm kiếm của người dùng. Ý tưởng cơ bản là từ câu truy vấn ban đầu của người dùng, dựa vào tập các lớp được mô tả cấu trúc thông tin ta tiến hành phân tích và nhận dạng mẫu câu truy vấn để đưa câu truy vấn về dạng cụ thể hơn. Sau đó, từ kết quả trả về ta tiến hành xử lý câu truy vấn tương tự như quá trình xử lý tài liệu bao gồm thao tác rút trích tự động keyphrase và thiết lập đồ thị keyphrase cho câu truy vấn.

3.3.1. Xác định tự động mối quan hệ ngữ nghĩa giữa các đối tượng

Các cơ sở tri thức (CSTT) đều có động cơ suy diễn để tiến hành các suy diễn nhằm tạo ra các tri thức mới dựa trên các sự kiện, tri thức cung cấp từ ngoài vào và tri thức có sẵn trong các hệ CSTT. Động cơ suy diễn thay đổi theo độ phức tạp của CSTT. Hai kiểu suy diễn chính trong động cơ suy diễn là suy diễn tiến và suy diễn lùi:

- Cơ chế suy diễn tiến: là quá trình suy luận xuất phát từ một số sự kiện ban đầu, xác định các sự kiện có thể được sinh ra từ những sự kiện này. Quá trình này trải qua nhiều bước suy luận xuất phát từ giả thiết ban đầu để sinh ra những sự kiện mới cho tới khi đạt được mục tiêu hay tới khi không tìm thấy được luật nào áp dụng được để sinh ra sự kiện mới.

- Cơ chế suy diễn lùi: là quá trình suy luận ngược xuất phát từ một số sự kiện ban đầu, ta tìm kiếm các sự kiện đã sinh ra sự kiện này. Xuất phát từ mục tiêu ta xem xét hệ luật để tìm xem những sự kiện nào có thể dẫn ra được mục tiêu và sự kiện này sẽ được xem xét như là mục tiêu mới cho các bước truy ngược tiếp theo. Quá trình kết thúc khi tất cả các mục tiêu phát sinh đầu đã được biết hay thuộc giả thiết. Để thực hiện được cơ chế suy luận lùi, người ta thường sử dụng ngăn xếp (để ghi nhận lại những nhánh chưa kiểm tra).

Việc dùng cơ chế suy diễn trên hệ luật dẫn để phát sinh quan hệ ngữ nghĩa mới cho các keyphrase và lớp có nhiều ưu điểm như: các luật rất dễ hiểu nên có thể dễ dàng để trao đổi với người dùng; có thể dễ dàng xây dựng được cơ chế suy diễn và giải thuật từ các luật; việc hiệu chỉnh và bảo trì hệ thống là tương đối dễ dàng; có thể cải tiến để tích hợp các luật mờ; và các luật thường ít phụ thuộc vào nhau.

Xác định quan hệ ngữ nghĩa tự động bằng thuật giải suy diễn tiến

Ưu điểm chính của suy diễn tiến là làm việc tốt khi bài toán về bản chất đi thu thập thông tin rồi xác định sự kiện cần suy diễn. Cho ra khối lượng lớn các

xây dựng động cơ suy diễn để phát sinh quan hệ tự động dựa trên cơ chế suy diễn tiến rất phù hợp với vấn đề đặt ra.

Mô tả: giả sử ban đầu ta có một tập các quan hệ ngữ nghĩa liên quan đến keyphrase và lớp, và hai đối tượng cần xác định mối quan hệ ngữ nghĩa. Dựa vào tính chất của các quan hệ ngữ nghĩa này và tập các luật suy diễn được định nghĩa trong ontology, hệ thống sẽ thực hiện suy diễn để tìm ra mối quan hệ ngữ nghĩa giữa hai đối tượng này.

Tập các sự kiện ban đầu:

(1) Sự kiện thông tin về tính chất của quan hệ:

[Rre, “đối xứng”], [Rsyn, “đối xứng”], [Rnsyn, “đối xứng”], [RSacl, “đối xứng”], [RpartOf, “bắc cầu”], [RkindOf, “bắc cầu”], [Rsyn, “bắc cầu”], [RSacl, “bắc cầu”]

(2) Sự kiện về quan hệ giữa hai đối tượng

a. Sự kiện về quan hệ giữa keyphrase và keyphrase:

Sự kiện Ví dụ

[k, Rsyn, k’] [“algorithm and data structure”, Rsyn, “data structure and algorithm”]

[k, Racr, k’] [“JSP”, Racr, “Java Server Page”] [k, Rnsyn, k’] [“access code”, Rnsyn, “Password”] [k, Rex, k’] [“C”, Rex, “C++”]

[k, Rre, k’] [“Networking”, Rre, “Operating system”] [k, RpartOf, k’] [“complexity”, RpartOf, “algorithm”]

[k, RkindOf, k’] [“Quick sort”, RkindOf, “sorting algorithm”] [k, RSacl, k’] [“complexity”, RSacl, “data structure”] b. Sự kiện về quan hệ giữa lớp và lớp

Sự kiện Ví dụ

[c, RHYP, c’] [“SEARCHING ALGORITHM”, RHYP, “ALGORITHM”]

[c, RPART_OF, c’] [“DATA TYPE”, RPART_OF, “PROGRAMMING LANGUAGE”]

[c, RRE, c’] [“DATA TYPE”, RSIB, “DATA STRUCTURE”] c. Sự kiện về quan hệ giữa keyphrase và lớp

Sự kiện Ví dụ

[k, RESTAB, c] [“artificial language”, RESTAB, “PROGRAMMING LANGUAGE”]

[k, RPART_OF, c] [“heuristic”, RPART_OF, “ALGORITHM”] [k, RRE, c] [“operator”, RRE, “DATA TYPE”]

Tập các luật suy diễn:

r1: [R, “đối xứng”] && [k1, R, k2] => [k2, R, k1]

r2: [R, “bắc cầu”] && [k1, R, k2] && [k2, R, k3] => [k1, R, k3] r3: [k1, Rnsyn, k2] && [k2, Racr, k3] => [k1, Rnsyn, k 3]

r4: [k1, Rsyn, k2] && [k2, Racr, k3] => [k1, Rsyn, k3] r5: [k1, Rnsyn, k2] && [k2, Rsyn, k3] => [k1, Rnsyn, k 3] r6: [k1, Rsyn, k2] && [k2, RpartOf, k3] => [k1, RpartOf, k3] r7: [k1, RpartOf, k3] && [k2, RkindOf, k3] => [k1, RpartOf, k2] r8: [k1, Rsyn, k2] && [k2, RkindOf, k3] => [k1, RkindOf, k3] r9: [k1, RkindOf, k2] && [k2, Rsyn, k3] => [k1, RkindOf, k3] r10: [R, “đối xứng”] && [c1, R, c2] => [c2, R, c1]

r11: [R, “bắc cầu”] && [c1, R, c2] && [c2, R, c3] => [c1, R, c3] r12: [k1, RPART_OF, c] && [k2, RPART_OF, c] => [k1, RSacl, k2]  Thuật giải:

Cho bài toán FS1 ⇒ ROO’, trong đó FS1 là các tập hợp những sự kiện liên quan đến các keyphrase và các lớp trong ontology và ROO’ là một quan hệ ngữ nghĩa giứa O và O’. Quá trình tìm kiếm mối quan hệ ngữ nghĩa giữa hai đối tượng này dựa theo thủ tục sau:

Algorithm – suy diễn quan hệ ngữ nghĩa tự động

//input: Tập sự kiện ban đầu FS

//output: Mối quan hệ ngữ nghĩa ROO’

Các bước thực hiện chính:

Bước 1: Đặt trạng thái ban đầu cho tập sự kiện <FactSet>

FactSetFS;

Relation_found ← false;

ROO’ ← null;

Bước 2: Thực hiện một quá trình dò tìm cách suy diễn để phát sinh (hay sinh ra) sự kiện mới (thêm vào một số

while !Relation_found do

2.1 Tìm kiếm một dạng suy luận ri có thể áp

dụng được trên tập sự kiện FactSet để sinh ra sự kiện mới

Một phần của tài liệu Nghiên cứu cải tiến giải pháp thiết kế hệ hỗ trợ tìm kiếm theo ngữ nghĩa trên kho tài liệu khoa học máy tính (Trang 68)