Siêu dữ liệu (Metadata)

Một phần của tài liệu Ứng dụng công nghệ Web ngữ nghĩa trong đào tạo điện tử (Trang 29)

Chươn g2 Web ngữ nghĩa

2.1Siêu dữ liệu (Metadata)

Hiện tại, nội dung web chủ yếu được biểu diễn cho người đọc, không phải cho chương trình xử lý. Ngôn ngữ đánh dấu siêu văn bản HTML là ngôn ngữ chính dùng để viết một trang web (một cách trực tiếp hoặc thông qua các công cụ). Một phần trang web của một trung tâm tư vấn và thiết kế nhà cửa có thể được biểu diễn như sau:

<h1>Trung tâm tư vấn và thiết kế nhà cửa, nội thất ÁNH SÁNG</h1>

Chào mừng đến với trang web của Trung tâm tư vấn và thiết kế nhà cửa, nội thất ÁNH SÁNG.

Bạn hiện đang có kế hoạch xây nhà? Bạn đã có nhà nhưng đang băn khoăn về trang trí nội thất? Hãy để chúng tôi san sẻ bớt nỗi lo lắng, băn khoăn của bạn. Bạn sẽ cảm thấy hài lòng vì tính chuyên nghiệp và khả năng sáng tạo của đội ngũ kiến trúc sư đông đảo chúng tôi.

Liên hệ: Ngô Vĩnh Tiến, Hoàng Mạnh An, Vũ Thúy Bình (thư ký). Điện thoại: 047323199 – 047323198. <h2>Giờ làm việc</h2> Thứ hai 11am - 7pm<br> Thứ ba 11am - 7pm<br> Thứ tư 3pm - 7pm<br> Thứ năm 11am - 7pm<br>

Thứ sáu 11am - 3pm<p>

Không làm việc vào thời gian diễn ra <a href=”http://www.worldcup…”>World Cup 2006</a>.

Đối với con người, những thông tin được biểu diễn theo cách trên là chấp nhận được, nhưng đối với máy tính thì việc xử lý thông tin sẽ trở nên khó khăn. Việc tìm kiếm dựa trên từ khóa có thể thực hiện khi những từ như tư vấn, thiết kế nhà cửa, nội thất được nhận ra dễ dàng bởi danh sách từ đã có. Các tác tử (intelligent agent) thông minh có thể nhận ra đối tượng người tham gia trong quảng cáo. Nhưng những công cụ này không phân biệt được các thông tin chi tiết khác như đối tượng nào là kiến trúc sư, đối tượng nào là thư ký, và không nhận ra được World Cup 2006 là gì, thời gian đích xác diễn ra World Cup 2006 ra sao. Để biết được khoảng thời gian này, người dùng phải truy cập vào web site được cho bởi liên có trong trang web href=” http://www.worldcup…” để xem thông tin thêm.

Theo cách tiếp cận web ngữ nghĩa, giải pháp cho vấn đề trên không phải là phát triển các công cụ thông minh hơn mà là xây dựng các ngôn ngữ biểu diễn khác HTML cho nội dung trang web. Các ngôn ngữ này giúp cho máy tính nắm bắt và xử lý nội dung một cách dễ dàng hơn. Các thành phần được biểu diễn bằng loại ngôn ngữ đó được gọi là siêu dữ liệu, hay còn gọi là dữ liệu về dữ liệu. Đây là một khái niệm tương đối quen thuộc đối với khoa học công nghệ thông tin. Một ví dụ minh họa về mô tả nội dung trang web bằng siêu dữ liệu:

<company> <treatmentOffered>tư vấn</treatmentOffered> <treatmentOffered>thiết kế</treatmentOffered> <domainOffered>nhà</domainOffered> <domainOffered>nội thất</domainOffered> <companyName>ÁNH SÁNG</companyName> <staff>

<architect> Ngô Vĩnh Tiến</architect> < architect> Hoàng Mạnh An</architect> <secretary> Vũ Thúy Bình</secretary> </staff>

</company>

Siêu dữ liệu chính là thành phần mô tả một số ngữ nghĩa của dữ liệu, đây chính là khởi đầu của khái niệm ngữ nghĩa trong web ngữ nghĩa. Nhờ siêu dữ liệu,

những công việc phức tạp như rút trích thông tin trong văn bản, phân tích ngữ nghĩa, xử lý ngôn ngữ tự nhiên đôi khi trở nên không cần thiết.

Việc xây dựng siêu dữ liệu có thể được thực hiện trong quá trình làm nội dung trang web. Với sự phát triển hiện tại của công nghệ thông tin, người sử dụng không cần phải là chuyên gia về khoa học máy tính thì mới có thể xây dựng trang web. Người sử dụng có thể dùng các công cụ hỗ trợ để vừa xây dựng nội dung, vừa xây dựng siêu dữ liệu cho nó.

Tuy nhiên, một câu hỏi đặt ra là tại sao nên từ bỏ HTML và thay vào đó là sử dụng các ngôn ngữ siêu dữ liệu của web ngữ nghĩa. Để có được câu trả lời thích đáng, chúng ta có thể so sánh điều kiện hiện tại với sự khởi đầu của web. Thực chất, việc xóa bỏ sử dụng HTML một cách hoàn toàn là không chính xác. Quá trình chuyển đổi sử dụng sẽ phải dần dần được thực hiện. Ví dụ, những người sử dụng HTML đầu tiên quyết định dùng HTML có thể là vì nó được chuẩn hóa và họ mong rằng sẽ có được những ưu thế do chuẩn mang lại. Tiếp đến, ngày càng nhiều người hưởng ứng với môi trường này vì có nhiều công cụ web HTML tốt hơn ra đời. Và đến bây giờ HTML đã trở thành một chuẩn được chấp nhận trên toàn thế giới.

Tương tự như vậy, web ngữ nghĩa ngày càng được nhiều người quan tâm và phát triển. Một thành công ban đầu chúng ta có thể thấy rõ là sự thích ứng của người dùng đối ngôn ngữ đánh dấu mở rộng XML và cơ cấu tổ chức mô tả tài nguyên RDF. Đây chính là các công cụ quan trọng đối với mô tả siêu dữ liệu.

2.2 Ontology

Khái niệm ontology bắt nguồn từ triết học. Ontology hay còn gọi là bản thể học trong triết học là ngành khoa học nghiên cứu về sự tồn tại tự nhiên, một nhánh của trường phái siêu hình liên quan đến việc xác định các loại thực thể thật sự tồn tại và cách thức mô tả chúng. Ví dụ, theo trường phái này, thế giới được tạo nên bởi các thực thể xác định có thể nhóm lại thành các lớp trừu tượng dựa trên các thuộc tính chia sẻ. Đây là một nhận xét điển hình thể hiện cho cách nhìn nhận thế giới và cách phân tích và mô tả thế giới theo quan điểm của bản thể học.

Tuy nhiên, trong những năm gần đây, ontology trở thành một khái niệm được nói đến nhiều trong khoa học máy tính và có nghĩa tương đối khác so với nghĩa ban đầu của nó. Ontology được hiểu là một mô hình dữ liệu biểu diễn các khái niệm trong một lĩnh vực cụ thể, được sử dụng để lập luận về những đối tượng cùng mối quan hệ của chúng trong lĩnh vực đó.

Thông thường, một ontology bao gồm một danh sách hữu hạn các khái niệm và các quan hệ giữa những khái niệm này. Mỗi khái niệm thể hiện cho một lớp các đối tượng trong lĩnh vực cụ thể. Ví dụ, các khái niệm quan trọng trong một trường đại học là cán bộ, sinh viên, giáo viên, giảng đường, khóa học, môn học…

Mối quan hệ giữa các khái niệm thường là các quan hệ phân cấp thứ bậc của các lớp. Một quan hệ thứ bậc có thể là quan hệ cha con, một lớp A là lớp con của lớp B nếu mọi đối tượng của A đều thuộc lớp B. Ví dụ, mọi sinh viên đại học đều là học viên. Hình 2.1 mô tả một ví dụ về phân cấp thứ bậc các khái niệm liên quan đến trường đại học. Hình 2.1 Quan hệ phân cấp thứ bậc. Người của trường đại học Cán bộ Học viên

Sinh viên đại học Học viên cao học Cán bộ chuyên ngành Cán bộ quản lý Cán bộ hỗ trợ kỹ thuật Cán bộ chính qui của khoa

Cán bộ nghiên cứu

Cán bộ hợp tác đào tạo

Bên cạnh các quan hệ cha con của lớp, ontology cũng mô tả các quan hệ khác:  Thuộc tính (như giảng viên X giảng dạy học viên Y)

 Ràng buộc giá trị (số tiết dạy tối đa là 150 tiết một học kỳ)

 Quan hệ tách biệt (khoa và bộ phận hành chính khác của trường là tách biệt)  Các quan hệ lôgíc khác giữa các đối tượng (mọi khoa có ít nhất 3 bộ môn)

Đối với web, ontology phục vụ cho việc chia sẻ hiểu biết về các lĩnh vực. Những chia sẻ này là cần thiết để khắc phục các khó khăn khi sử dụng các thuật ngữ khác nhau trong trang web để nói về cùng một khái niệm. Ví dụ như trang web mô tả “car” và trang web mô tả “ô tô” thường có thành phần thông tin giống nhau vì cùng mô tả về một loại đối tượng. Bằng cách cùng ánh xạ “car” và “ô tô” đến cùng một ontology chia sẻ, ngữ nghĩa của các thành phần thông tin trong hai trang web sẽ nhất quán hơn.

Một vấn đề khác là các trang web khác nhau có thể dùng thuật ngữ với những nghĩa khác nhau. Ví dụ như trường đại học A có thể dùng từ “khóa học” để chỉ một hoạt động học lấy chứng chỉ, nhưng trường đại học B có thể dùng từ đó để chỉ một đơn vị môn học. Như vậy, việc khai thác thông tin sẽ bị hạn chế vì nghĩa của từ khóa là nhập nhằng. Khó khăn này có thể giải quyết bằng cách ánh xạ thuật ngữ cụ thể đến một ontology chia sẻ hoặc dịnh nghĩa trực tiếp các ánh xạ giữa các ontology. Như vậy, các thuật ngữ sẽ đi cùng với các khái niệm cụ thể trong một ontology chia sẻ. Bằng cách này, các ontology có khả năng liên kết các thao tác ngữ nghĩa.

Ontology được sử dụng cho việc tổ chức và điều hướng giữa các trang web. Rất nhiều trang web hiện nay hiển thị cây phân cấp các mức khái niệm ở phía bên phải. Người dùng có thể nhấp chuột để chọn hiển thị nội dung theo các khái niệm đó. (adsbygoogle = window.adsbygoogle || []).push({});

Ontology cũng được sử dụng để nâng cao mức độ chính xác của việc tìm kiếm trên web. Các máy tìm kiếm (search engine) có thể tìm đến các trang đề cập đến một khái niệm trong ontology thay vì tìm tất cả các trang mà từ khóa liên quan xuất hiện với ý nghĩa không rõ ràng. Theo cách này, các khó khăn trong việc tìm kiếm do các trang web hay câu truy vấn sử dụng các thuật ngữ khác nhau cho cùng một khái niệm sẽ được khắc phục.

Bên cạnh đó, các tìm kiếm trên web cũng có thể khai thác các thông tin mang tính tổng quát hóa hay cụ thể hóa. Nếu câu truy vấn không cho kết quả, máy tìm kiếm có thể gợi ý cho người sử dụng câu truy vấn tổng quát hơn. Thậm chí có thể tự động thực hiện câu truy vấn tổng quát và sẽ hiển thị nếu người dùng thông qua lời đề nghị. Trong trường hợp truy vấn cho rất nhiều kết quả, máy tìm kiếm có thể đề nghị người sử dụng các câu truy vấn cụ thể hóa nhằm thu hẹp phạm vi tìm kiếm.

Trong trí tuệ nhân tạo (Artificial Intelligence – AI), các ngôn ngữ cho ontology đã được phát triển và sử dụng trong một thời gian dài. Đây chính là nền tảng cho nghiên cứu phục vụ cho web ngữ nghĩa. Ở thời điểm hiện tại, các ngôn ngữ mô tả ontology quan trọng cho web gồm có:

 XML cung cấp các cú pháp cơ bản cho việc mô tả tài liệu một cách có cấu trúc, nhưng không áp đặt các ràng buộc ngữ nghĩa lên các biểu diễn này.  XML Schema – lược dồ XML là ngôn ngữ cho phép ràng buộc cấu trúc của

tài liệu mô tả bằng XML.

 RDF là một mô hình dữ liệu mô tả các đối tượng (tài nguyên) và mối quan hệ giữa chúng; Ngôn ngữ này biểu diễn các ngữ nghĩa cơ bản giữa các đối tượng và được xây dựng dựa trên cú pháp XML.

 RDF Schema – lược đồ RDF, là một ngôn ngữ mô tả từ vựng cho phép mô tả các thuộc tính và các lớp đối tượng tài nguyên trong RDF. Các mô tả này có thể là các quan hệ phân cấp tổng quát, cụ thể của các thuộc tính, các lớp.  OWL (Web Ontology Language) là một ngôn ngữ mô tả từ vựng phức tạp

hơn cho phép mô tả các thuộc tính và các lớp, các quan hệ giữa các lớp, các ràng buộc số lượng, các thuộc tính đa dạng, các đặc trưng của thuộc tính và các lớp liệt kê…

2.3 Lôgíc

Lôgíc là một ngành cơ bản nghiên cứu về nguyên lý của suy luận. Trước tiên, lôgíc cung cấp ngôn ngữ hình thức cho phép biểu diễn tri thức. Qua đó, lôgíc cũng cung chấp cho chúng ta ngữ nghĩa hình thức. Từ đó, các tri thức gián tiếp có thể được suy diễn từ những tri thức trực tiếp mô tả bằng ngôn ngữ hình thức cho bởi lôgíc. Quá

trình suy luận này được thực hiện bởi các máy suy luận hay mô tơ suy luận (inference engine), một khái niệm quen thuộc trong AI.

Một ví dụ về suy diễn là: giả sử chúng ta biết rằng tất cả các giáo sư đều là cán bộ giảng dạy của khoa, tất cả cán bộ giảng dạy của khoa đều là cán bộ của trường, và Toàn là một giáo sư. Trong logic vị từ, những thông tin này có thể được biểu diễn như sau: giao_su (X)  canbo_khoa (X) canbo_khoa (X)  canbo_truong (X) giao_su(Toàn). Từ đó chúng ta có suy diễn: canbo_khoa (Toàn) canbo_truong (Toàn) giao_su (X)  canbo_truong (X).

Tri thức biểu diễn trong ví dụ trên là thường thấy trong các ontology. Do đó, logic có thể được sử dụng để khám phá tri thức ẩn chứa trong các ontology. Bằng cách đó, các mối quan hệ không tường minh và các mâu thuẫn trong ontology có thể được phát hiện.

Tuy nhiên, logic là tổng quát hơn ontology. Nó có thể được các tác tử thông minh sử dụng để ra các quyết định hay chọn lựa các hành động. Ví dụ, một tác tử mua bán (shop agent) có thể quyết định giảm giá cho một khách hàng dựa trên luật

khach_hang_quen (X)  giam_gia(5%),

trong đó khái niệm khách hàng quen (khach_hang_quen) sẽ được quyết định bởi các thông tin được lưu trữ trong cơ sở dữ liệu của cửa hàng.

Thông thường, giữa sức mạnh biểu diễn và hiệu quả tính toán có một sự thỏa hiệp: sức biểu diễn càng cao thì công việc tính toán để đưa ra kết luận càng phức tạp. Tuy nhiên, hầu hết các tri thức liên quan đến web ngữ nghĩa thường bị giới hạn, thuộc dạng đơn giản, thường là dạng “Nếu điều kiện, Thì kết quả”; và các số lượng đối tượng được quan tâm sử dụng trong quá trình suy luận cũng thường là có giới hạn. Do đó, các logic trong web ngữ nghĩa là dễ kiểm soát hơn và được hỗ trợ bởi nhiều công cụ suy diễn hiệu quả.

Một ưu điểm quan trọng của logic là nó cung cấp các giải thích cho kết luận đưa ra: một chuỗi các bước suy diễn có thể ghi lại trong quá trình lập luận đưa ra kết quả. Không những vậy, Những nghiên cứu về trí tuệ nhân tạo đã phát triển cách biểu diễn các giải thích gần gũi với con người hơn bằng cách tổ chức các chứng minh như là một suy diễn tự nhiên, và bằng cách nhóm các bước suy luận nhỏ thành các bước suy luận khái quát hơn mà con người vẫn có thể nhận thức được. Tóm lại, một giải thích có thể được xây dựng bằng cách lưu vết các câu trả lời cho một tập các sự kiện cho trước và lưu vết các luật được sử dụng trong suy diễn.

Các giải thích cho kết quả suy luận là yếu tố quan trọng trong web ngữ nghĩa vì chúng làm tăng sự tin cậy của người dùng vào các tác tử trong môi trường web ngữ nghĩa. Các giải thích cũng cần thiết cho các tác tử thực hiện giao tiếp. Một số tác tử có khả năng suy luận để đưa ra kết quả, trong khi các tác tử khác chỉ có khả năng kiểm tra các bằng chứng nhằm khẳng định mức độ tin cậy và tính đúng đắn của thông tin trao đổi. Ví dụ, tác tử thứ nhất đại diện cho cửa hàng điện tử, gửi một thông điệp “Anh còn nợ 70.000 VND” đến tác tử thứ hai đại diện cho người mua hàng. Thông điệp này được mô tả bằng ngôn ngữ hình thức sao cho máy có thể xử lý được. Tác tử thứ hai sẽ yêu cầu giải thích cho thông điệp đó; tác tử thứ nhất phải phản hồi lại thông tin là một chuỗi các ghi nhận về biểu mẫu mua hàng đã thực hiện:

Biểu mẫu ghi nhận việc mua hàng với giá cả 70.000 VNĐ, Biểu mẫu ghi nhận việc giao hàng hoàn tất,

Các luật mô tả các khái niệm và điều kiện mua bán của cửa hàng:

purchase(X, Item) ∧ price(Item, Price) ∧ delivered(Item,X)  owes(X, Price) Theo cách này, các luật có thể được mô tả bằng các ontology về thương mại hay chính sách của cửa hàng, và được chia sẻ giữa các hệ thống khác nhau. Đồng thời, các sự kiện sẽ được lưu vết khi chuyển giao dữ liệu giữa các hệ thống và có thể kiểm tra được tính tin cậy của dữ liệu thông qua các công cụ (công cụ được sử dụng có thể là các tác tử) và các luật được chia sẻ.

Để logic trở nên có ích với web, nó phải sử dụng được trong mối liên kết với các dữ liệu khác, và phải được biểu diễn sao cho máy tính có thể dễ dàng nắm bắt và

Một phần của tài liệu Ứng dụng công nghệ Web ngữ nghĩa trong đào tạo điện tử (Trang 29)