Biểu đồ Tìm kiếm thơng tin

Một phần của tài liệu Nghiên cứu Web ngữ nghĩa và ứng dụng trong trợ giúp tìm kiếm văn bản nghiệp vụ hành chính (Trang 76)

3.4. THIẾT KẾ ONTOLOGY

3.6.1 Các bước xây dựng ontology

Các bước xây dựng ontology cụ thể như sau: - Xác định miền quan tâm và phạm vi của ontology. - Xem xét việc kế thừa các ontology có sẵn. - Liệt kê các thuật ngữ quan trọng trong ontology. - Xây dựng các lớp và cấu trúc lớp phân cấp. - Định nghĩa các thuộc tính và quan hệ cho lớp.

- Định nghĩa các ràng buộc về thuộc tính và quan hệ của lớp. - Tạo các thực thể cho lớp.

Bước 1: Xác định miền quan tâm và phạm vi của ontology

Tương tự như các công đoạn đặc tả khác, đặc tả ontology cũng bắt đầu bằng việc trả lời các câu hỏi mang tính phân tích để xác định chính xác các yêu cầu. Những câu hỏi thường dùng là:

- Ontology cần mô tả miền nào?

- Ontology phục vụ cho mục đích chun biệt gì?

- Cơ sở tri thức trong Ontology sẽ trả lời những câu hỏi gì?

- Ontology nhằm phục vụ đối tượng nào?

- Ai là người sẽ xây dựng, quản trị ontology?

giới hạn được phạm vi cụ thể của mơ hình cần mơ tả và dự kiến các kỹ thuật sẽ sử dụng trong quá trình phát triển.

Sau khi đã phác thảo xong phạm vi ontology người thiết kế sẽ trả lời các câu hỏi mang tính đánh giá để tiếp tục tinh chỉnh lại phạm vi của hệ thống cần xây dựng, được gọi là “câu hỏi kiểm chứng khả năng” (competency question):

- Ontology đã có đủ thơng tin để trả lời cho các câu hỏi được quan tâm trên cơ sở tri thức hay không?

- Câu trả lời của cơ sở tri thức đã đáp ứng được mức độ, yêu cầu nào của người sử dụng?

- Các ràng buộc và quan hệ phức tạp trong miền quan tâm đã được biểu diễn hợp lý chưa?

Bước 2: Xem xét việc kế thừa các ontology có sẵn

Đây là bước thường hay được sử dụng để giảm thiểu công sức xây dựng một ontology. Khi đã có ontology tương tự, người xây dựng có thể kế thừa nó để thêm hoặc bớt các lớp, các quan hệ giữa các lớp, thực thể… để phù hợp với mục đích xây dựng ontology. Bên cạnh đó, các ứng dụng nếu có sự tương tác lẫn nhau thì cần phải hiểu các lớp, thực thể, quan hệ… của nhau để thuận tiện trong việc trao đổi thông tin hoặc thống nhất thơng tin nên việc kế thừa các ontology có sẵn trong trường hợp này là rất quan trọng.

Xây dựng một ontology mới trên cơ sở kế thừa các hệ thống có sẵn sẽ liên quan đến một bài tốn phức tạp là “trộn” (merging) các ontology. Vấn đề là có thể có tên các khái niệm định nghĩa trong các ontology là giống nhau nhưng mô tả những đối tượng khác nhau hoặc ngược lại. Thêm nữa, làm thế nào để bổ sung các quan hệ, thuộc tính có sẵn vào hệ thống mới?

Nếu giải quyết những vấn đề trên hồn tồn thủ cơng thì rất khó, tuy nhiên, hầu hết các ontology đều được xây dựng trên các hệ thống xây dựng và quản trị ontology, như: Sesame, Protégé, OntoEdit,… Đa số các phần mềm này đều hỗ trợ chức năng trộn tự động các ontology cùng hoặc khác định dạng với nhau, người xây dựng chỉ cần kiểm tra lại để đảm bảo tính chính xác cho ontology của mình.

Bước 3: Liệt kê các thuật ngữ quan trọng trong ontology

Đây là bước tiền đề cho bước 4 và bước 5. Ta tiến hành liệt kê tất cả các thuật ngữ có trong miền quan tâm (có thể đồng nghĩa hoặc chồng nhau) như tên các khái

niệm, quan hệ, thuộc tính… Thơng thường, các thuật ngữ là danh từ sẽ trở thành các lớp, tính từ sẽ thành thuộc tính, động từ sẽ là quan hệ giữa các lớp.

Bước 4: Xây dựng các lớp và cấu trúc lớp phân cấp

Đây là một trong hai bước quan trọng nhất của việc xây dựng một ontology. Bước này định nghĩa các lớp từ một số thuật ngữ đã liệt kê trong bước 3, sau đó xây dựng cấu trúc lớp phân cấp theo quan hệ “lớp cha-lớp con”.

Lớp ở vị trí càng cao trong cấu trúc sẽ có mức độ tổng quát càng cao. Vị trí đầu tiên là lớp gốc, tiếp theo là các lớp trung gian và cuối cùng là lớp lá. Lớp lá là lớp không thể triển khai được nữa và chỉ được biểu hiện bằng các thực thể.

Quan hệ giữa các thực thể của lớp con với lớp cha là quan hệ “là-một”, có nghĩa một thực thể của lớp con cũng là một thực thể của lớp cha.

Ta có thể xây dựng cấu trúc lớp phân cấp theo ba hướng sau:

- “Từ trên xuống” (top-down): bắt đầu bằng các lớp có mức độ tổng quát cao nhất, sau đó triển khai dần đến lớp lá.

- “Từ dưới lên” (bottom-up): bắt đầu bằng việc xác định các lớp được cho là cụ thể nhất, sau đó tổng quát hóa đến khi được lớp gốc.

- “Kết hợp” (combination): kết hợp cả hai hướng xây dựng trên. Trước tiên

chọn các lớp nổi bật nhất trong miền quan tâm, sau đó tống quát hóa và cụ thể hóa cho đến khi được cấu trúc mong muốn.

Bước 5: Định nghĩa các thuộc tính và quan hệ cho lớp

Các lớp xác định ở bước 4 chỉ là những thuật ngữ phân biệt với nhau bằng tên gọi. Để có thể phục vụ cho việc biểu diễn tri thức, các thuộc tính của lớp cần được định nghĩa.

Thuộc tính có thể chia làm những loại sau:

- Về ý nghĩa: chia làm 2 loại, thuộc tính bên trong (intrinsic property) và

thuộc tính bên ngồi (extrinsic property). Thuộc tính bên trong mơ tả các tính chất bên trong sự vật như: chất, lượng, cấu tạo,… Thuộc tính bên ngồi mơ tả biểu hiện của sự vật: màu sắc, hình dáng,…

- Về giá trị: chia làm 2 loại gồm: thuộc tính đơn (simple property) và thuộc

tính phức (complex property). Thuộc tính đơn là những giá trị đơn như: chuỗi, số,… Thuộc tính phức có thể chứa hoặc tham khảo đến một đối tượng khác.

Một lớp kế thừa tồn bộ các thuộc tính của tất cả các cha nó. Vì vậy khi định nghĩa một thuộc tính cần xem nó đã được định nghĩa ở các lớp mức cao hơn hay chưa.

Bước 6: Định nghĩa các ràng buộc về thuộc tính và quan hệ của lớp

Các ràng buộc giới hạn giá trị mà một thuộc tính có thể nhận, có hai ràng buộc quan trọng nhất đối với một thuộc tính là lượng số (cardinality) và kiểu (type).

“Lượng số” quy định số giá trị một thuộc tính có thể nhận, thường là: đơn trị

(single) và đa trị (multiple).

“Kiểu” mà một thuộc tính có thể nhận là: chuỗi, số, boolean, liệt kê và kiểu

thực thể. Kiểu thực thể có liên quan đến hai khái niệm gọi là: miền (domain) và khoảng (range). Miền dùng để chỉ lớp (hay các lớp) mà thuộc tính đó thuộc về. Khoảng chính là lớp (hay các lớp) làm kiểu cho giá trị thuộc tính kiểu thực thể.

Bước 7: Tạo các thực thể cho lớp

Đây là bước cuối cùng trong vòng lặp xây dựng ontology. Bước này tạo thực thể cho mỗi lớp và gán giá trị cho các thuộc tính. Các thực thể sẽ tạo nên nội dung của một cơ sở tri thức và là vấn đề được quan tâm trong lĩnh vực semantic web.

3.6.2 Thiết kế mơ hình dữ liệu ontology

Từ các bước xây dựng ontology đã nêu ở mục trên, chúng tôi tiến hành xây dựng ontology cho văn bản giáo dục như sau :

Bước 1: Xác định miền quan tâm và phạm vi của ontology

- Miền quan tâm của ontology: Văn bản trong ngành giáo dục - Phục vụ mục đích: tìm kiếm thơng tin văn bản giáo dục

- Phục vụ đối tượng: là những người có nhu cầu tìm kiếm thơng tin về giáo

dục hoặc xây dựng hệ thống thông tin về giáo dục.

- Phạm vi của ontology: ngành giáo dục trong cả nước.

Bước 2: Xem xét việc kế thừa các ontology có sẵn

Đối với ontology văn bản giáo dục, khơng có sự thừa kế từ các ontology có sẵn.

Bước 3: Liệt kê các thuật ngữ quan trọng trong ontology

Văn bản, lĩnh vực, loại văn bản, cơ quan, thời gian, nội dung văn bản, cá nhân...

Với bài toán ta sẽ xây dựng một ontology định nghĩa văn bản trong ngành giáo dục có 7 class chính :

- Linh_vuc : class mơ tả về lĩnh vực mà một văn bản cụ thể đề cập đến. - Loai_van_ban : class mô tả về loại văn bản được đề cập đến.

- Thoi_gian : class mơ tả về yếu tố thời gian có liên quan đến văn bản.

- Co_quan : class mô tả về các cơ quan liên quan trong văn bản, đồng thời đây cũng là kho dữ liệu lưu trữ thông tin của các cơ quan.

- Ca_nhan : class mơ tả về các cá nhân có liên quan trong văn bản, đồng thời đây cũng là kho dữ liệu lưu trữ thông tin của nhiều cá nhân.

- Noi_dung : class mô tả về nội dung của văn bản, nội dung của văn bản sẽ được phân loại nhờ vào class con Kieu_noi_dung.

- Van_ban : class bao quát nhất, miêu tả cụ thể rõ ràng đối tượng chính là văn bản. Class này chứa dữ liệu liên quan đến tất cả các class còn lại.

Bước 5 + 6: Định nghĩa các thuộc tính và quan hệ cho lớp, định nghĩa các

ràng buộc về thuộc tính và quan hệ của lớp

Để trình bày rõ hơn về các Class cơ bản trong ontology văn bản giáo dục, chúng tôi sẽ miêu tả kèm theo sơ đồ mô phỏng từng Class liên quan.

Class Linh_vuc

Class này ta sẽ định nghĩa các class con miêu tả các thuộc tính lĩnh vực cơ bản liên quan đến văn bản trong nghành giáo dục đó là :

- Id_linh_vuc : là class con của class Linh_vuc, thể hiện ID của lĩnh vực mà văn bản liên quan.

- Ten_linh_vuc : là object property liên hệ giữa class Linh_vuc và class Van_ban.

Hình 3.10. Sơ đồ mô tả class Linh_vuc

Class này định nghĩa các class con liên quan đến vấn đề phân loại văn bản đó là:

- Id_loai_van_ban : là class con của class Loai_van_ban, thể hiện ID phân loại của văn bản

- Ten_loai_van_ban : là object property liên hệ giữa class Loai_van_ban và class Van_ban.

Hình 3.11. Sơ đồ mơ tả class Loai_van_ban

Class Co_quan

Class này định nghĩa các class con liên quan đến một đơn vị, cơ quan cụ thể. Class Co_quan có các class con sau :

- Id_co_quan : là class con của class Co_quan, thể hiện ID của cơ quan có liên quan trong văn bản.

- Cap_bac : class thể hiện cấp bậc của cơ quan.

- Ten_co_quan : là object property liên hệ giữa class Co_quan và class Van_ban.

- Nhiem_vu_co_quan : thể hiện nhiệm cụ của cơ quan trong văn bản.

Hình 3.12. Sơ đồ mơ tả class Co_quan

Class định nghĩa các class con về mặt thời gian liên quan đến văn bản. Class Thoi_gian có các class con sau :

- Id_thoi_gian : là class con thể hiện ID của thời gian liên quan đến văn bản. - Loai_thoi_gian : là object property liên hệ giữa class Thoi_gian và class

Van_ban.

Hình 3.13. Sơ đồ mơ tả class Thoi_gian

Class Ca_nhan

Class định nghĩa các class con về mặt cá nhân liên quan đến văn bản. Class Ca_nhan có các class con sau :

- Id_ca_nhan : thể hiện ID của cá nhân có liên quan đến văn bản.

- Ho_ten : là object property liên hệ giữa class Ca_nhan và class Van_ban. - CMND : là class con thể hiện chứng minh nhân dân và các thơng tin có liên

quan của cá nhân.

- Chuc_vu : thể hiện thông tin chức vụ của cá nhân.

- Trinh_do : thể hiện thơng tin trình độ học vấn của cá nhân.

- Ten_co_quan : là object property liên hệ giữa class Co_quan và class Ca_nhan.

- Nhiem_vu_ca_nhan : là class con thể hiện nhiệm vụ của cá nhân có liên quan trong văn bản.

Hình 3.14. Sơ đồ mơ tả class Ca_nhan

Class Noi_dung

Class định nghĩa các class con về nội dung của văn bản. Class Noi_dung bao gồm :

- Trich_luoc_noi_dung : là object property liên hệ giữa class Noi_dung và class Van_ban.

- Noi_dung_day_du : là class con thể hiện nội dung đầy đủ của văn bản.

Hình 3.15. Sơ đồ mơ tả class Noi_dung

Class Van_ban

Class Van_ban là class đặc biệt trong ontology. Class Van_ban chứa các class con, các Object Properties và các Data Properties để liên kết với các class khác tạo thành một ontology hoàn chỉnh về văn bản trong ngành giáo dục. Class Van_ban chứa các Object Properties sau :

- ID_van_ban : là class con thể hiện ID của từng văn bản cụ thể.

- Ten_loai_van_ban : là object property liên kết class Van_ban và class Loai_van_ban.

- Ten_co_quan : là object property liên kết class Van_ban và class Co_quan. - Ten_linh_vuc : là object property liên kết class Van_ban và class Linh_vuc. - Loai_thoi_gian : là object property liên kết class Van_ban và class

Thoi_gian.

- Trich_luoc_noi_dung : là object property liên kết class Van_ban và class Noi_dung.

Hình 3.16. Sơ đồ mô tả class Van_ban

Tổng quát ontology

Từ các sơ đồ trên, chúng ta có sơ đồ tổng quát thể hiện liên kết giữa các class trong ontology như sau :

Hình 3.17. Sơ đồ mô tả tổng quát ontology

Bước 7: Tạo các thực thể cho lớp

Hình 3.18. Ontology văn bản giáo dục được xây dựng bằng cơng cụ Protégé

3.5. CHƯƠNG TRÌNH THỬ NGHIỆM VÀ ĐÁNH GIÁ KẾT QUẢ

3.5.1 Trang chủ hệ thống

3.5.2 Màn hình hiển thị tất cả kết quả tìm kiếm

Hình 3.20. Màn hình hiển thị tất cả kết quả tìm kiếm

Đối với kết quả thực nghiệm với hệ thống tìm kiếm văn bản hành chính đắc biệt là trong ngành giáo dục, ứng dụng cho phép người dùng có thể tìm kiếm văn bản ở mức cơ bản hoặc tìm kiếm nâng cao hoặc cũng có thể đưa ra những gợi ý cho người dùng khi có nhiều kết quả trùng nhau.

đến văn bản

Lần lượt ta nhập thơng tin cần tìm kiếm để kiểm tra. Kết quả chương trình sẽ thể hiện kết quả tìm kiếm của văn bản liên quan đến nội dung cần và kết quả cho độ chính xác cao.

3.5.4 Màn hình hiển thị thơng tin tác giả

Hình 3.23. Màn hình hiển thị thơng tin tác giả

Đây là phần thể hiện thông tin của tên đề tài ,cán bộ hướng dẫn đề tài và học viên thực hiện để tài.

3.5.6 Đánh giá chương trình thử nghiệm

Dựa trên ontology đã xây dựng, website đã có thể cho phép người dùng tìm kiếm văn bản giáo dục chính xác hơn. Sử dụng ngơn ngữ truy vấn SPARQL truy vấn dữ liệu. Việc truy vấn này khơng tìm theo dữ liệu thuần túy, mà dựa trên dữ liệu có nghĩa, theo các element được định nghĩa trong RDF trước đó.

Chúng tơi đã xây dựng được ontology và website tìm kiếm văn bản giáo dục trong trường Cao đẳng Nghề Đà Nẵng. Tuy nhiên, vì điều kiện thời gian khơng cho phép nên ontology còn hạn hẹp và website hoạt động chưa thực sự ổn định.

KẾT LUẬN

1. Kết quả đạt được của luận văn

Việc nghiên cứu, ứng dụng semantic web để xây dựng website tìm kiếm văn bản đã thu được những kết quả ban đầu. đáng khích lệ.

Về mặt lý thuyết, nghiên cứu này đã nêu được những nét đặc trưng, ưu thế của web semantic. Bên cạnh đó, dựa trên việc tìm hiểu những ngơn ngữ, cơng cụ hỗ trợ lập trình web ngữ nghĩa, luận văn đã đưa ra được một ontology về văn bản giáo dục, cơ bản xây dựng được một website tìm kiếm văn bản theo chuẩn semantic web

Đối với kết quả thực nghiệm với hệ thống tìm kiếm văn bản trong ngành giáo dục, ứng dụng cho phép người dùng có thể tìm kiếm văn bản ở mức cơ bản hoặc tìm kiếm nâng cao hoặc cũng có thể đưa ra những gợi ý cho người dùng khi có nhiều kết quả trùng nhau.

Với việc sử dụng hệ truy vấn SPARQL, việc truy vấn dữ liệu sẽ khơng tìm

Một phần của tài liệu Nghiên cứu Web ngữ nghĩa và ứng dụng trong trợ giúp tìm kiếm văn bản nghiệp vụ hành chính (Trang 76)

Tải bản đầy đủ (DOC)

(92 trang)
w