Ontology Learning có thể được mô tả như là việc thu thập của 1 mô hình miền từ dữ liệu (miền ở đây có thể như là: Geographical,...). Ontology learning cần dữ liệu đầu vào để học những khái niệm liên quan đến miền đã biết trước, những định nghĩa của khái niệm cũng như các mối quan hệ tổ chức giữa những định nghĩa này. Dữ liệu đầu vào có thể là lược đồ như là XML-DTD, những mô hình UML, hoặc lược đồ cơ sở dữ liệu. Ontology learning có được thực hiện trên cơ sở của các nguồn được cấu trúc như XML hoặc tài liệu HTML … Trong trường hợp ontology learning được thực hiện trên cơ sở của các nguồn văn bản không được cấu trúc, chúng ta sẽ nói về ontology learning from text.
Ontology learning from textOntology learning có thể xem là 1 quá trình của công nghệ đảo mã (reverse engineering). Tác giả của 1 văn bản hoặc 1 tài liệu về 1 mô hình miền trong ý thức và bắt đầu tác giả chia sẻ ý tưởng với những tác giả khác để viết những tài liệu về cùng 1 miền. Tác vụ xây dựng lại mô hình thế giới của tác giả hoặc thậm chí mô hình mà được chia sẻ bởi các tác giả khác nhau, có thể được xem như là 1 loại của công nghệ đảo mã (reverse engineering).
Tác vụ này rất phức tạp và thử thách bởi vì 2 lý do:
Đây chỉ là 1 phần nhỏ tri thức về miền của những tác giả và quy trình của công nghệ đảo mã có thể xây dựng lại mô hình của tác giả.
Tri thức thế giới, chúng ta đang xem xét 1 quyển sách hoặc cuốn từ điển – nó ít khi đề cập rõ ràng. Chỉ 1 phần liên quan của tri thức mà trong văn bản hoặc 1 bài cáo được đề cập nhiều hoặc ít rõ ràng.
Tri thức thế giới được chứa đựng trong những văn bản theo cái cách mà những từ và những cấu trúc ngôn ngữ được sử dụng bởi tác giả. Điều đó gây khó khăn vì mỗi tác giả sử dụng những từ, cấu trúc ngôn ngữ của họ, và không theo 1 quy ước nào, gây khó khăn trong việc lấy dữ liệu cho việc ontology learning.
2. Phát triển ontology
Phân lớp đưa ra những tác vụ phụ khác nhau của việc ontology learning:
việc thu thập những thuật ngữ liên quan, ngôn ngữ
- sự nhận dạng những thuật ngữ đồng nghĩa, những biến thể
hệ thống khái niệm (concepts),
việc tổ chức phân cấp các khái niệm (concepts),
và phạm vi thích hợp learning những quan hệ (relations), thuộc tính với miền
việc tổ chức phân cấp những mối quan hệ (relations),
instantiation of axiom schemata
khái niệm những tiên đề tùy ý (arbitrary axioms)
Tuy nhiên, những tác vụ ở những lớp khác nhau có thể được nhóm lại với nhau và sử dụng cùng 1 thuật toán.
Ontology learning layer cake
thủ_đô duy nhất.
3. Những tác vụ của ontology learning3.1 Xác định thuật ngữ (Terms):
Trong đó SC là dấu hiệu cho khái niệm, SR là dấu hiệu cho quan hệ, nằm trong khái niệm Lexicon.
3.2 Xác định từ đồng nghĩa (Synonyms):
Tác vụ khám phá từ đồng nghĩa bao gồm việc tìm những từ mà có khái niệm tương tự. Chúng ta chú ý rằng 2 từ được xem là đồng nghĩa nếu chúng có nghĩa chung mà có thể được dùng như là cơ sở để hình thành 1 khái niệm liên quan đến lĩnh vực.
Ví dụ : spoon is a hyponym of cutlery
musical instrument is a hypernym of piano
3.3 Những khái niệm (Concepts):
Sự hình thành khái niệm cung cấp:
định nghĩa của những khái niệm
sự mở rộng của những khái niệm
những dấu hiệu từ vựng được dùng để tham chiếu đến chúng.
Chúng ta định nghĩa 1 khái niệm gồm 3 phần < i(c), [|c|],RefC(c) >i(c) is the intension of the concept [|c|] : sự mở rộng của khái niệm RefC(c) : mô tả sự nhận dạng từ vựng trong bộ ngữ liệu (corpus)
3.4 Xác định phân cấp khái niệm (Concep Hierarchies)Có những tác vụ liên quan :
Việc đưa vào cấu trúc phân cấp khái niệm (Concept Hierarchy Induction) :
Ví dụ : bắt đầu
từ tập khái niệm C:= { Thực thể định danh, Thực thể định danh tự nhiên, Thực thể định danh có người ở, Núi, Sông, Quốc gia, Thành phố }, công việc phải làm là sẽ đưa ra ≤C (phân cấp khái niệm hoặc phân loại tư duy (taxonomy))
Núi < thực thể định danh tự nhiên, sông < thực thể định danh tự nhiên, thực thể định danh tự nhiên < thực thể định danh, quốc gia < thực thể định có người ở, thành phố <
thực thể định có người ở, thủ đô < thành phố, thực thể định danh có người ở < thực thể định danh.
≤C = {(núi,thực thể định danh), (sông, thực thể định danh), (quốc gia, thực thể định danh), (thành phố, thực thể định danh), (thủ đô, thực thể định danh có người ở}, {thủ đô, thực thể định danh)}
Sự tinh lọc (Refinement) :
Chúng ta định nghĩa việc tinh lọc sự phân cấp khái niệm là 1 tác vụ, mở rộng hệ thống phân cấp khái niệm đã có, bằng việc thêm vào các khái niệm đã tồn tại, tinh lọc lại hệ thống phân cấp.
Ví dụ : thêm vào bộ : (thung lũng, thực thể định danh tự nhiên)
Mở rộng bộ từ vựng (Lexical Extension) :
Chúng ta định nghĩa việc mở rộng bộ từ vựng hoặc việc tinh lọc bộ từ vựng của hệ thống phân cấp khái niệm như là tác vụ, tìm 1 bộ nhận dạng từ vựng mới Si của khái niệm c, mở rộng RefC(c), RefC’{c) := RefC{c) Ui{si}Ví dụ : thêm vào thuật ngữ “suối” vào RefC(sông).
3.5 Xác định các mối quan hệ (Relations) :Dựa vào các khái niệm trong C (concept identifiers), tìm quan hệ có thể được giữa các khái niệm,
Đưa ra R (relation identifiers) : tìm những nhãn và nhận dạng quan hệ trên cơ sở ngữ liệu (corpus) có sẵn, các quan hệ có thể có của khái niệm trong C,
Lấy 1 quan hệ cụ thể r Є R, theo sự phân cấp khái niệm, chúng ta xác định miền (domain) và phạm vi (range) phù hợp của quan hệ,
- Learning phân cấp quan hệ trong R, ký hiệu ≤R
3.6 Xác định lược đồ (Axiom Schemata Instantiations):
3.7 Xác định tiên đề tổng quát (General Axioms):
Kiểu tiên đề này phụ thuộc nhiều vào hình thức luận lý được dùng trong nền tảng của lĩnh vực cụ thể. Những tiên đề tổng quát là sự kéo theo luận lý nhằm ràng buộc sự diễn dịch của khái niệm và quan hệ. Tác vụ learning axiom có thể được hiểu bao gồm việc đưa ra những mối quan hệ và kết nối phức tạp hơn giữa khái niệm và quan hệ. Tiên đề tổng quát không thể được thu thập 1 cách tự động, chúng ta sẽ không đưa ra cụ thể 1 quy luật nào vì nó phụ thuộc vào hình thức trình bày tri thức được dùng.
Ví dụ : tiên đề : với mọi quốc gia x -> y là thủ đô của x, với mọi z là thủ đô của x -> y = x : mỗi quốc gia chỉ có 1 thủ đô
ban có thể cho mình một ví dụ minh họa rõ ràng bằng chương trình không vậy
ReplyDeleteTÌnh cờ vào trang này em thấy rất hay. Em đang tìm hiểu về Datalog with Ontology. Thầy có tài liệu gì hay có thể chia sẽ cho em với được không ạ. Em cảm ơn thầy.
ReplyDelete