Ứng dụng mạng ngữ nghĩa cho việc giải bài toán tam giác

19 506 0
Ứng dụng mạng ngữ nghĩa cho việc giải bài toán tam giác

Đ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

MỤC LỤC 1 ONTOLGY VÀ ỨNG DỤNG CỦA ONTOLOGY VÀO BÀI TOÁN TAM GIÁC I. Giới thiệu Ngày nay, với sự bùng nổ thông tin, nhất là thông tin trên web đang được rất nhiều nhà nghiên cứu quan tâm. Thế nhưng máy tính hiện nay chỉ có tác dụng nhận và hiển thị thông tin chứ không có khả năng đọc và hiểu được thông tin. Do vậy, việc tìm kiếm, tách chiết, lập luận để đưa ra tri thức cần thiết càng ngày càng khó khăn. Năm 1998, Tim Berners-Lee đã đề xuất ra web ngữ nghĩa (Semantic web), một sự phát triển của web hiện tại. Theo ông, web ngữ nghĩa ra đời sẽ khắc phục được những nhược điểm quan trong của web hiện tại, làm cho máy tính có thể hiểu thông tin trên web và như thế việc xử lý thông tin trên web trở nên thuận lợi và chính xác hơn. Cũng theo ông, nền tảng cơ bản của web ngữ nghĩa là Ontology. Trong một vài năm gần đây, việc áp dụng ontology như một hình thức biểu diễn tri thức trong các lĩnh vực ứng dụng khác nhau đã có những bước tiến quan trọng. Ontology mô tả không chỉ khái niệm và thuộc tính mà còn cung cấp các quan hệ cũng như các tiên đề phục vụ cho việc suy luận. Ontology có rất nhiều lợi thế như cho phép thêm ngữ nghĩa vào dữ liệu, quản lý và cập nhật tri thức, tích hợp dữ liệu cũng như tái sử dụng các thành phần dễ dàng hơn. Nhờ đó, ontology là mô tả chính thức của một số bộ từ vựng chuyên môn. Công dụng quan trọng nhất của ontology là biểu diễn tri thức. Ontology đã được sử dụng thành công trong các hệ thống chuyên gia, mạng ngữ nghĩa… Do hình thức lý thuyết là logic mô tả, ontology có lợi thế cả về diễn đạt ngữ nghĩa lẫn cơ chế suy luận. Mục tiêu của bài thu hoạch này là tiếp cận các kiến thức về ontology, cũng như xây dựng thử nghiệm một hệ cơ sở tri thức về lĩnh vực hình học phẳng mà cụ thể là giải bài toán tam giác. 2 II. Các khái niệm a. Bản thể Ontology Việc biểu diễn tri thức và lập luận là vấn đề then chốt cho quá trình xử lý thông tin tự động trong các hệ thống thông minh. Trong thời gian gần đây, một vấn đề quan trọng đã và đang được nhiều nhà nghiên cứu quan tâm đó là biểu diễn và xử lý tri thức trên Web. Năm 1998, Tim Berners-Lee đã nghiên cứu và phát triển Semantic web (web ngữ nghĩa), theo cách này các trang web không chỉ thực hiện chức năng nhận và hiển thị thông tin mà còn có khả năng tự động trích rút thông tin, truy vấn, lập luận trong cơ sở tri thức để có thể cho ra các thông tin một cách tự động, chính xác. Năm 2003, F, Baader đã phát triển logic mô tả (Description Logic – DLs) và xem nó như là ngôn ngữ biểu diễn cho tri thức trên web ngữ nghĩa. Từ đó việc nghiên cứu quá trình biểu diễn và lập luận trong web ngữ nghĩa được quan tâm tuy nhiên chỉ dừng lại đối với tri thức chắc chắn. Năm 2006, Umberto Straccia dựa vào nền tảng của logic mô tả và lý thuyết tập mờ của Zadeh (đưa ra năm 1965) đã đưa ra logic mô tả mờ (Fuzzy Description Logic) ) nhằm phục vụ cho việc xử lý tri thức không chắc chắn trên web ngữ nghĩa. Ontology là một thuật ngữ mượn từ triết học nhằm chỉ khoa học mô tả các loại thực thể trong thế giới thực và cách chúng liên kết với nhau. Trong khoa học máy tính, một cách khái quát, Ontology là "một biểu diễn của sự khái niệm hoá chung được chia sẻ" của một miền nhất định. Nó cung cấp một bộ từ vựng chung bao gồm các khái niệm, các thuộc tính quan trọng và các định nghĩa về các khái niệm và các thuộc tính này. Ngoài bộ từ vựng, Ontology còn cung cấp các ràng buộc, đôi khi các ràng buộc này được coi như các giả định cơ sở về ý nghĩa mong muốn của bộ từ vựng, nó được sử dụng trong một miền mà có thể được giao tiếp giữa người và các hệ thống ứng dụng phân tán khác. Định nghĩa 1: 3 Thông thường, ontology được định nghĩa như một cấu trúc bao gồm những thành phần sau (Gruber 1993; Fensel 2001) • C – tập các khái niệm (Concept); • I – tập các thể hiện của khái niệm • R – tập các quan hệ hai ngôi được định nghĩa trên C; • Z – tập các tiên đề, là các công thức logic biểu diễn các ràng buộc toàn vẹn trong tập các thể hiện và khái niệm Định nghĩa 2: Một ontology là một bộ tứ O = (C, P, R, A), trong đó: • C là một tập các khái niệm được định nghĩa trong một miền. Một khái niệm thường được xem như một lớp của ontology • P là một tập các thuộc tính. Một thuộc tính p € P được định nghĩa như một thể hiện của một quan hệ 3 ngôi có dạng p(c,v,f), trong đó c € C là một khái niệm ontology, v là một giá trị thuộc tính gắn với c và f là định nghĩa các mặt giới hạn trên v. Một vài mặt giới hạn bao gồm lọai (f t ), lực lượng (f c ) và phạm vi (f r ). Mặt giới hạn f t có thể là bất kỳ kiểu dữ liệu nào được hổ trợ bởi trình soạn thảo ontology, ví dụ như f t € {Boolean, integer, float, string, symbol, instance, class,…}. Mặt giới hạn lực lượng f c định nghĩa cận trên và cận dưới của số lượng giá trị thuộc tính. Mặt giới hạn phạm vi f r chỉ định một phạm vi các giá trị có thể gán cho thuộc tính. • R={r| r ⊆ C × C × R t } là một tập các quan hệ ngữ nghĩa hai ngôi được định nghĩa giữa các khái niệm trong C.R t = {một- một, một-nhiều, nhiều- nhiều} là tập các kiểu quan hệ. • A là một tập các tiên đề. Mỗi tiên đề là một chân lý hoặc luật suy diễn. 4 Hình 1: Mô hình ontology về bánh pizza Ontology lĩnh vực: Một Ontology lĩnh vực mô hình hóa một lĩnh vực chuyên môn, hay một phần của thế giới. Ontology lĩnh vực thể hiện những ý nghĩa riêng của các vấn đề khi áp dụng vào lĩnh vực đó. Ví dụ, từ “card” có rất nhiều nghĩa. Một ontology chuyên về bài pocker sẽ mô phỏng nghĩa “playing card” (lá bài) của thế giới, trong khi một ontology lĩnh vực về máy tính lại mô phỏng ý nghĩa “puched card” (thẻ đục lỗ) và “video card” (card màn hình). Định nghĩa 3: Một Ontology lĩnh vực định nghĩa một tập các thuật ngữ gọi là khái niệm. Các mối quan hệ giữa những khái niệm này diễn tả một thế giới mục tiêu. Ontology lĩnh vực được định nghĩa qua bốn tầng, bao gồm tầng lĩnh vực, tầng phân hệ, tầng sự kiện, và tầng chứa các lớp. Một ontology miền thể hiện một tên miền của một ontology và bao gồm nhiều phân hệ khác nhau được định nghĩa bởi các chuyên gia trong lĩnh vực. Mỗi phân 5 hệ được tổ hợp bởi các tập sự kiện, kế thừa từ những bản thông tin bởi các chuyên gia lĩnh vực. Mỗi sự kiện bao gồm một vài khái niệm của của tầng chứa lớp. Trong tầng chứa lớp, mỗi khái niệm chứa một tên khái niệm, một tập thuộc tính và một tập tóan tử cho một ứng dụng lĩnh vực. Ontology lĩnh vực có ba loại quan hệ, bao gồm khái quát hóa, quy nạp và liên đới. Quan hệ giữ lĩnh vực và các phân hệ tương ứng là sự khái quát hóa, thể hiện quan hệ “thuộc loại”. Quan hệ giữa mỗi phân hệ và những sự kiện tương ứng là sự quy nạp. Quan hệ quy nạp diễn tả quan hệ “là một phần của”. Liên đới là một quan hệ ngữ nghĩa giữa các lớp trong một tầng. Hình 2: Mô hình ontology lĩnh vực Ontology thượng tầng: Một ontology thượng tầng (hay ontology nền) là một mô hình các đối 6 tượng thuật ngữ thông dụng mà có thể áp dụng cho số lượng lớn các ontology miền. Ontology thượng tầng chứa một từ điển cốt lõi trong đó mô tả những đối tượng thuật ngữ thuộc một tập hợp các lĩnh vực. Có rất nhiều ontology được chuẩn hóa có thể sử dụng được, bao gồm Dublin Core, GFO, OpenCyc/ResearchCyc, SUMO, and DOLCE. WorldNet, đôi khi được xem như một ontology thượng tầng, thực ra không hoàn toàn là một ontology. Mặc dù vậy, WorldNet được cài đặt như là một công cụ ngôn ngữ để nghiên cứu ontology lĩnh vực. b. Logic mô tả Logic mô tả (Description logics, viết tắt DL) là một họ các ngôn ngữ biểu diễn tri thức có thể sử dụng để biểu diễn tri thức thuật ngữ của một miền ứng dụng theo một cách có cấu trúc và được hiểu rõ một cách hình thức. Mặt khác, cái tên logic mô tả có ý nói đến các mô tả về khái niệm được dùng để mô tả một miền và ngữ nghĩa dựa trên logic (logic-based semantics) thu được qua việc dịch từ logic mệnh đề bậc nhất. Logic mô tả được thiết kế như là một mở rộng của khung ngữ nghĩa (semantic frame) và lưới ngữ nghĩa (semantic network), vốn không được trang bị một ngữ nghĩa dựa trên logic hình thức. Cú pháp: bao gồm • Một tập các ký hiệu mệnh đề dùng để ký hiệu các tên khái niệm (concept name); • Một tập các ký hiệu mệnh đề đôi để ký hiệu các tên vai trò (role name); • Một định nghĩa đệ quy để định nghĩa các thuật ngữ khái niệm từ các tên khái niệm và tên vai trò bằng cách sử dụng các tạo tử (constructor) Trong lôgic mô tả, các tên khái niệm được xem là các khái niệm nguyên tử, các tên vai trò được coi là các vai trò nguyên tử. Nhìn chung, 7 một khái niệm đại diện cho tập các cá thể thuộc về nó, và một vai trò đại diện cho một quan hệ giữa các khái niệm. Cú pháp của một thành viên trong gia đình lôgic mô tả được đặc trưng bởi định nghĩa đệ quy của nó, các định nghĩa đệ quy này định nghĩa các tạo tử có thể được dùng để tạo các thuật ngữ khái niệm. Một số tạo tử thông dụng bao gồm các tạo tử lôgic trong logic bậc nhất như phép giao (intersection) hay tuyển (conjunction) của các khái niệm, phép hợp (union) hay hội (disjunction) của các khái niệm, phép phủ định (negation) hay lấy phần bù (complement) của các khái niệm, hạn chế giá trị (hạn chế với mọi - universal restriction), hạn chế tồn tại (existential resctriction), v.v Các tạo tử khác có thể còn bao gồm các hạn chế đối với các vai trò thường thấy trong các quan hệ nhị phân, ví dụ, tính đảo (inverse), tính bắc cầu (transitivity), chức năng (functionality), v.v Đặc biệt đối với phép giao và phép hợp, logic mô tả sử dụng các ký hiệu ∏ và ┐ để phân biệt chúng với và trong lôgic bậc nhất.∧ ∨ Dưới đây là một ví dụ về định nghĩa cú pháp của logic mô tả: • một khái niệm nguyên tử là một khái niệm; • khái niệm đỉnh ( ) là một khái niệm; • khái niệm đáy ( ) là một khái niệm; • phần bù của một khái niệm C cũng là một khái niệm (ký hiệu là ¬C); • giao của hai khái niệm C và D cũng là một khái niệm ; • nếu C là một khái niệm và R là một tên vai trò, thì R.C (hạn chế giá trị) cũng là một khái niệm; • nếu R là một tên vai trò, thì R.(hạn chế tồn tại) cũng là một khái niệm Ngữ nghĩa: Ngữ nghĩa của lôgic mô tả được định nghĩa bằng cách giải nghĩa các khái niệm như là các tập hợp gồm các cá thể, và các vai trò như là các tập gồm các cặp cá thể. Các cá thể đó thường được cho là thuộc một miền 8 xác định cho trước. Sau đó, ngữ nghĩa của các khái niệm và vai trò không nguyên tử được định nghĩa theo các khái niệm và vai trò nguyên tử. Điều này được thực hiện bằng một định nghĩa đệ quy tương tự như trong cú pháp. III. Phương pháp xây dựng Ontolog Quy trình phát triển Ontology là một quy trình gồm nhiều bước, tuy nhiên vẫn chưa có một phương pháp chuẩn hóa nào để phát triển các ontologies. Sau đây là quy trình phát triển gồm 7 bước do Stanford Center for Biomedical Informatics Research đưa ra (đây là nhóm phát triển phần mềm Protégé để trình diễn và soạn thảo Ontology). Bước 1: Xác định lĩnh vực và phạm vi của Ontology Trong giai đoạn này cần xác định mục đích của việc xây dựng ontology là gì? Phục vụ đối tượng nào? Ontology sắp xây dựng cần có đặc điểm gì, liên quan đến lĩnh vực, phạm vi nào. Quá trình khai thác, quản lý và bảo trì ontology được thực hiện ra sao? Bước 2: Xem xét việc sử dụng lại các ontology có sẵn Cấu trúc của một Ontology bao gồm 3 tầng: tầng trừu tượng (Abstract), tầng miền xác định (Domain) và tầng mở rộng (Extension). Trong đó tầng trừu tượng có tính tái sử dụng rất cao, tầng miền xác định có thể tái sử dụng trong một lĩnh vực nhất định. Cộng đồng Ontology cũng đang lớn mạnh và có rất nhiều Ontology đã được tạo ra, với tâm huyết của nhiều chuyên gia. Do đó trước khi bắt đầu xây dựng ontology, cần xét đến khả năng sử dụng lại các ontology đã có. Nếu có thể sử dụng lại một phần các ontology đã có, chi phí bỏ ra cho quá trình xây dựng ontology sẽ giảm đi rất nhiều. Bước 3: Liệt kê các thuật ngữ quan trọng Ontology được xây dựng trên cơ sở các khái niệm trong một lĩnh vực cụ thể, vì vậy khi xây dựng ontology cần bắt đầu từ các thuật ngữ chuyên 9 ngành để xây dựng thành các lớp trong ontology tương ứng. Tất nhiên không phải thuật ngữ nào cũng đưa vào ontology, vì chưa chắc đã định vị được cho thuật ngữ đó. Do đó cần phải liệt kê các thuật ngữ, để xác định ngữ nghĩa cho các thuật ngữ đó, cũng như cân nhắc về phạm vi của ontology. Việc liệt kê các thuật ngữ còn cho thấy được phần nào tổng quan về các khái niệm trong lĩnh vực đó, giúp cho các bước tiếp theo được thuận lợi. Bước 4: Xác định các lớp và phân cấp của các lớp Công việc xác định các lớp không chỉ đơn giản là tiến hành tìm hiểu về ngữ nghĩa của các thuật ngữ đã có để có được các mô tả cho thuật ngữ đó, mà còn phải định vị cho các lớp mới, loại bỏ ra khỏi ontology nếu nằm ngoài phạm vi của ontology hay hợp nhất với các lớp đã có nếu có nhiều thuật ngữ có ngữ nghĩa như nhau (đồng nghĩa, hay đa ngôn ngữ). Ngoài ra không phải thuật ngữ nào cũng mang tính chất như một lớp. Một công việc cần phải tiến hành song song với việc xác định các lớp là xác định phân cấp của các lớp đó. Việc này giúp định vị các lớp dễ dàng hơn. Có một số phương pháp tiếp cận trong việc xác định phân cấp của các lớp:  Phương pháp từ trên xuống (top-down): bắt đầu với định nghĩa của các lớp tổng quát nhất trong lĩnh vực và sau đó chuyên biệt hóa các khái niệm đó. Ví dụ: Trong Ontology về quản lý nhân sự, ta bắt đầu với lớp Người, sau đó chuyên biệt hóa lớp Người đó bằng cách tạo ra các lớp con của lớp Người như : Kỹ sư, Công nhân, Bác sỹ,… Lớp Kỹ sư cũng có thể chuyên biệt hóa bằng cách tạo ra các lớp con như Kỹ sư CNTT, Kỹ sư điện, Kỹ sư cơ khí, …  Phương pháp từ dưới lên (bottom-up): bắt đầu với định nghĩa của các lớp cụ thể nhất, như các lá trong cây phân cấp. Sau đó gộp các lớp đó lại thành các khái tổng quát hơn. Ví dụ: ta bắt đầu với việc 10 [...]... định nghĩa trong các Ontology d Ứng dụng mạng ngữ nghĩa cho việc giải bài toán tam giác Bài Toán : Cho hai góc α,β và chiều dài cạnh a của tam giác Tính chiều dài đường cao hC" Với mỗi bài tập này, việc bạn cần làm là lấy giấy bút ra tìm cách tính, sau khi đã xác định các bước tính toán, bạn chuyển nó thành chương trình Nếu có 10 bài, bạn phải làm lại việc tính toán rồi lập trình 10 lần Nếu có 100 bài, ... sẽ được giải bằng mạng ngữ nghĩa Có 22 yếu tố liên quan đến cạnh và góc của tam giác Để xác định một tam giác hay để xây dựng một 1 tam giác ta cần có 3 yếu tố trong đó phải có yếu tố cạnh Như vậy có khoảng C322 -1 (khoảng vài ngàn) cách để xây dựng hay xác định một tam giác Theo thống kê, có khoảng 200 công thức liên quan đến cạnh và góc 1 tam giác Để giải bài toán này bằng công cụ mạng ngữ nghĩa, ... sung cho thông tin trên web để các máy tính có thể hiểu và giải quyết những vấn đề ngữ nghĩa phức tạp Mạng ngữ nghĩa được tổ chức dưới dạng một đồ thị, trong đó các nút biểu diễn các đối tượng và cung biểu diễn quan hệ giữa các đối tượng Một mô hình mạng ngữ nghĩa Không chỉ thuận lợi cho việc tìm kiếm thông tin, mạng ngữ nghĩa còn hỗ trợ cơ chế suy diễn khá hiệu quả mà điển hình là bài toán tam giác. .. : ứng với công thức Mỗi cột ứng với một công thức tam giác khác nhau (đỉnh hình chữ nhật) Dòng : ứng với yếu tố tam giác Mỗi dòng ứng với một yếu tố tam giác khác nhau (đỉnh hình tròn) Phần tử A[i, j] = -1 nghĩa là trong công thức ứng với cột j có yếu tố tam giác ứng với cột i Ngược lại A[i,j] = 0 Để thực hiện thao tác "kích hoạt" một đỉnh hình tròn, ta đặt giá trị của toàn dòng ứng với yếu tố tam giác. .. ngữ nghĩa, ta phải sử dụng khoảng 200 đỉnh để chứa công thức và khoảng 22 đỉnh để chứa các yếu tố của tam giác Mạng ngữ nghĩa cho bài toán này có cấu trúc như sau : Đỉnh của đồ thị bao gồm hai loại : Đỉnh chứa công thức (ký hiệu bằng hình chữ nhật) Đỉnh chứa yếu tố của tam giác (ký hiệu bằng hình tròn) • • Cung : chỉ nối từ đỉnh hình tròn đến đỉnh hình chữ nhật cho biết yếu tố tam giác xuất hiện trong... tin buồn cho bạn là số lượng bài toán thuộc loại này là rất nhiều! Bởi vì một tam giác có tất cả 22 yếu tố 15 khác nhau! Không lẽ mỗi lần gặp một bài toán mới, bạn đều phải lập trình lại? Liệu có một chương trình tổng quát có thể tự động giải được tất cả (vài ngàn!) những bài toán tam giác thuộc loại này không? Câu trả lời là CÓ ! Và ngạc nhiên hơn nữa, chương trình này lại khá đơn giản Bài toán này... Ưu điểm Mạng ngữ nghĩa rất linh động, ta có thể dễ dàng thêm vào mạng các đỉnh hoặc cung mới để bổ sung các tri thức cần thiết Mạng ngữ nghĩa có tính trực quan cao nên rất dễ hiểu Mạng ngữ nghĩa cho phép các đỉnh có thể thừa kế các tính chất từ các đỉnh khác thông qua các cung loại "là", từ đó, có thể tạo ra các liên kết "ngầm" giữa những đỉnh không có liên kết trực tiếp với nhau 18 Mạng ngữ nghĩa hoạt... trung vào việc cài đặt cơ sở dữ liệu và các thuật toán xử lý, mô hình Ontology hướng nỗ lực của người thiết kế sang việc khai báo và mô tả tri thức Việc này còn cho phép những chuyên gia có thể tạo dựng nên những ứng dụng hữu ích mà không cần am hiểu nhiều về lập trình Đây rõ ràng là mục tiêu mà các ngôn ngữ lập trình thế hệ mới đang cố gắng hiện thực hóa c Mạng ngữ nghĩa Người đặt nền tảng cho mạng thông... Nhược điểm Cho đến nay, vẫn chưa có một chuẩn nào quy định các giới hạn cho các đỉnh và cung của mạng Nghĩa là bạn có thể gán ghép bất kỳ khái niệm nào cho đỉnh hoặc cung! Tính thừa kế (vốn là một ưu điểm) trên mạng sẽ có thể dẫn đến nguy cơ mâu thuẫn trong tri thức Sở dĩ có điều này là vì có sự không rõ ràng trong ngữ nghĩa gán cho một nút của mạng Bạn đọc có thể phản đối quan điểm vì cho rằng, việc sinh... đưa ra cách giải hình thức của bài toán và thậm chí còn có thể chọn được cách giải hình thức tối ưu (tối ưu hiểu theo nghĩa là cách giải sử dụng những công thức đơn giản nhất) Sở dĩ có thể nói như vậy vì cách suy luận của ta trong bài toán này là tìm kiếm theo chiều rộng Do đó, khi đạt đến kết quả, ta có thể có rất nhiều cách khác nhau Để có thể chọn được giải pháp tối ưu, bạn cần phải định nghĩa được . nghĩa trong các Ontology. d. Ứng dụng mạng ngữ nghĩa cho việc giải bài toán tam giác Bài Toán : Cho hai góc α,β và chiều dài cạnh a của tam giác. Tính chiều dài đường cao hC". Với mỗi bài. hình mạng ngữ nghĩa Không chỉ thuận lợi cho việc tìm kiếm thông tin, mạng ngữ nghĩa còn hỗ trợ cơ chế suy diễn khá hiệu quả mà điển hình là bài toán tam giác tổng quát. Việc tiếp cận ngữ nghĩa. đặt mạng ngữ nghĩa giải bài toán tam giác bằng một mảng hai chiều A trong đó : Cột : ứng với công thức. Mỗi cột ứng với một công thức tam giác khác nhau (đỉnh hình chữ nhật). Dòng : ứng với

Ngày đăng: 10/04/2015, 11:08

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan