Phương pháp xây dựng ontology

Một phần của tài liệu trình bày lý thuyết về web có ngữ nghĩa, ontology và các thế hệ phát triển của world wide web (Trang 33 - 36)

CHƯƠNG 1 WEB CÓ NGỮ NGHĨA VÀ ONTOLOGY

1.3.7.Phương pháp xây dựng ontology

1.3. Ontology

1.3.7.Phương pháp xây dựng ontology

Có rất nhiều phương pháp và mơ hình xây dựng, phát triển ontology đã được đề xuất như mơ hình khung xương của Uschold và King, phương pháp của Gruninger và Fox, phương pháp METHODOLOGY, phương pháp On-To-Knowledge, [8, pp 117-207] ... Mỗi phương pháp có ưu điểm và nhược điểm riêng. Nói chung khơng có phương pháp nào hồn tồn chính xác và việc lựa chọn phương pháp xây dựng ontology nào là tùy thuộc vào ứng dụng cụ thể. Luận văn sử dụng phương pháp của Noy và McGuinness [4], một phương pháp đơn giản gồm các bước lặp như sau (hình minh họa 1.12).

Hình 1.12: Tiến trình xây dựng ontology 1.3.7.1. Xác định lĩnh vực và phạm vi của ontology

Bước đầu tiên trong phương pháp là xác định mục đích phát triển ontology. Các câu hỏi cần được trả lời tại bước này là:

Ontology sẽ mơ tả lĩnh vực gì? Mục đích sử dụng của ontology?

Thơng tin có trong ontology có thể trả lời được các kiểu câu hỏi nào? Ai sẽ là người sử dụng và duy trì ontology?

Các câu trả lời có thể thay đổi trong tiến trình thiết kế ontology, nhưng sẽ hỗ trợ giới hạn phạm vi của ontology.

1.3.7.2. Xem xét sử dụng lại các ontology sẵn có

Với sự phát triển rộng rãi của Semantic Web, có nhiều ontology có sẵn trên Web. Hiếm khi ontology được xây dựng ontology từ đầu mà thường sử dụng lại ontology đã có từ các tổ chức khác. Hiện có các thư viện trên Web chứa ontology phục vụ cho mục đích sử dụng lại. Ví dụ, có thể sử dụng thư viện Ontolingua (http://www.ksl.stanford.edu/software/ontolingua/) hoặc thư viện DAML (http://www.daml.org/ontologies/). Cũng có một số ontology thương mại như UNSPSC (www.unspsc.org), Rosetta (www.rosettanet.org), DMOZ (www.dmoz.org).

1.3.7.3. Liệt kê các thuật ngữ quan trọng trong ontology

Bước đầu tiên định nghĩa các khái niệm trong ontology là liệt kê một danh sách khơng cấu trúc tồn bộ các thuật ngữ liên quan tới lĩnh vực cần mô tả. Thông thường, danh từ hình thành cơ sở cho tên lớp, và động từ (hoặc cụm động từ) là cơ sở cho tên thuộc tính.

1.3.7.4. Định nghĩa các lớp (class) và phân cấp lớp

Sau khi xác định các thuật ngữ liên quan, các thuật ngữ này phải được tổ chức thành cây phân cấp (lớp con). Điều quan trọng là phải đảm bảo phân cấp chính xác. Nếu A là lớp con của B thì mỗi thể hiện của A cũng phải là thể hiện của B.

Có một số cách tiếp cận trong việc phát triển phân cấp lớp:

Tiến trình phát triển top-down bắt đầu định nghĩa các khái niệm tổng quát nhất

trong lĩnh vực và tiếp theo là đặc tả của các khái niệm này.

Tiến trình phát triển bottom-up bắt đầu định nghĩa các lớp cụ thể nhất, ứng với

lá của cây phân cấp, sau đó nhóm các lớp này thành các khái niệm tổng quát hơn.

Tiến trình kết hợp: là sự kết hợp của hai cách top-down và bottom-up. Đầu tiên

và định nghĩa khái niệm này. Sau đó định nghĩa các khái niệm khác liên quan và xếp vào cây phân cấp.

Khơng có cách tiếp cận nào là tốt nhất. Việc chọn cách nào là tùy thuộc vào quan điểm cá nhân về lĩnh vực.

1.3.7.5. Định nghĩa thuộc tính (slot) của các lớp

Bước này là bước bổ sung cho bước trước: tất nhiên phải xác định các thuộc tính kết nối các lớp trong khi tổ chức lớp theo cây phân cấp. Ngay khi đã xác định lớp, ta phải mô tả cấu trúc bên trong của khái niệm. Một tính chất rất quan trọng là tất cả các lớp con có quyền thừa kế thuộc tính của lớp cha. Trong khi gắn thuộc tính vào lớp, cần đưa ra domain và range của thuộc tính đó.

1.3.7.6. Định nghĩa giới hạn vai trị (facet) của thuộc tính

Thuộc tính có thể có các giới hạn vai trị (facet) để mô tả kiểu giá trị, số lượng giá trị (tập hợp), và một số tính chất khác về giá trị của thuộc tính.

Giới hạn tập hợp (cardinality): xác định số lượng giá trị mà thuộc tính có thể có.

Một số hệ thống chỉ phân biệt tập đơn giá trị (có nhiều nhất một g,iá trị) và tập nhiều giá trị. Một số hệ thống khác lại cho phép mô tả số lượng cực đại và cực tiểu để mơ tả chính xác thuộc tính.

Các kiểu giá trị thuộc tính: thơng thường lớp được mơ tả bởi các thuộc tính có

kiểu giá trị cụ thể như string, number, boolean, …

Thuộc tính quan hệ đặc biệt: mơ tả quan hệ giữa các thuộc tính: đối xứng

(symmetry), bắc cầu (transitive), nghịch đảo (inverse), ...

Domain và range của thuộc tính: Các lớp mà thuộc tính được gắn vào và mơ tả (adsbygoogle = window.adsbygoogle || []).push({});

được gọi là domain của thuộc tính. Các lớp chứa giá trị cho thuộc tính có kiểu Instance được gọi là range của thuộc tính đó. Cần chú ý, nếu một danh sách lớp đóng vai trị range hoặc domain của một thuộc tính, và chứa một lớp và lớp con của nó, thì phải loại bỏ lớp con đó ra khỏi danh sách.

Sau bước này trong tiến trình xây dựng ontology, có thể kiểm tra tính nhất quán. Ví dụ, sự khơng tương thích giữa domain và range cho các thuộc tính đối xứng, bắc cầu, nghịch đảo.

1.3.7.7. Tạo các thể hiện (instance) cho lớp

Bước cuối cùng là tạo thể hiện cho các lớp trong cây phân cấp. Xác định instance của lớp đòi hỏi (1) chọn một lớp, (2) tạo thể hiện cho lớp đó, và (3) xác định giá trị cho thuộc tính.

Một phần của tài liệu trình bày lý thuyết về web có ngữ nghĩa, ontology và các thế hệ phát triển của world wide web (Trang 33 - 36)