88
Trí TuNhân To Nguyn Nht Quang [email protected] Vin Công nghThông tin và Truyn thông Trường Đại hc Bách Khoa Hà Ni Năm hc 2009-2010

Nguyễn Nhật Quang - WordPress.comKhó khăn trong việc thay đổi (cập nhật) cơ sở tri thức Cơ sở tri thức cũ: {IF A 1 THEN B 1, IF A 2 THEN B 2, …, IF A n

  • Upload
    others

  • View
    7

  • Download
    0

Embed Size (px)

Citation preview

Trí Tuệ Nhân Tạo

Nguyễn Nhật Quang

[email protected]

Viện Công nghệ Thông tin và Truyền thôngTrường Đại học Bách Khoa Hà Nội

Năm học 2009-2010

Nội dung môn học:Giới thiệu về Trí tuệ nhân tạo

Tác tử

Giải quyết vấn đề: Tìm kiếm, Thỏa mãn ràng buộc

Logic và suy diễn

Biểu diễn tri thứcLuật sản xuấtKhungKhungMạng ngữ nghĩaOntology

ễ ắ ắSuy diễn với tri thức không chắc chắn

Học máy

Lập kế hoặchLập kế hoặch

Trí Tuệ Nhân Tạo2

Dữ liệu, Thông tin, Tri thức (1)Dữ liệu (data) thường được định nghĩa là các sự kiện (facts) hoặc các ký hiệu (symbols)(facts) hoặc các ký hiệu (symbols)

Thông tin (information) thường được định nghĩa là dữ liệu đã được xử lý hoặc chuyển đổi thành những dạngliệu đã được xử lý hoặc chuyển đổi thành những dạng hoặc cấu trúc phù hợp cho việc sử dụng của con người

Thông tin có được sau (chứ không xuất hiện trước) dữThông tin có được sau (chứ không xuất hiện trước) dữ liệu

Tri thức (knowledge) thường được định nghĩa là sự ( g ) g ợ ị g ựhiểu biết (nhận thức) về thông tin

Trí Tuệ Nhân Tạo 3

Dữ liệu, Thông tin, Tri thức (2)

Knowledge on knowledge(e.g., how/when to apply)

Meta-Knowledge

Understanding of a domain. Can be applied to

Knowledge-based

systems

KnowledgeKnowledge

Lower volume. Higher

ppsolve problems

InformationData

gvalue. With context and associated meanings

Managementinformation

systemsDatabases,transaction

systemsLarge volume. Low value. Usually no meaning/ context

systems

Trí Tuệ Nhân Tạo 4

(Adapted from “Knowledge Engineering course (CM3016), by K. Hui 2008-2009”)

Dữ liệu, Thông tin, Tri thức (3)Dữ liệu

Nhiệt độ ngoài trời là 5 độ CNhiệt độ ngoài trời là 5 độ C

Thông tinNgoài trời thời tiết lạnhNgoài trời thời tiết lạnh

Tri thứcNếu ngoài trời thời tiết lạnh thì bạn nên mặc áo choàng ấm (khi điNếu ngoài trời thời tiết lạnh thì bạn nên mặc áo choàng ấm (khi đi ra ngoài)

→Giá trị (sử dụng) của dữ liệu tăng lên khi nó được “chuyển đổi” thành tri thức

→Sử dụng tri thức sẽ cho phép đưa ra các quyết định phù h à hiệ ảhợp và hiệu quả

Trí Tuệ Nhân Tạo 5

Biểu diễn tri thức (1)( )Biểu diễn tri thức (Knowlegde representation) là một lĩnh vực nghiên cứu quan trọng của Trí tuệ nhân tạovực nghiên cứu quan trọng của Trí tuệ nhân tạo

Nhằm phát triển các phương pháp, cách thức biểu diễn tri thức và các công cụ hỗ trợ việc biểu diễn tri thức

Tồn tại nhiều phương pháp biểu diễn tri thứcLuật sản xuất (Production rules)Khung (Frames)Mạng ngữ nghĩa (Semantic networks)OntologyOntologyCác mô hình xác suất…

Trí Tuệ Nhân Tạo 6

Biểu diễn tri thức (2)( )Tính hoàn chỉnh (Completeness)

Phương pháp biểu diễn có hỗ trợ việc thu thập và thể hiện mọiPhương pháp biểu diễn có hỗ trợ việc thu thập và thể hiện mọi khía cạnh của tri thức (của một lĩnh vực cụ thể)?

Tính ngắn gọn (Conciseness)Phương pháp biểu diễn có cho phép việc thu thập tri thức một cách hiệu quả?Phương pháp biểu diễn có cho phép việc lưu trữ và truy nhập dễ g p p p p y pdàng tri thức không?

Tính hiệu quả về tính toán (Computational efficiency)

Tính rõ ràng, dễ hiểu (Transparency)Phương pháp biểu diễn có cho phép diễn giải (để người dùng hiểu) về các hoạt động và các kết luận của hệ thống?hiểu) về các hoạt động và các kết luận của hệ thống?

Trí Tuệ Nhân Tạo 7

Biểu diễn tri thức bằng luật (1)Biểu diễn tri thức bằng các luật (rules) là cách biểu diễn phổbiến nhất trong các hệ cơ sở tri thứcg ệ

Một luật chứa đựng (biểu diễn) tri thức về việc giải quyết một vấn đề nàođóCác luật được tạo nên khá dễ dàng, và dễ hiểug

Một luật được biểu diễn ở dạng:

IF A1 AND A2 AND … AND An THEN B1 2 n

AiLà các điều kiện (conditions, antecedents, premises)

BLà kết luận (conclusion, consequence, action)

Trí Tuệ Nhân Tạo 8

Biểu diễn tri thức bằng luật (2)Mệnh đề điều kiện của một luật

Không cần sử dụng toán tử logic ORKhông cần sử dụng toán tử logic ORMột luật với toán tử logic OR trong mệnh đề điều kiện, thì sẽ được chuyển thành một tập các luật tương ứng không chứa ORVí dụ: Luật (IF A ∨A THEN B) được chuyển thành 2 luật (IFVí dụ: Luật (IF A1∨A2 THEN B) được chuyển thành 2 luật (IF A1 THEN B) và (IF A2 THEN B)

Mệnh đề kết luận của một luậtMệnh đề kết luận của một luậtKhông cần sử dụng toán tử logic ANDMột luật với toán tử logic AND trong mệnh đề kết luận, thì sẽ được chuyển thành một tập các luật tương ứng không chứa ANDđược chuyển thành một tập các luật tương ứng không chứa ANDVí dụ: Luật (IF … THEN B1∧B2) được chuyển thành 2 luật (IF … THEN B1) and (IF … THEN B2)

Không cho phép sử dụng toán tử OR!Trí Tuệ Nhân Tạo 9

Các kiểu luậtậCác kiểu luật khác nhau để biểu diễn các kiểu tri thức khác nhaukhác nhau

Quan hệ liên kếtIF addressAt(x, Hospital) THEN heathIs(x, Bad)

Quan hệ nguyên nhân (kết quả)IF diseaseType(x, Infection) THEN tempIs(x, High)High)

Tình huống và hành động (gợi ý)IF diseaseType(x, Infection) THEN takeMedicine(x, Antibiotic)

Quan hệ logicIF tempGreater(x, 37) THEN isFever(x)IF tempGreater(x, 37) THEN isFever(x)

Trí Tuệ Nhân Tạo 10

Đồ thị AND/OR (1)ị ( )

IF (Shape=long) AND (Color=(green OR yellow)) THEN (Fruit=banana)

IF (Shape=(round OR oblong)) AND (Diam > 4) THEN (Fruitclass=vine)

IF (Fruitclass=vine) AND (Color=green) THEN (Fruit=watermelon)

Shape=long

Shape=round

Fruit = bananaAND

Shape=round

Shape=oblong

Diam > 4Fruitclass = vine

OR

Diam 4

Color=green

Color=yellowFruit = watermelon

Trí Tuệ Nhân Tạo 11

y

Đồ thị AND/OR (2)ị ( )Luật IF (Shape=long) AND (Color=(green OR yellow)) THEN (Fruit=banana) được tạo nên bởi các luật:THEN (Fruit banana) được tạo nên bởi các luật:

IF (Shape=long) AND (Color=green) THEN (Fruit=banana)

IF (Shape=long) AND (Color=yellow) THEN (Fruit=banana)( p g) ( y ) ( )

Luật IF (Shape=(round OR oblong)) AND (Diam > 4) THEN (Fruitclass=vine) được tạo nên bởi các luật:THEN (Fruitclass=vine) được tạo nên bởi các luật:

IF (Shape=round) AND (Diam > 4) THEN (Fruitclass=vine)

IF (Shape=oblong) AND (Diam > 4) THEN (Fruitclass=vine)IF (Shape=oblong) AND (Diam > 4) THEN (Fruitclass=vine)

Trí Tuệ Nhân Tạo 12

Các vấn đề với biểu diễn luậtậCác luật có chứa các vòng lặp

IF A THEN AIF A THEN A{IF A THEN B, IF B THEN C, IF C THEN A}

Các luật có chứa mâu thuẫn{IF A THEN B, IF B THEN C, IF A AND D THEN ¬C}

Các kết luận không thể suy ra được (từ các luật hiện có)

Khó khăn trong việc thay đổi (cập nhật) cơ sở tri thứcCơ sở tri thức cũ: {IF A1 THEN B1, IF A2 THEN B2, …, IF AnTHEN B }THEN Bn}Cần bổ sung thêm điều kiện C vào tất cả các luậtCơ sở tri thức mới: {IF A1 AND C THEN B1, IF A2 AND C THEN B IF A AND C THEN B }B2, …, IF An AND C THEN Bn}

Trí Tuệ Nhân Tạo 13

Sử dụng các luật trong suy diễn

So khớp mẫu (Pattern matching)Để kiểm tra một luật có thể được sử dụng (áp dụng) hay khôngĐể kiểm tra một luật có thể được sử dụng (áp dụng) hay khôngVí dụ: Nếu cơ sở tri thức chứa đựng tập các luật {IF A1 THEN B1, IF A1 AND A2 THEN B2, IF A2 AND A3 THEN B3} và các sự kiện (được lưu trong bộ nhớ làm việc) bao gồm A1 và A2 thì 2sự kiện (được lưu trong bộ nhớ làm việc) bao gồm A1 và A2, thì 2 luật đầu tiên có thể được sử dụng

Chuỗi suy diễn (chuỗi áp dụng các luật)y ( p ụ g ậ )Xác định trật tự áp dụng các luật trong quá trình suy diễnVới một tập các luật và một tập các sự kiện (các giả thiết), các luật nào nên được sử dụng và theo trật tự nào để đạt tới (suy ra)luật nào nên được sử dụng, và theo trật tự nào, để đạt tới (suy ra) một kết luật cần chứng minh?2 chiến lược suy diễn: tiến (forward) vs. lùi (backward)2 chiến lược suy diễn này đã được trình bày trong bài trước!2 chiến lược suy diễn này đã được trình bày trong bài trước!

Trí Tuệ Nhân Tạo 14

Giải quyết xung độtq y g ộMột xung đột (conflict) xảy ra khi có nhiều hơn một luật có thể áp dụng được (phù hợp với các sự kiện trong bộcó thể áp dụng được (phù hợp với các sự kiện trong bộ nhớ làm việc)

Lưu ý, một xung đột không phải là một mâu thuẫn của tập luật

Trong trường hợp xảy ra xung đột, cần một chiến lược giải quyết xung đột (conflict resolution strategy - CRS) đểgiải quyết xung đột (conflict resolution strategy CRS) để quyết định luật nào được (ưu tiên) áp dụng

Sự lựa chọn thích hợp một chiến lược giải quyết xungSự lựa chọn thích hợp một chiến lược giải quyết xung đột có thể mang lại những cải thiện đáng kể đối với quá trình suy diễn của hệ thống

Trí Tuệ Nhân Tạo 15

Chiến lược giải quyết xung độtÁp dụng luật xuất hiện đầu tiên (theo thứ tự) trong cơ sở tri thứctri thứcKhông áp dụng các luật sinh ra các kết quả (sự kiện) đã có trong bộ nhớ làm việcÁp dụng luật cụ thể nhất (luật có nhiều điều kiện nhất)Áp dụng các luật phù hợp với các sự kiện được đưa vào trong bộ nhớ làm việc gần thời điểm hiện tại nhấttrong bộ nhớ làm việc gần thời điểm hiện tại nhấtKhông áp dụng lại một luật, nếu nó vẫn sinh ra cùng một tập các sự kiện (giống như lần áp dụng trước của nó)ập ự ệ (g g p ụ g )Áp dụng luật có độ tin cậy (chắc chắn) cao nhất…Kết hợp của các chiến lược trên

Trí Tuệ Nhân Tạo 16

Hệ thống suy diễn dựa trên luật (1)

Kiến trúc điển hình của một hệ thống suy diễn dựa trên luật (Rule-based system – RBS)

Dữ liệu quan sát được

Working memory Cập nhậtLựa chọn

Rule Interpretermemory InterpreterÁp dụng Kết quả

Trí Tuệ Nhân Tạo 17

(http://www.cwa.mdx.ac.uk/bis2040/johnlect.html)

Hệ thống suy diễn dựa trên luật (2)

Bộ nhớ làm việc (Working memory)Lưu giữ các sự kiện (các giả thiết đúng đã được chứng minh)Lưu giữ các sự kiện (các giả thiết đúng, đã được chứng minh)Các sự kiện này sẽ quyết định những luật nào được áp dụng (bởi thành phần Interpreter)

Bộ hớ á l ật (R l )Bộ nhớ các luật (Rule memory)Chính là cơ sở tri thức của hệ thốngLưu giữ các luật có thể áp dụng

Bộ diễn dịch (Interpreter)Hệ thống bắt đầu bằng việc đưa một sự kiện (dữ liệu) phù hợp vào bộ nhớ làm việcvào bộ nhớ làm việcKhi sự kiện (dữ liệu) trong bộ nhớ làm việc phù hợp với các điều kiện của một luật trong bộ nhớ các luật, thì luật đó sẽ được áp dụngdụng

Trí Tuệ Nhân Tạo 18

RBS – Ưu điểm (1)( )Cách biểu diễn (diễn đạt) phù hợp

Rất gần với cách diễn đạt trong ngôn ngữ tự nhiênRất gần với cách diễn đạt trong ngôn ngữ tự nhiênRất dễ dàng để diễn đạt các tri thức bởi các luật

Dễ hiểuDễ hiểuCác luật dạng IF-THEN rất dễ hiểu (có lẽ là dễ hiểu nhất) đối với người sử dụng

ể ể ễ ằTrong một lĩnh vực (bài toán) cụ thể, cách biểu diễn bằng luật giúp các chuyên gia trong lĩnh vực này có thể đánh giá và cải tiến các luật

Trí Tuệ Nhân Tạo 19

RBS – Ưu điểm (2)( )Một cách biểu diễn tri thức theo kiểu khai báo (declarative)(declarative)

Kỹ sư tri thức thu thập các tri thức (ở dạng các luật IF-THEN) về một lĩnh vực cụ thể, và đưa chúng vào trong một cơ sở các luật (rule base)(rule base)Kỹ sư tri thức (có thể) không cần phải quan tâm đến khi nào, làm thế nào, và theo trật tự nào mà các luật được sử dụng – Hệ thống sẽ tự động đảm nhận các nhiệm vụ nàysẽ tự động đảm nhận các nhiệm vụ này

Dễ dàng mở rộng cơ sở tri thứcChỉ việc bổ sung thêm các luật mới (các tri thức mới) vào cuốiChỉ việc bổ sung thêm các luật mới (các tri thức mới) vào cuối của cơ sở các luật

Trí Tuệ Nhân Tạo 20

RBS – Nhược điểmợKhả năng biểu diễn (diễn đạt) bị giới hạn

Trong nhiều lĩnh vực bài toán thực tế tri thức của lĩnh vực bàiTrong nhiều lĩnh vực bài toán thực tế, tri thức của lĩnh vực bài toán đó không phù hợp với cách biểu diễn dạng (IF-THEN)

Sự tương tác giữa các luật và trật tự của các luật trongSự tương tác giữa các luật và trật tự của các luật trong cơ sở luật có thể gây ra các hiệu ứng không mong muốn

Trong quá trình thiết kế (design) và bảo trì (maintenance )một cơ ở l ật ỗi l ật ới đ đ à ầ hải đ â hắsở luật, mỗi luật mới được đưa vào cần phải được cân nhắc

(kiểm tra) với các luật đã có từ trướcRất khó khăn và chi phí tốn kém để xem xét tất cả các tương tác (i t ti ) ó thể iữ á l ật(interactions) có thể giữa các luật

Trí Tuệ Nhân Tạo 21

Biểu diễn tri thức bằng khung (1)

Làm thế nào để biểu diễn tri thức “Xe buýt màu vàng”?Giải há thứ 1 ll (b )Giải pháp thứ 1. Yellow(bus)

Câu hỏi “Cái gì là màu vàng?” có thể trả lời đượcNhưng câu hỏi “Màu của xe buýt là gì?” thì không thể trả lời đượcg ý g g ợ

Giải pháp thứ 2. Color(bus, yellow)Câu hỏi “Cái gì là màu vàng?” có thể trả lời đượcCâu hỏi “Màu của xe buýt là gì?” có thể trả lời đượcNhưng câu hỏi “Thuộc tính nào của xe buýt có giá trị là màu vàng?” thì không thể trả lời được

Giải pháp thứ 3. Prop(bus, color, yellow)Tất cả 3 câu hỏi trên đều có thể trả lời được

Trí Tuệ Nhân Tạo 22

Biểu diễn tri thức bằng khung (2)

Một đối tượng được biểu diễn bởi: (Obj t P t V l )(Object, Property, Value)Được gọi là cách biểu diễn bằng bộ ba đốitượng-thuộc tính-giá trị (object-property-value)

Nếu chúng ta gộp nhiều thuộc tính của cùngmột kiểu đối tượng thành một cấu trúc, thìchúng ta có cách biể diễn h ớng đối t ợng Objectchúng ta có cách biểu diễn hướng đối tượng(object-centered representation)

Prop(Object, Property1, Value1)

Property1

Property2

Object

p( j , p y1, 1)Prop(Object, Property2, Value2)…Prop(Object Property Value )

. . .Propertyn

Trí Tuệ Nhân Tạo 23

Prop(Object, Propertyn, Valuen)

Biểu diễn hướng đối tượngg ợ gCách biểu diễn bằng bộ ba object-property-value là một cách tự nhiên để biểu diễn các đối tượngcách tự nhiên để biểu diễn các đối tượng

Các đối tượng cụ thể (Physical objects)Ví dụ: Một cái bàn có các thuộc tính chất liệu bề mặt số ngănVí dụ: Một cái bàn có các thuộc tính chất liệu bề mặt, số ngăn kéo, độ rộng, độ dài, độ cao, màu sắc, ...

Các tình huống (Situations)g ( )Ví dụ: Một lớp học có các thuộc tính mã số phòng học, danh sách sinh viên tham dự, giáo viên, ngày học, thời gian học, ...Ví dụ: Một chuyến đi nghỉ mát có các thuộc tính nơi khởi hànhVí dụ: Một chuyến đi nghỉ mát có các thuộc tính nơi khởi hành, nơi đến, phương tiện di chuyển, phòng nghỉ, …

Trí Tuệ Nhân Tạo 24

Khung (Frame)g ( )Có 2 kiểu khung: cụ thể (individual) và tổng quát (generic)(generic)

Khung cụ thể (Individual frames). Để biểu diễn một đối tượng cụ thể, chẳng hạn như một người cụ thể, mộttượng cụ thể, chẳng hạn như một người cụ thể, một chuyến đi nghỉ mát cụ thể, ...

Khung tổng quát (Generic frames). Để biểu diễn mộtKhung tổng quát (Generic frames). Để biểu diễn một lớp (loại) các đối tượng, chẳng hạn như các sinh viên, các chuyến đi nghỉ mát, ...

Ví dụKhung tổng quát: Europian_CityKh thể Cit P iKhung cụ thể: City_Paris

Trí Tuệ Nhân Tạo 25

Biểu diễn của một khungộ gMột khung được biểu diễn bằng một danh sách địnhdanh các thuộc tính được gọi là các slotsdanh các thuộc tính được gọi là các slots

Giá trị gán cho một thuộc tính được gọi là filler of the slotslot

(frame-name Tên của khung

<slot-name1 filler1><slot-name2 filler2>

)…)

Slots

fillers

Trí Tuệ Nhân Tạo 26

Khung đơngMột khung đơn (individual frame) có một thuộc tính đặc biệt có tên là INSTANCE-OF và giá trị của thuộc tínhbiệt có tên là INSTANCE OF, và giá trị của thuộc tính đặc biệt này là tên của một khung tổng quát (generic frame)

Ví dụ(toronto % sử dụng chữ thường cho các khung đơn( g g g<:INSTANCE-OF CanadianCity><:Province ontario><:Population 4 5M><:Population 4.5M>…)

Trí Tuệ Nhân Tạo 27

Khung tổng quátg g qMột khung tổng quát (generic frames) có thể có một thuộc tính đặc biệt là IS-A mà giá trị của thuộc tính đặcthuộc tính đặc biệt là IS A mà giá trị của thuộc tính đặc biệt này là tên của một khung tổng quát khác

Ví dụVí dụ(CanadianCity % sử dụng tên bắt đầu chữ hoa cho khung tổng quát

<:IS-A City>y<:Province CanadianProvince><:Country canada>

)…)

Trí Tuệ Nhân Tạo 28

Suy diễn với khung (1)y g ( )Các thuộc tính (slots) trong các khung tổng quát có thểđược gắn (liên kết) với các thủ tục để thực hiện và điềuđược gắn (liên kết) với các thủ tục để thực hiện và điềukhiển việc suy diễn

Có 2 kiểu thủ tục: IF-NEEDED và IF-ADDEDCó 2 kiểu thủ tục: IF NEEDED và IF ADDED

Thủ tục IF-NEEDEDĐược thực hiện khi không có giá trị cần thiết được gán cho mộtĐược thực hiện khi không có giá trị cần thiết được gán cho mộtthuộc tính (no slot filler)Ví dụ: (Table

<:Clearance [IF NEEDED computeClearance]><:Clearance [IF-NEEDED computeClearance]>…)

computeClearance là một thủ tục để tính toán (xác định) mứcp ( )độ sạch sẽ của cái bàn

Trí Tuệ Nhân Tạo 29

Suy diễn với khung (2)y g ( )Thủ tục IF-ADDED

Đ th hiệ khi ột th ộ tí h đ á iá t ị để h héĐược thực hiện khi một thuộc tính được gán giá trị, để cho phéplan truyền ảnh hưởng của việc gán giá trị của thuộc tính đó đốivới các khung khác (ví dụ, để đảm bảo các ràng buộc trong bàitoán)toán)

Ví dụ: (Lecture

<:DayOfWeek WeekDay>:DayOfWeek WeekDay

<:Date [IF-ADDED computeDayOfWeek]>

…))

Giá trị của thuộc tính :DayOfWeek sẽ được tính toán (lại) khithuộc tính :Date được gán giá trị

Trí Tuệ Nhân Tạo 30

Khung – Giá trị mặc định (1)g ị ặ ị ( )Hãy xét khung tổng quát (generic frame) sau đây

(CanadianCity(CanadianCity<:IS-A City><:Province CanadianProvince>

C t d<:Country canada>…)

Hãy xét khung cụ thể (individual frame) sau đâyy g ụ ( ) y(city134<:INSTANCE-OF CanadianCity>

)…)

Đối với khung city134, giá trị (mặc định) cho thuộc tính:Country là canada:Country là canada

Trí Tuệ Nhân Tạo 31

Khung – Giá trị mặc định (2)g ị ặ ị ( )Hãy xét khung cụ thể (individual frame) sau đây

( it 135(city135<:INSTANCE-OF CanadianCity><:Country holland>…)

Đối với khung city135, thì giá trị cho thuộc tính:Country là holland (chứ không phải là giá trị mặc địnhcanada)

Trí Tuệ Nhân Tạo 32

Khung – Tính kế thừa (1)g ( )Các thủ tục và các giá trị thuộc tính của một khung tổngquát hơn sẽ được áp dụng (kế thừa) bởi một khung cụquát hơn sẽ được áp dụng (kế thừa) bởi một khung cụthể hơn, thông qua cơ chế kế thừa

Ví dụVí dụ(CoffeeTable<:IS-A Table> ...)

(MahoganyCoffeeTableIS A C ff T bl<:IS-A CoffeeTable>

...)

Trí Tuệ Nhân Tạo 33

Khung – Tính kế thừa (2)g ( )Ví dụ

(Elephant(Elephant<:IS-A Mammal><:Colour gray>...)

(RoyalElephantIS A El h t<:IS-A Elephant>

<:Colour white>…)

(clyde<:INSTANCE-OF RoyalElephant>

)…)

Trí Tuệ Nhân Tạo 34

Khung – Suy diễng yQuá trình suy diễn trong phương pháp biểu diễn bằng khung sẽ diễn ra như sau

1. Người dùng khởi tạo một khung (tương đương với việc khai báo sự tồn tại của một đối tượng hay một tình huống)

2. Các giá trị của các thuộc tính sẽ được kế thừa (từ các khung2. Các giá trị của các thuộc tính sẽ được kế thừa (từ các khung tổng quát hơn)

3. Các thủ tục IF-ADDED sẽ được thực hiện. Việc này có thể sẽ dẫn đến việc khởi tạo của các khung khác, và việc gán giá trịdẫn đến việc khởi tạo của các khung khác, và việc gán giá trị của các thuộc tính

Nếu người dùng hoặc một thủ tục yêu cầu việc gán giá trị cho một thuộc tính, thì:

Nếu có giá trị cho thuộc tính, thì giá trị đó sẽ được gánNếu không thủ tục IF-NEEDED sẽ được thực hiệnNếu không, thủ tục IF NEEDED sẽ được thực hiện

Trí Tuệ Nhân Tạo 35

Biểu diễn bằng khung – Ưu điểmKết hợp được cả tri thức khai báo (declarative knowledge) và tri thức thủ tục (procedural knowledge) trong cùng một phương pháp biểu diễn

Các khung được tổ chức có cấu trúc phân cấp, cho phép dễ dàng phân loại (phân lớp) tri thứcphân loại (phân lớp) tri thức

Cấu trúc phân cấp các khung cho phép giảm bớt sự phức tạp (và chi phí) trong quá trình xây dựng cơ sở tri thức

Cho phép thiết lập các ràng buộc đối với các giá trị được gán cho các thuộc tính (ví dụ: ràng buộc giá trị nhập vào phải nằm trong một khoảng giá trị cụ thể)

Cho phép lưu giữ các giá trị mặc định (sử dụng thuộc tính đặc biệt IS-A, các giá trị của các thuộc tính của một khung tổng quát hơn được sử dụng để gán cho các thuộc tính của một khung cụ thể hơn)ợ ụ g g ộ ộ g ụ )

Trí Tuệ Nhân Tạo 36

Biểu diễn bằng khung – Nhược điểm

Trong quá trình thiết kế cấu trúc phân cấp của các khung cần rất để ý đến sự hợp lý của việc phân loại (cáckhung, cần rất để ý đến sự hợp lý của việc phân loại (các khung)

Có thể gặp vấn đề chi phí cao cho việc thiết kế các thủ g p ptục (IF-ADDED và IF-NEEDED) – Quá nhiều công sức dành cho việc thiết kế các thủ tục phù hợp, thay vì tập trung vào việc kiểm tra cấu trúc và nội dung của cáctrung vào việc kiểm tra cấu trúc và nội dung của các khung

Quá trình khai thác các khung có thể không hiệu quả, vì g g ệ q ,không có phương pháp hiệu quả để lưu trữ dữ liệu (của các khung) trong máy tính

Trí Tuệ Nhân Tạo 37

Mạng ngữ nghĩa (1)ạ g g g ( )Mạng ngữ nghĩa (Semantic Network) được đề cử bởi Quillian vàonăm 1966 như là một mô hình biểu diễn bộ nhớ của con người

Các động cơ thúc đẩy sự phát triển của mạng ngữ nghĩaĐể hiểu về cấu trúc của bộ nhớ con người, và việc sử dụng cấu trúc bộnhớ này trong xử lý (hiểu) ngôn ngữnhớ này trong xử lý (hiểu) ngôn ngữKiểu biểu diễn nào cho phép lưu giữ các ý nghĩa (meanings) của các từđể có thể sử dụng lại các ngữ nghĩa này (như trong bộ nhớ con người)?Giả sử rằng con người sử dụng cùng cấu trúc bộ nhớ cho các công việcGiả sử rằng con người sử dụng cùng cấu trúc bộ nhớ cho các công việc

Các chứng minh về tâm lý học đã chỉ ra rằng bộ nhớ của con ngườisử dụng các liên kết trong việc xử lý (hiểu) các từ

Yêu cầu: cần biểu diễn định nghĩa từ điển của các từ, đểSo sánh và phân biệt ý nghĩa của 2 từSi h á â “t ” ( ầ iố ) tiế A h để ô tả á h àSinh ra các câu “tựa” (gần giống) tiếng Anh để mô tả sự so sánh này

Trí Tuệ Nhân Tạo 38

Mạng ngữ nghĩa (2)ạ g g g ( )Mạng ngữ nghĩa (Semantic Network - SN) là phương pháp biểu diễn dựa trên đồ thị (graph-based representation)ự ị (g p p )

Một mạng ngữ nghĩa bao gồm một tập các nút (nodes) và các liên kết (links) để biểu diễn định nghĩa của một khái niệm (hoặc của một tập các khái niệm)

Các nút biểu diễn các khái niệmCác liên kết biểu diễn các mối quan hệ (liên hệ) giữa các kháiCác liên kết biểu diễn các mối quan hệ (liên hệ) giữa các khái niệm

Quá trình suy diễn (reasoning/inference) trong mạng ngữ nghĩa được thực hiện thông qua cơ chế lan truyền

Tác động (Activation)Kế thừa (Inheritance)Kế thừa (Inheritance)

Trí Tuệ Nhân Tạo 39

Mạng ngữ nghĩa – Cú phápạ g g g p pCác nút (nodes) biểu diễn các khái niệm (concepts), hành động (actions) hoặc đối tượng (objects) trong lĩnh vực bài toán ộ g ( ) ặ ợ g ( j ) g ựđang xétCác liên kết (links) là các quan hệ được gán nhãn và có chiều (directional and labeled) giữa các nút(directional and labeled) giữa các nút

Hai kiểu liên kết: kế thừa và cụ thể

Liê kết kế thừ (I h it i t d li k) biể diễLiên kết kế thừa (Inheritance-oriented link) biểu diễn:Nút A là một lớp (loại) con của nút B (vd: liên kết IS-A)Nút A là một ví dụ (instance) của nút B (vd: liên kết INSTANCE-OF)

Liên kết cụ thể (Domain-specific link) biểu diễn:Nút A liên quan tới (có quan hệ với) nút BVí dụ: HAS, CAN, HAS-PART, CAUSES, HAS-COLOR, …

Trí Tuệ Nhân Tạo 40

Mạng ngữ nghĩa – Ví dụ (1)ạ g g g ụ ( )

Trí Tuệ Nhân Tạo 41

(B. L. Vrusias, course AI-CS289)

Mạng ngữ nghĩa – Ví dụ (2)ạ g g g ụ ( )a n i m a l

s k i nf l y i n g

c o v e r e d _ b y

i s ai s a

t r a v e l s _ b y

f i s h

s w i m m i n g

b i r df e a t h e r s

t r a v e l s _ b y

i s a i s a i s a i s a

c o v e r e d _ b y

p e n g u i n c a n a r y r o b i no s t r i c h

t r a v e l s _ b yc o l o u r

c o l o u r

w a l k i n g y e l l o w

r e d

t r a v e l s _ b y

i n s t a n c e o f

O p u s

T w e e t y

w h i t e

i n s t a n c e _ o f

i n s t a n c e _ o f

c o l o u r

Trí Tuệ Nhân Tạo 42

w h i t e(http://www.cwa.mdx.ac.uk/bis2040/johnlect.html)

SN – Lan truyền tác độngy ộ gĐối với 2 khái niệm, việc lan truyền tác động (spreading Living Thingy ộ g ( p gactivation) sẽ kích hoạt tác động từ khái niệm này tới khái niệm kia, hoặc theo cả 2

Animal

is-a

is-a

khái niệm kia, hoặc theo cả 2 hướng

Cho phép xác định các khái ElephantPlant

is-aeats

niệm “nằm giữa” liên quan đến cả 2 khái niệm đó

Ví dụ: Xét việc lan truyền tácFoodis-a

is-a

Ví dụ: Xét việc lan truyền tác động giữa 2 khái niệm “Elephant” và “Plant”

Mammoth

Trí Tuệ Nhân Tạo 43

SN – Tính kế thừaCác thuộc tính (properties) của lớp (loại) cha được kế thừa cho các lớp

Legs

(loại) con

Kế thừa toàn bộ (Universal inheritance): Tất cả các quan hệ được

MammalGrey

has-part

inheritance): Tất cả các quan hệ được kế thừa

Kế thừa mặc định (Default inheritance): Các quan hệ được kế

Elephant

G eyis-a

has-color

inheritance): Các quan hệ được kế thừa, trừ khi có các thông tin mâu thuẫn (với nút cha) ở một nút con

Whiteis-a

has-colorCác nghiên cứu tâm lý học chỉ ra rằng con người nhận thức “Clyde has-color White” nhanh hơn “Clyde has-part Legs”

Clyde

Legs”

Trí Tuệ Nhân Tạo 44

SN – Ngữ nghĩa (1)g g ( )Biểu diễn bằng mạng ngữ nghĩa rất trực quan, và gần với nhận thức (cách biểu diễn) của con ngườivới nhận thức (cách biểu diễn) của con người

Nhưng: Đối với cùng một đồ thị (mạng) ngữ nghĩa, các hệ thống khác nhau có thể có các cách diễn giảihệ thống khác nhau có thể có các cách diễn giải (interpretations)khác nhau

Ngữ nghĩa (sematics) của các mạng ngữ nghĩa?Ngữ nghĩa (sematics) của các mạng ngữ nghĩa?”Since the semantics of any given language is dependent of the interpretation of the primitive elements....., the well-definedness of a network language rests heavily on the set of node and link typesa network language rests heavily on the set of node and link types that it provides” (Brachman, p204, Readings in KR)

Trí Tuệ Nhân Tạo 45

SN – Ngữ nghĩa (2)g g ( )Ý nghĩa của mạng ngữ nghĩa sau là gì? Carlà gì?

Thể hiện định nghĩa của một cái ô-tô màu đen (Thông tin định is-a

nghĩa)

Thể hiện rằng tồn tại một ô-tô màu đen (Thông tin xác nhận)

Car#3

màu đen (Thông tin xác nhận)

Thể hiện rằng một cái ô-tô cụ thể (Car#3) là màu đen (Xác nhận

has-color

sự tồn tại) Black

Trí Tuệ Nhân Tạo 46

SN – Ngữ nghĩa (3)g g ( )Các liên kết có thể là...

Liê kết á hậ (A ti l li k )Liên kết xác nhận (Assertional links)Lưu giữ các thông tin về không gian bài toán đang xétCó thể thay đổi khi không gian bài toán thay đổiy g g yVí dụ: “Jon hit Mary” (một sự kiện cụ thể đã xảy ra)

Liên kết định nghĩa (Definitional links)Lưu giữ các ý nghĩa của các khái niệmKhông thay đổi khi không gian bài toán thay đổiVí dụ: “apple is a fruit” “apple has color red”Ví dụ: apple is-a fruit , apple has-color red

Trí Tuệ Nhân Tạo 47

SN – Chuyển đổi sang logic (1)

Một giải pháp có thể đối với vấn đề xác định ngữ nghĩa của các mạng ngữ nghĩa: Chuyển đổi (transform) các mạng ngữcác mạng ngữ nghĩa: Chuyển đổi (transform) các mạng ngữ nghĩa sang logic

Ý tưởng: Ngữ nghĩa của logic đã được định nghĩa chuẩn –g g g g ợ ị gChuyển đổi ngữ nghĩa sang logic sẽ cho phép biểu diễn chính xác ngữ nghĩa của các mạng ngữ nghĩa

ể ổ ể ễ ằViệc chuyển đổi chỉ đơn giản là biểu diễn các nút là các hằng (constants) và các liên kết là các vị từ hai ngôi (binary predicates)?

Không quá đơn giản như vậyTuy nhiên, cú pháp của các mạng ngữ nghĩa có thể được viết lại trong logictrong logic

Trí Tuệ Nhân Tạo 48

SN – Chuyển đổi sang logic (2)Đối với các liên kết is-a

∀x: elephant(x) → mammal(x)Elephant Mammalis-a

∀x: elephant(x) → mammal(x)

Đối với các liên kết (thuộc tính) của một ví dụ (instance) Clyde Whitehas-colorộ ụ ( )

hasColor(clyde, white)

Đối với các liên kết (thuộc tính) của

Clyde White

một lớp (class)∀x: elephant(x) → hasColor(x, grey)

ễ ế

Elephant Greyhas-color

Xét việc suy diễn logic, nếu các phát biểu trên là đúng + “elephant(clyde)”?

Suy diễn mặc định (default reasoning) y ặ ị ( g)sẽ không còn đúng!

Trí Tuệ Nhân Tạo 49

SN – Khả năng biểu diễngChúng ta có thể biểu diễn các suy nghĩ (beliefs) của một người mà không cần hệ thống phải xác nhận rằng cácngười, mà không cần hệ thống phải xác nhận rằng các suy nghĩ này là đúng?

Ví dụ: “John believes that fish has lungs”

Chúng ta có thể biểu diễn các lượng từ logic (∀,∃)?Ví dụ: “Every bird has feathers”

Trong cách biểu diễn các mạng ngữ nghĩa “chuẩn”, các yêu cầu về biểu diễn nêu trên không được hỗ trợ

Trí Tuệ Nhân Tạo 50

Các mạng được phân tách (1)ạ g ợ p ( )Các mạng được phân tách (Partitioned networks) là sự cải tiến dựa trên cách biểu diễn SN chuẩn, được đề cử bởi HendrixCho phép biểu diễn các quan hệ giữa các phần đồ thị (sub-graphs) của mạng ngữ nghĩa

“John believes that fish has lungs”John believes that fish has lungs

Trí Tuệ Nhân Tạo 51

(http://www.idi.ntnu.no/emner/it3706)

Các mạng được phân tách (2)ạ g ợ p ( )Cho phép mạng ngữ nghĩa phân tách các suy nghĩ (beliefs) và nhóm lại các xác nhận/định nghĩa

ểCho phép biểu diễn các lượng từ logic

“Every bird has feathers”

Trí Tuệ Nhân Tạo 52

(http://www.idi.ntnu.no/emner/it3706)

Các mạng được phân tách – Vấn đề

Không trực quan, rất khó đọcTính trực quan của cách biểu diễn mạng ngữ nghĩaTính trực quan của cách biểu diễn mạng ngữ nghĩa chuẩn đã bị giảm đi

N ữ hĩ khô õ à ủ á đ hâ tá hNgữ nghĩa không rõ ràng của các mạng được phân táchNgữ nghĩa của các liên kết định nghĩa (definitional links) là gì?links) là gì?Ngữ nghĩa của các liên kết xác nhận (Assertional links) là gì?

Trí Tuệ Nhân Tạo 53

Mạng ngữ nghĩa – Ưu điểmạ g g gRõ ràng (trực quan) trong hiển thị, dễ hiểu đối với người dùng

SNs thường được sử dụng như là một công cụ trao đổi (làm việc)SNs thường được sử dụng như là một công cụ trao đổi (làm việc) giữa các kỹ sư tri thức (knowledge engineers) và các chuyên gia (experts) trong giai đoạn thu thập tri thức

ấ ố ể ễSNs là rất phù hợp đối với các bài toán biểu diễn tri thức ở dạng phân cấp các khái niệm

Tri thức được phân loại (phân lớp) thành một cấu trúc phân cấpợ p ạ (p p) ộ p p

Cơ chế biểu diễn phân cấp của SNs hỗ trợ quá trình suy diễn nhanh chóng

Hỗ trợ cơ chế suy diễn mặc định (default reasoning)

Tập trung vào các thành phần chính của tri thức và liên kết giữa chúng

Trí Tuệ Nhân Tạo 54

Mạng ngữ nghĩa – Nhược điểmKhông tồn tại cách diễn dịch (interpretation) chung (chuẩn) –Ngữ nghĩa của các mạng ngữ nghĩa không được định nghĩa g g ạ g g g g ợ ị gmột cách chuẩn tắc

Gặp vấn đề trong việc biểu diễn các thông tin tin phủ định ( ti ) à t ể (di j ti )(negation) và tuyển (disjunction)

Vd: “John does not go fishing”, “John eats pizza or fish and chips”

Khó khăn trong việc diễn đạt các suy nghĩ (beliefs) và cácKhó khăn trong việc diễn đạt các suy nghĩ (beliefs) và các lượng từ (quantifiers)

Nếu hỗ trợ việc diễn đạt này, thì lại làm cho SNs trở nên khó đọc

Khó khăn trong việc chọn các thành phần cơ bản (primitives) phù hợp

Khả năng suy diễn hạn chếKhả năng suy diễn hạn chế

Trí Tuệ Nhân Tạo 55

Sự kế thừa – Phân loại phân cấp

Phân loại một cách phân cấp (Hierarchical taxonomy) làmột cách tự nhiên trong việc biểu diễnmột cách tự nhiên trong việc biểu diễn

Được sử dụng trong cả 2 cách biểu diễn tri thức: Khung (frames) và Mạng ngữ nghĩa (semantic networks)

Sự quan trọng của việc khái quát hóa (abstraction)trong việc nhớ và suy diễn

Nhóm các đối tượng có cùng chung các thuộc tínhNhóm các đối tượng có cùng chung các thuộc tínhKhông phải lặp lại các biểu diễn cho từng đối tượng riêng lẻ

Sự kế thừa (Inheritance) là kết quả của việc suy diễnSự kế thừa (Inheritance) là kết quả của việc suy diễntheo các hướng (paths) trong một cấu trúc phân cấp

“A có kế thừa từ B không?” tương đương với “B có quan hệ bắcầ ểcầu kiểu is-a (subsumption) với A không?”

Trí Tuệ Nhân Tạo 56

Biểu diễn của sự kế thừaựCác quan hệ IS

Clyde is an Elephant Elephant is Gray GClyde is an Elephant, Elephant is Gray

Suy diễn (reasoning) với các hướng(paths) và các kết luận (conclusions)

Gray

(paths) và các kết luận (conclusions) mà các hướng đó biểu diễn

Các quan hệ bắc cầuElephant

Tính bắc cầu của các quan hệClyde is Elephant ClydeElephant is GrayClyde is Gray

Trí Tuệ Nhân Tạo 57

Mạng kế thừa (1)ạ g ( )Cấu trúc cây (tree structure) biểu diễn các quan hệ kế thừakế thừa

Các kết luận được đưa ra, bằng cách áp dụng bắc cầu các quan hệ kế thừa đối với tất cả các hướng

Xét đến tất cả các nút có liên kết trong mạng

Trí Tuệ Nhân Tạo 58

Mạng kế thừa (2)ạ g ( )Cấu trúc lưới (Lattice structure) T S l i d(Lattice structure) biểu diễn các quan hệ kế thừa

Tax-payerIlliterate Salaried

Academic

Một nút con có thể có nhiều nút cha (nhiều kế thừa)

EmployeeStudent( )

Giống như cấu trúc cây: Tất cả các kết Ernestcây: Tất cả các kết luận được đưa ra theo tất cả các hướng

(Represents “is-not”)

hướngTrí Tuệ Nhân Tạo 59

Mạng kế thừa (3)ạ g ( )Kế thừa có thể bị hủy bỏ (Defeasible inheritance) Gray(Defeasible inheritance)

Giống như đối với cách biểu diễn tri thức bằng khung (frame-based representation)

Các thuộc tính không phải luôn luôn được kế thừa – chúng có

Elephant

luôn được kế thừa – chúng có thể bị hủy bỏ (defeated)

Các kết luận được xác định bằng Clyde

cách duyệt từ nút hiện thời và chọn phiên bản đầu tiên của thuộc tính (first version of (property) cần kết luận

Trí Tuệ Nhân Tạo 60

Mạng kế thừa (4)ạ g ( )

Tính nhập nhằng trong kế thừ (A bi it i P ifi tthừa (Ambiguity in inheritance)

Pacifist

Hãy xét ví dụ sau đây:

Nixon là người yêu hòa bình (pacifist) ha không?

RepublicanQuaker

bình (pacifist) hay không?

Nixon

Trí Tuệ Nhân Tạo 61

Mạng kế thừa (5)ạ g ( )Kế thừa có thể bị hủy bỏ (Defeasible inheritance) Aquatic creature Gray

Các liên kết có cực (dương hoặc âm)Sử dụng quy tắc đường đi Mammal ElephantSử dụng quy tắc đường đi ngắn nhấn để xác định cựcVì vậy, không phải tất cả các hướng đều sinh ra kết luận – Whale Royal elephanthướng đều sinh ra kết luận Một số hướng (path) sẽ bị ngăn chặn (pre-empted), nhưng một số hướng được White whale

Whale

Fat royal elephant

Royal elephant

g gchấp nhận (admissible)Các hướng (paths) được xem như là các lý lẽ (arguments) Baby Beluga Clydeý ( g )đối với các kết luận

Trí Tuệ Nhân Tạo 62

Phân cấp kế thừa – Định nghĩa (1)

Một phân cấp kế thừa (inheritance hierarchy) G=<V,E> là một đồ thị có hướng và không chứa vòng lặp (directedlà một đồ thị có hướng và không chứa vòng lặp (directed and acyclic graph - DAG) với các cạnh dương và âm để biểu diễn tương ứng các quan hệ “is-a” và “is-not-a”

ể ễCác cạnh dương được biểu diễn là: a • xCác cạnh âm được biểu diễn là: a • ¬x

ỗMột hướng (path) là một chuỗi các cạnhMột hướng dương (positive path) là một chuỗi của một hoặc nhiều cạnh dương: a • … • xạ gMột hướng âm (negative path) là một chuỗi của các cạnh dương và kết thúc bởi (chỉ) một cạnh âm: a • … • v • ¬x

Trí Tuệ Nhân Tạo 63

Phân cấp kế thừa – Định nghĩa (2)

Không tồn tại bất kỳ hướng (path) nào có nhiều hơn một cạnh âmcạnh âm

Một hướng (path) có thể chẳng có cạnh dương nào

Mỗi hướng biểu diễn một lý lẽ (argument) đối với một kếtMỗi hướng biểu diễn một lý lẽ (argument) đối với một kết luận (được đưa ra theo hướng đó)

Hướng a • … • x biểu diễn kết luận “a is an x”Hướng a • … • v • ¬x biểu diễn kết luận “a is not an x”

Một kết luận có thể được xác nhận bằng nhiều lý lẽ (đạt ằ ềđược bằng nhiều hướng)

Tuy nhiên, không phải tất cả các lý lẽ (tất cả các hướng) đều có cùng mức độ tin cậyđều có cùng mức độ tin cậy

Trí Tuệ Nhân Tạo 64

Sự xác nhận và sự chấp nhận (1)

Phân cấp phân loại G xác nhận (supports) một hướng a • s1 • • s • x nếu tập các cạnh tương ứnghướng a s1 … sn x nếu tập các cạnh tương ứng {a•s1 , s1•s2 , … , sn-1•sn , sn•x} thuộc vào E, và hướng đó là chấp nhận được (admissible)

ốĐịnh nghĩa tương tự, đối với một hướng âm a • s1 • … • sn • ¬x

Phân cấp phân loại G xác nhận một kết luận “a is x”nế G ác nhận một h ớng nào đó để đạt đ ợc kết l ậnnếu G xác nhận một hướng nào đó để đạt được kết luận

Định nghĩa tương tự, đối với G xác nhận một kết luận “a is not x”

Một hướng là chấp nhận được (admissible path) nếu tất cả các cạnh của hướng đó đều là chấp nhận được ( d i ibl d )(admissible edges)

Trí Tuệ Nhân Tạo 65

Sự xác nhận và sự chấp nhận (2)

Một cạnh dương v • x là chấp nhận được trong G đối với một nút a nếu tồn tại một hướng dương a • s1 •đối với một nút a nếu tồn tại một hướng dương a s1 … • sn • v (n ≥ 0) trong E và:

1. (Định nghĩa truy hồi) Mỗi cạnh trong hướng a • s1 • … • sn • vđều là chấp nhận được trong G đối với nút a;đều là chấp nhận được trong G đối với nút a;

2. Không có cạnh nào trong hướng a • s1 • … • sn • v là dư thừa (redundant) trong G đối với nút a (Định nghĩa về “dư thừa” ẽ đ iải thí h ở lid )sẽ được giải thích ở slide sau);

3. Không có nút trung gian trong hướng a, s1, …, sn là một nút ngăn chặn (pre-emptor) của cạnh v • x đối với nút a (Định

hĩ “ út ă hặ ” ẽ đ iải thí h ở lid )nghĩa “nút ngăn chặn” sẽ được giải thích ở slide sau)

Định nghĩa tương tự, đối với một cạnh âm v • ¬x là hấ hậ đchấp nhận được

Trí Tuệ Nhân Tạo 66

Sự dư thừaựMột cạnh dương b • w là dư thừa (redundant) trong G đối với nút a Aquatic creature( ) gnếu tồn tại một hướng dương (b • t1 • … • tm • w) E (m ≥ 1), sao cho:1 Mỗi cạnh của hướng b • t • • t là M l ( )

Aquatic creature

1. Mỗi cạnh của hướng b • t1 • … • tm là chấp nhận được trong G đối với nút a;

2. Không tồn tại c và ti sao cho c • ¬ti là chấp nhận được trong G đối với nút a;

Mammal (w)

b • wchấp nhận được trong G đối với nút a;

3. Không tồn tại c sao cho c • ¬w là chấp nhận được trong G đối với nút a

Whale (t1)

Định nghĩa tương tự, đối với một cạnh âm b • ¬w là dư thừa

Blue whale (b)

Trí Tuệ Nhân Tạo 67

Nút ngăn chặng ặMột nút y trong hướng a • ... • y • • v được gọi là nút ngăn Aquatic creature (x) ... v được gọi là nút ngăn chặn (pre-emptor) của cạnh dương v • x đối với nút a nếu ( ) E M l ( )

Aquatic creature (x)

y • x

(y • ¬x) E

Một nút y trong hướng a • ... • y ú ă

Mammal (v)

• ... • v được gọi là nút ngăn chặn (pre-emptor) của cạnh âm v • ¬x đối với nút a nếu

Whale (y)

(y • x) EXem ví dụ bên!

Blue whale

Trí Tuệ Nhân Tạo 68

Sự mở rộngự ộ gPhân cấp phân loại G được gọi là a-connected nếu và chỉ nếu với mọi nút x trong G luôn tồn tại một hướng từ a đến x, ọ g ạ ộ g ,và đối với mọi cạnh dương (hoặc âm) v • x (hoặc v • ¬x ) trong G luôn tồn tại một hướng dương từ a tới v

Nói á h khá i út à i h đề ó thể đ t tớiNói cách khác, mọi nút và mọi cạnh đều có thể đạt tới (reachable) từ a

G được gọi là (có thể) nhập nhằng (ambiguous) đối với nútG được gọi là (có thể) nhập nhằng (ambiguous) đối với nút a nếu tồn tại một nút x V sao cho cả 2 hướng (a • s1 • … • sn • x) và (a • t1 • … • tm • ¬x) đều thuộc G

Một ở ộ ( t i ) ủ G đối ới út là ột ấMột sự mở rộng (extension) của G đối với nút a là một cấu trúc con của G, sao cho cấu trúc con đó là a-connected và chứa tối thiểu (ít hơn) các nhập nhằng

Trí Tuệ Nhân Tạo 69

Sự mở rộng – Ví dụự ộ g ụMilk-

producerMilk-

producer

Mammal Mammal Mammal

Furry Egg- F E Furry Egg-Furry Animal

Egg-layer

Furry Animal

Egg-layer

Furry Animal

Egg-layer

Extension 1

Platypus Platypus Platypus

Extension 2

Trí Tuệ Nhân Tạo 70

Extension 1 Extension 2

Sự mở rộng được ưu tiênự ộ g ợCác mở rộng (extensions) không tính đến các khía cạnh về sự chấp nhận được (admissibility) hay sự ngăn chặnvề sự chấp nhận được (admissibility) hay sự ngăn chặn (pre-emption)

Giả sử X và Y là các mở rộng của G đối với nút a XGiả sử X và Y là các mở rộng của G đối với nút a. X được gọi là ưu tiên (preferred) so với Y nếu và chỉ nếu tồn tại các nút v và x sao cho:

X và Y là như nhau (về các kết luận) đối với tất cả các cạnh kết thúc ở nút trước v,

Tồn tại một cạnh dương v • x (hoặc cạnh âm v • x) là khôngTồn tại một cạnh dương v • x (hoặc cạnh âm v • ¬x) là không chấp nhận được (inadmissible) trong G,

Cạnh không chấp nhận được này có trong Y, nhưng không có trong X

Trí Tuệ Nhân Tạo 71

Sự mở rộng được ưu tiên – Ví dụAquatic creature (x)

Aquatic creature (x) Mammal (v)Preferred

Mammal (v)Whale (a)

Whale (a) Aquatic creature (x)

Mammal (v)

Whale (a)

Trí Tuệ Nhân Tạo 72

Whale (a)

OntologygyMột ontology là một đặc tả (biểu diễn) hình thức và rõ ràng về các khái niệmràng về các khái niệmMột ontology là một từ vựng dùng chung, được dùng để biểu diễn (mô hình) một lĩnh vực cụ thể

Các đối tượng và/hoặc các khái niệmCác thuộc tính và các quan hệ của chúng

Một ontology có thể được xem như là một cơ sở tri thứcMột ontology có thể được xem như là một cơ sở tri thứcMột ontology có thể phục vụ các mục đích khác nhau

Ví dụ: Mô hình cơ sở dữ liệu (database schema) là một ontology

Cơ sở tri thức chứa đựng các tri thức cụ thể cần thiết cho việc giải quyết vấn đề của một lĩnh vực

Trí Tuệ Nhân Tạo 73

Ontology – Các động cơ thúc đNygy g yCác động cơ thúc đẩy về mặt công nghệ

Rất hiề á hệ thố d t ê t i thứ ử d ột t lRất nhiều các hệ thống dựa trên tri thức sử dụng một ontology mô tả các tri thức của lĩnh vực liên quan

Việc xây dựng ontology là một nhiệm vụ rất tốn kém (về thời gian và công sức) trong quá trình phát triển một hệ thống dựa trên tri thức

Tại sao không giảm chi phí bằng cách chia sẻ các ontology?Tại sao không giảm chi phí bằng cách chia sẻ các ontology?Ví dụ: Các ontology “cơ bản” mô tả không gian, thời gian, số lượng, …

Động cơ thúc đẩy về mặt khoa họcĐể hiểu được các vấn đề nền tảng trong quá trình khái niệm hóa ( hậ thứ á khái iệ ) ủ ời(nhận thức các khái niệm) của con người

Trí Tuệ Nhân Tạo 74

Các khía cạnh của một ontology (1)gy ( )Nội dung của ontology

Các kiểu đối tượng, các kiểu quan hệợ g, q ệVí dụ, bài toán sắp xếp các khối (blocks)

Các lớp đối tượng: Blocks, Robot HandsCác thuộc tính: shapes of blocks color of blocksCác thuộc tính: shapes of blocks, color of blocksCác quan hệ: On, Above, Below, GraspCác quá trình: kế hoặc xây nên một tòa tháp

Kiểu của ontologyCác quan hệ phân loại cơ bản (vd: instance-of, subclass) là gì?

ốCác định nghĩa của các khái niệm (và các ràng buộc đối với chúng)?Khả năng diễn đạt của ngôn ngữ định nghĩa các khái niệm?Hướng quá trình (process-centric) hay hướng đối tượng (object-g q (p ) y g ợ g ( jcentric)?

Trí Tuệ Nhân Tạo 75

Các khía cạnh của một ontology (2)gy ( )Mục đích sử dụng của ontology

Chia sẻ tri thứcVí dụ: Giữa những người sử dụng, giữa các hệ thống, …

Sử dụng lại tri thứcVí dụ: Sử dụng lại (một phần) tri thức khi các mô hình hoặc hệ thống dụ Sử dụ g ạ ( ộ p ầ ) ức các ô oặc ệ ố gthay đổi

Mục đích chung (tổng quát) hay cụ thể cho một lĩnh vực

Việ â d t lViệc xây dựng ontologyOntology sẽ được thu thập hay xây dựng?Nếu được thu thập, thì cần kiểm tra:

Chất lượng của tri thức?Sự khác biệt về nội dung?Sự tin cậy của tri thức?Sự tin cậy của tri thức?Các khả năng sử dụng trong tương lai?

Trí Tuệ Nhân Tạo 76

Xây dựng ontologyy ự g gyXác định giới hạn (phạm vi) và mục đích sử dụng

Câ hắ iệ ử d l i á t l đã ó à liêCân nhắc việc sử dụng lại các ontology đã có và liên quan đến lĩnh vực đang xét

Liệt kê các khái niệmLiệt kê các khái niệm

Định nghĩa sự phân loại

Định nghĩa các th ộc tínhĐịnh nghĩa các thuộc tính

Định nghĩa các khía cạnh (các ràng buộc)

Xá đị h á í d hể (i )Xác định các ví dụ cụ thể (instances)

Kiểm tra các bất thường (anomalies)

Trí Tuệ Nhân Tạo 77

Phạm vi và mục đích sử dụngKhông tồn tại một ontology “chuẩn” cho một lĩnh vực cụ thể

Một ontology là một sự khái quát hóa về một lĩnh vực cụ thể vàMột ontology là một sự khái quát hóa về một lĩnh vực cụ thể, và luôn tồn tại nhiều ontologies phù hợp

Việc khái quát hóa này nên tính đến:Việc sử dụng trong tương lai của ontology (mục đích sử dụng)Các khả năng mở rộng (của ontology) có thể dự đoán trước

Cá â hỏi ầ hải đ t ả lời ở i i đ àCác câu hỏi cần phải được trả lời ở giai đoạn này:Ontology này được dùng cho lĩnh vực nào?Ontology này sẽ được dùng để làm gì?gy y ợ g gNhững kiểu câu hỏi nào mà ontology này có thể đưa ra câu trả lời?Ai sẽ dùng và bảo trì ontology này?Ai sẽ dùng và bảo trì ontology này?

Trí Tuệ Nhân Tạo 78

Cân nhắc sử dụng lại các ontology

Với sự phát triển rất nhanh chóng của Internet và của lĩnh vực Semantic Web sẽ tồn tại (có) rất nhiềulĩnh vực Semantic Web, sẽ tồn tại (có) rất nhiều ontologies có thể khai thác

Ít khi chúng ta phải bắt đầu việc xây dựng một ontologyÍt khi chúng ta phải bắt đầu việc xây dựng một ontology từ đầu (từ chỗ chưa có gì cả)

Gần như luôn tồn tại một số ontology có thể khai thác, hoặc là để gysử dụng luôn, hoặc là để bắt đầu cho việc xây dựng ontology mong muốn

Trí Tuệ Nhân Tạo 79

Liệt kê các khái niệmệ ệXác định (theo một danh sách) tất cả các khái niệm liên quan sẽ xuất hiện trong ontologyquan sẽ xuất hiện trong ontology

Các danh từ (nouns) thường là cơ sở để xác định các tên lớp (class names)Cá độ từ ( b ) h ặ độ từ ( b h ) th ờ làCác động từ (verbs) hoặc cụm động từ (verb phrases) thường là cơ sở để xác định các tên thuộc tính (property names)

Nên sử dụng các công cụ xây dựng tri thức để thu đượcNên sử dụng các công cụ xây dựng tri thức, để thu đượcTập các khái niệmCấu trúc (phân cấp) ban đầu của các khái niệm này

Trí Tuệ Nhân Tạo 80

Định nghĩa sự phân loạiị g ự p ạCác khái niệm liên quan cần được tổ chức lại với nhau thành một cấu trúc phân cấp phân loại (a taxonomicthành một cấu trúc phân cấp phân loại (a taxonomic hierarchy)

Hai chiến lược thường được dùng: top-down vs. bottom-upầ ắ ế ế ốCần cân nhắc đến hai yếu tố: sự tin cậy (chính xác) và hiệu quả

(suy diễn)

Đả bả ằ hâ ấ th đ th là ột hâĐảm bảo rằng phân cấp thu được thực sự là một phân loại khái niệm

Nếu A là một lớp con của B, thì mọi ví dụ của A cũng phải là ví dụ ộ p , ọ ụ g p ụcủa B

Trí Tuệ Nhân Tạo 81

Định nghĩa các thuộc tínhị g ộThường được thực hiện kết hợp với bước trước (định nghĩa sự phân loại)nghĩa sự phân loại)

Yêu cầu: Nếu A là một lớp con của B, thì mọi thuộc tính của B đều phải được áp dụng cho Acủa B đều phải được áp dụng cho A

Nên gắn các thuộc tính với lớp cao nhất (phù hợp) trong cấu trúc phân cấp

Khi xác định một thuộc tính cho một lớp, cần ngay lập tức xác định các thông tin về miền và giá trị của thuộc tính đótính đó

Trí Tuệ Nhân Tạo 82

Định nghĩa các ràng buộcị g g ộCác ràng buộc về số chiều (số phần tử của một tập hợp)

Cá iá t ị ó thể đ á hCác giá trị có thể được gán cho

Các đặc điểm của quan hệTính đối xứng bắc cầu đảoTính đối xứng, bắc cầu, đảo, …

Trí Tuệ Nhân Tạo 83

(protege.stanford.edu/amia2003/AMIA2003Tutorial.ppt)

Xác định các ví dụị ụBổ sung vào ontology các ví dụ (instances) cụ thể

Số lượng các ví dụ thường lớn hơn (nhiều) số lượng các lớp (classes)

ổVì vậy, việc bổ sung các ví dụ vào một ontology thường được làm thủ công (manually)

Lấy từ các nguồn dữ liệu sẵn có (vd: từ các cơ sở dữ liệu)Lấy từ các nguồn dữ liệu sẵn có (vd: từ các cơ sở dữ liệu)Trích tự động từ một tập các dữ liệu văn bản

Trí Tuệ Nhân Tạo 84

Kiểm tra các bất thườnggĐể kiểm tra các mâu thuẫn có thể có trong một ontology, (hoặc có trong một ontology đi kèm với các ví dụ)(hoặc có trong một ontology đi kèm với các ví dụ)

Các ví dụ của các mâu thuẫnKhông tương thích về miền về giá trị về các đặc tính bắc cầuKhông tương thích về miền, về giá trị, về các đặc tính bắc cầu, đối xứng, đảo,...Không tương thích với ràng buộc về số chiều của một thuộc tính

Trí Tuệ Nhân Tạo 85

Các ví dụ về ontologyụ gyCYC (dùng chung, tổng quát)

105 kiểu khái niệm 106 tiên đề10 kiểu khái niệm, 10 tiên đề

SENSUS (mở rộng của WordNet, dùng cho xử lý văn bản)70 000 khái niệm70.000 khái niệm

SUMO (tổng quát)1000 khái niệm, 4200 đánh giá1000 khái niệm, 4200 đánh giá

UMLS (lĩnh vực y-sinh)135 kiểu ngữ nghĩa, 54 quan hệ ngữ nghĩa, 975.354 khái niệm35 ểu gữ g a, 5 qua ệ gữ g a, 9 5 35 á ệ

WordNet (từ vựng)152.059 dạng từ, 115,424 cụm từạ g , , ụ

Trí Tuệ Nhân Tạo 86

UMLS ontologygyFor bio-medicine

Trí Tuệ Nhân Tạo 87

(Figure by MIT OCW)

CYC ontologygyEncode all of human common sense knowledge

Trí Tuệ Nhân Tạo 88