1. Trang chủ
  2. » Công Nghệ Thông Tin

Giáo trình hệ cơ sở tri thức

232 687 0

Đ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

Thông tin cơ bản

Định dạng
Số trang 232
Dung lượng 4,73 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

KIẾN TRÚC KBS & CÁC THÀNH PHẦN CỦA ES • Cơ sở tri thức Knowledge Base – KB: có thể dược thu lượm từ sách vở, báo chí, con người … • Động cơ suy diễn Inference Engine: làm rút ra các kết

Trang 1

TỔNG QUAN VỀ

HỆ CHUYÊN GIA

Overview of Expert Systems

Trang 2

MỤC TIÊU

• Hiểu hệ chuyên gia là gì, ưu điểm và nhược điểm của

hệ chuyên gia

• Nắm vững các giai đoạn phát triển một hệ chuyên gia

• Biết kiểm tra các đặc trưng chung của một hệ chuyên gia

• Biết kiểm tra cấu trúc của một hệ chuyên gia dựa trên quy tắc

• Nắm được sự khác nhau giữa các mô hình thủ tục và không thủ tục

Trang 3

HỆ CHUYÊN GIA LÀ GÌ?

“Một hệ chuyên gia (ES) là một hệ thống máy tính

tranh đua hoặc hành động với tất cả sự tôn trọng với khả năng tạo quyết định của chuyên gia con người”

“An expert system is a computer system that

emulates, or acts in all respects, with the

decision-making capabilities of a human expert.”

Professor Edward Feigenbaum

Stanford University

Trang 4

CÁC LĨNH VỰC CỦA AI

Trang 6

KIẾN TRÚC KBS & CÁC THÀNH PHẦN CỦA ES

• Cơ sở tri thức (Knowledge Base – KB): có thể dược thu lượm từ sách vở, báo chí, con người …

• Động cơ suy diễn (Inference Engine): làm rút ra các kết luận từ KB

• Giao diện người dùng (user interface)

Trang 8

ƯU ĐIỂM CỦA HỆ CHUYÊN GIA

• Tăng giá trị sử dụng

• Giảm giá thành

• Giảm hiểm nguy

• Hiệu năng

• Nhiều sự tinh thông

• Tăng độ tin cậy

• Giải thích rõ ràng

• Đáp ứng nhanh

• Vững trãi, không bị xúc cảm, đáp ứng đầy đủ mọi lúc

• Người giám hộ thông minh, cơ sở dữ liệu thông minh

Trang 9

NHƯỢC ĐIỂM CỦA HỆ CHUYÊN GIA

• Các hệ chuyên gia kiểu mẫu không thể khái quát hoá các tình huống mới như cách con người có thể

• Thu lượm tri thức tiêu tốn thời gian và sức lực và là nhiệm vụ khó khăn trong xây dựng một hệ chuyên gia

Trang 10

BIỂU DIỄN TRI THỨC

• Tri thức trong một hệ chuyên gia có thể được biểu

diễn bởi một số cách, bao gồm các quy tắc IF-THEN

• Một số vấn đề cần chú ý khi biểu diễn tri thức:

– Tính dư thừa

– Tính mâu thuẫn

– Tính chu trình trong tập quy tắc

Trang 11

KỸ NGHỆ TRI THỨC

• Đóng vai trò quan trọng trong xây dựng một hệ

chuyên gia

• Kỹ sư tri thức (knowledge engineer): đối thoại với

chuyên gia con người để làm lộ ra tri thức

• Kỹ sư tri thức (knowledge engineer): mã hoá tri thức trong cơ sở tri thức

• Chuyên gia đánh giá ES và cho kỹ sư tri thức các

bình luận

Trang 12

PHÁT TRIỂN MỘT HỆ CHUYÊN GIA

Trang 13

PHÁT TRIỂN MỘT HỆ CHUYÊN GIA

• Dưa vào các nghiên cứu nhận thức: con người xử lý thông tin như thế nào?

Trang 14

XEM XÉT XÂY DỰNG CÁC HỆ CHUYÊN GIA

• Vấn đề có thể được giải quyết hiệu quả bởi lập trình thoả thuận?

• Lĩnh vực được giới hạn rõ ràng?

• Có cần thiết và đòi hỏi một hệ chuyên gia?

• Có chuyên gia mong muốn hợp tác ? (các lỗi của họ có thể bị lộ tẩy, các bí mật của họ bị lộ, họ có các ý tưởng

Trang 15

NGÔN NGỮ, SHELLS & CÔNG CỤ

• Chương trình máy tính thoả thuận nói chung giải

quyết vấn đề với lời giải thuật toán

• Sự gắn bố chặt chẽ giữa dữ liệu và tri thức dẫn đến điiều khiển cứng, điều khiển luồng

• Nhiều ngôn ngữ ra đời sớm hơn phục vụ trong phạm

vi hạn chế

• Ngôn ngữ hệ chuyên gia thuộc hậu thế hệ thứ ba

• Ngôn ngữ thủ tục như C nhắm vào kỹ thuật biểu diễn

dữ liệu Java nhắm vào trừu tượng dữ liệu

• Ngôn ngữ hệ chuyên gia nhắm vào biểu diễn tri thức

Trang 16

CÁC PHẦN TỬ CỦA HỆ CHUYÊN GIA

• Giao diện người dùng: cơ chế cho phép liên lạc giữa người dùng và hệ thống

• Khả năng dễ khảo sát: giải thích lập luận của hệ

chuyên gia cho người dùng

• Bộ nhớ làm việc: cơ sở dữ liệu tổng thể các sự kiện được dùng bởi các quy tắc

• Động cơ suy diễn: thực hiện các suy diễn (quyết định những quy tắc nào thoả mãn và thực hiện ưu tiên)

• Agenda: danh sách ưu tiên các quy tắc

• Khả năng dễ dàng thu lượm tri thức

• Cơ sở tri thức

Trang 17

CẤU TRÚC HỆ CHUYÊN GIA DỰA TRÊN QUY

TẮC

Trang 18

CÁC PHƯƠNG PHÁP SUY DIỄN CHÍNH

• Dây chuyền tiến (forward chaining): lập luận từ sự kiện đến kết luận

• Dây chuyền lùi (backward chaining): lập luận đi

ngược từ giả thiết (một kết luận tiềm năng) để chứng minh sự kiện hỗ trợ cho giả thiết

Trang 19

CƠ SỞ TOÁN HỌC CỦA CÁC HỆ DỰA TRÊN

QUY TẮC

• Các hệ hậu sản suất (Post Production Systems)

– Ý tưởng: hệ toán học/logic đơn giản là một tập các quy tắc xác định làm thế nào để thay đổi một chuỗi các ký hiệu

thành một chuỗi ký hiệu

– Giới hạn: thiếu cơ chế điều khiển hướng dẫn áp dụng các quy tắc

• Thuật toán Markov

– Một dãy các sản suất được áp dụng theo thứ tự hoặc tính ưu tiên đối với một chuỗi input

– Quy tắc có độ ưu tiên cao được áp dụng trước

– Hiệu quả đối với các hệ có nhiều quy tắc

Trang 20

CƠ SỞ TOÁN HỌC CỦA CÁC HỆ DỰA TRÊN

QUY TẮC (cont.)

• Thuật toán RETE

– Các hàm như một mạng: giữ nhiều thông tin

– Thời gian đáp ứng nhanh hơn nhiều, khai hoả quy tắc diễn

ra được so sánh với nhóm các quy tắc IF-THEN, chúng

được kiểm tra từng cái một trong chương trình thoả thuận – Ưu điểm: cấu trúc đơn giản

– Nhược điểm: đòi hỏi không gian bộ nhớ lớn

Trang 21

– Không phụ thuộc vào người lập trình

– Lập trình khai báo: đích tách biệt với phương pháp đạt

được nó

– Lập trình hương đối tượng: nửa khai báo, nửa lệnh

– Kế thừa

Trang 22

NGÔN NGỮ KHÔNG THỦ TỤC

Trang 23

HỆ NƠ RON NHÂN TẠO (ANS)

• Dựa trên cách bộ não xử lý thông tin

• Lời giải mô hình: rèn luyện các nơ ron mô phỏng trong một mạng

Trang 25

CẤU TRÚC HỆ DỰA TRÊN

TRI THỨC

Knowledge Based Systems Structure

Trang 26

NỘI DUNG

• Các thành phần hệ thống – góc nhìn người dùng cuối

• Các thành phần hệ thống – góc nhìn kỹ sư tri thức

• Các thành phần hệ thống – góc nhìn người xây dựng công cụ

• Công cụ dựa trên tri thức:

– Forward chaining: JESS, FuzzyCLIPS

– Backward chaining: PROLOG

Trang 27

CÁC THÀNH PHẦN HỆ THỐNG – end-user’s view

Intelligent program

Database

User Interface User

Trang 28

MỤC TIÊU GIAO DIỆN NGƯỜI DÙNG

• Cho phép chương trình thông minh đặt các câu hỏi cho người dùng về vấn đề sắp tới

• Cung cấp các giải thích về tại sao chương trình thông minh hỏi các câu hỏi đặc biệt

• Cho phép người dùng truy vấn chương trình thông minh tại sao và như thế nào một quyết định cụ thể

được tạo ra

• Trình bày các kết quả dẫn xuất (text, đồ hoạ, …)

• Cho phép người dùng lưu / in các kết quả

Trang 29

THIẾT KẾ GIAO DIỆN NGƯỜI DÙNG

• Phải tương hợp với người dùng đích

• Giao diện người dùng được thiết kế không thích hợp

có thể làm dự án KBS thất bại

• Người dùng cuối được tư vấn về những gì họ cần ở KBS

Trang 30

CƠ SỞ DỮ LIỆU ĐẶC TẢ VẤN ĐỀ

• Chứa đựng toàn bộ thông tin

– Về vấn đề hiện hành (được cung cấp bởi người dùng) – Các kết luận (cuối & trung gian) được dẫn xuất bởi hệ thông minh

• Các sự kiện / dữ liệu có thể

– Được dẫn xuất từ hệ quản trị dữ liệu

– Được tập hợp từ các sensors

– Trả lời của người dùng cuối

• Dữ liệu được mong đợi là phải chính xác

Trang 31

CÁC THÀNH PHẦN HỆ THỐNG – KE’s view

Knowledge base

Inference engine

Developer’s interface

Test case database

Knowledge acquisition tool Development shell Intelligent program

Trang 32

CHƯƠNG TRÌNH THÔNG MINH

• Được phát triển cho người dùng cuối

Trang 33

SHELL cho phát triển hệ thống

• Hỗ trợ KE trong cấu trúc, gỡ rối, sửa đổi mở rộng tri thức thu lượm được từ chuyên gia

• Gồm ba thành phần:

– Công cụ thu lượm tri thức

– Cơ sở dữ liệu kiểm thử

– Giao diện người phát triển hệ thống

Trang 34

CÔNG CỤ THU LƯỢM TRI THỨC

• Hoạn động như bộ soạn thảo KB

• Trợ giúp KE định vị lỗi

• Lưu giữ các bản ghi của tất cả các sửa đổi đã dược tạo ra, người tạo ra chúng, khi nào và tại sao chúng được tạo ra

Trang 35

CƠ SỞ DỮ LIỆU KIỂM THỬ

• Chứa các vấn đề mẫu đã được thực hiện thành công trên KB

• Hỗ trợ KE kiểm chứng nếu KB có thay đổi nhưng không làm suy thoái tính đúng đắn tổng thể của KB

Trang 36

GIAO DIỆN NGƯỜI PHÁT TRIỂN HỆ THỐNG

• Tương tự giao diện người dùng cuối

• Cho phép KE rèn luyện KB khi nó bị sửa đổi và kiểm thử

• KE có thể đặt ra các câu hỏi cho hệ thống:

– Phần nào của KB đang được sử dụng

– Tại câu hỏi lại được đặt ra

– Tại sao và như thế nào các kết quả được dẫn xuất

– …

Trang 37

CÁC THÀNH PHẦN HỆ THỐNG – Tool Builder’s

view

• Người xây dựng công cụ cung cấp các công cụ trợ

giúp KE trong xây dựng KBS

• Có góc nhìn giống với KE nhưng khác ở mục tiêu

• Liên quan tới:

– Chọn sơ đồ biểu diễn tri thức phù hợp

– Chọn sơ đồ lập luận thích hợp cho động cơ suy diễn (dây chuyền tiến, dây chuyền lùi, hai phía)

– Xử lý tri thức, dữ liệu không chính xác

– Lời giải được dẫn xuất: tất cả hai chỉ lời giải tốt nhất

– Các lý giải chi tiết đến mức nào?

– Duy trì DB kiểm thử ?

Trang 38

– Tính chi tiết của bộ soạn thảo tri thức

– Giao diện người dùng cuối cung cấp những đặc trưng gì?

Trang 39

CÔNG CỤ DỰA TRÊN TRI THỨC

• Hai phương pháp phát triển KBS:

– Sử dụng “công cụ phát triển” – shell của hệ chuyên gia: gói phần mềm chứa các thành phần và đặc điểm được mô tả trong KE’s view

– Phát triển hệ thông từ đầu

• Tốn thời gian, sự nỗ lực hơn

• KE cũng là người xây dựng công cụ

Trang 40

SHELL

• Shell quy nạp (ID3 )

• Shell dựa trên quy tắc

• Shell hỗn hợp

• Shell mục đích riêng

Trang 42

BIỂU DIỄN TRI THỨC & QUẢN TRỊ TRI THỨC

Knowledge Representation &

Management

Trang 43

NỘI DUNG

• Tri thức & biểu diễn tri thức

• Các phương pháp biểu diễn tri thức

– Quy tắc sản xuất (Production Rules)

– Logic

– Mạng ngữ nghĩa (Semantic Nets)

– Shemata và Khung (Shemata and Frame)

– Ontology

Trang 44

TRI THỨC & BIỂU DIỄN TRI THỨC

• Tri thức (knowledge)?

Knowledge: the psychological result of perception and

learning and reasoning (English – English Dictionary)

Tri thức là kết quả tâm lý của nhận thức, học tập và lập

luận

Phân loại tri thức

– Tri thức thủ tục: mô tả cách thức giải quyết một vấn đề

Loại tri thức này đưa ra giải pháp để thực hiện một công việc nào đó

– Tri thức khai báo: cho biết một vấn đề được thấy như thế

nào Loại tri thức này bao gồm các phát biểu đơn giản, dưới dạng các khẳng định logic đúng hoặc sai

Trang 45

TRI THỨC & BIỂU DIỄN TRI THỨC (cont.)

– Siêu tri thức: mô tả tri thức về tri thức Loại tri thức này

giúp lựa chọn tri thức thích hợp nhất trong số các tri thức khi giải quyết một vấn đề

– Tri thức heuristic: mô tả các "mẹo" để dẫn dắt tiến trình

lập luận Tri thức heuristic còn được gọi là tri thức kinh

nghiệm do không bảm đảm hoàn toàn chính xác về kết quả giải quyết vấn đề

– Tri thức có cấu trúc: mô tả tri thức theo cấu trúc Loại tri

thức này mô tả mô hình tổng quan hệ thống theo quan điểm của chuyên gia, bao gồm khái niệm, khái niệm con, và các đối tượng; diễn tả chức năng và mối liên hệ giữa các tri

thức dựa theo cấu trúc xác định

Trang 46

TRI THỨC & BIỂU DIỄN TRI THỨC (cont.)

• Bốn tính chất của một hệ thống biểu diễn tri thức tốt trong một lĩnh vực cụ thể:

– Thích hợp biểu diễn (Representation Adequacy): khả năng

biểu diễn tất cả các kiểu tri thức cần thiết cho lĩnh vực

– Thích hợp suy diễn (Inferential Adequacy): khả năng thao tác các cấu trúc biểu diễn theo cách sao cho dẫn xuất ra các cấu trúc mới tương ứng với tri thức mới được suy diễn từ tri thức

– Hiệu quả suy diễn (Inferential Efficiency): khả năng sát nhập vào cấu trúc tri thức, thông tin bổ xung, thông tin này có thể được dùng đến để hướng các cơ chế suy diễn theo hướng hứa hẹn nhất

– Hiệu quả thu được (Acquisitional Effeciency): khả năng thu nhận dễ dàng thông tin mới (xen tri thức mới vào cơ sở tri

thức bởi con người, chương trình có khả năng điều khiển việc thu lượm tri thức…)

Trang 47

VÍ DỤ BIỂU DIỄN TRI THỨC

Trang 48

CÁC PHƯƠNG PHÁP BIỂU DIỄN TRI THỨC

• Quy tắc sản xuất (Production Rules)

• Logic

• Mạng ngữ nghĩa (Semantic Nets)

• Shemata và Khung (Shemata and Frame)

• Ontology

Trang 49

QUY TẮC SẢN XUẤT – PR

• Được sử dụng thường xuyên để công thức hoá tri

thức trong các hệ chuyên gia

• Một biến thể hình thức của Backus – Naur form

(BNF)

– Siêu ngôn ngữ cho định nghĩa cú pháp ngôn ngữ

– Một văn phạm=tập các đầy đủ, không mơ hồ các quy tắc sản xuất

– Cây phân tích=biểu diễn đồ thị của một câu trong ngôn ngữ – Chỉ cung cấp mô tả cú pháp của ngôn ngữ

– Xuất phát từ ý tưởng: tri thức có thể được cấu trúc bởi cặp

<điều kiện> - <hành động>

Trang 50

QUY TẮC SẢN XUẤT - PR (cont.)

• Ví dụ: Bài toán đong dầu Có ba bình không phân độ, dung tích lần lượt là 7, 5, 3 lít Đầu tiên bình 7 chứa đầy dầu Bài toán: làm thế nào để đong được đúng

một lit dầu?

Biểu diễn bài toán trong không gian trạng thái:

một trạng thái là một bộ ba (x, y, z) trong đó x, y, z lần lượt chỉ số lít dầu có trong bình 7, 5, 3

trạng thái ban đầu là (7, 0, 0)

trạng thái kết thúc {(x, y, z) | x = 1 or y = 1 or z = 1} Các “toán tử” hợp lệ: rót dầu từ một bình không rỗng sang một bình chưa đầy

Trang 51

QUY TẮC SẢN XUẤT - PR (cont.)

• Bảng các toán tử hợp lệ:

C(x, y) x > 0; y < 5 x = max(0, x + y – 5); y = min(x+y, 5) C(x, z) x > 0; z < 3 x = max(0, x+ z – 3); z = min(x+z, 3) C(y, x) y > 0; x < 7 x = x + y; y = 0

C(y, z) y > 0; z < 3 y = max(0, y + z – 3); z = min(y+z, 3) C(z, x) z > 0; x < 7 x = x + z, z = 0

C(z, y) z > 0; y < 5 z = max(0, y + z – 5); y = min(y+z, 5)

Trang 52

QUY TẮC SẢN XUẤT - PR (cont.)

• Các toán tử có thể biểu diễn dưới dạng quy tắc sản xuất: C(x, y) = if (x>0) && (y<5) then <rót dầu từ x sang y> kết quả là (x=max(0, x+y–5); y=min(x+y, 5))

C(x, z) = if (x>0) && (z<3) then <rót dầu từ x sang z> kết quả là (x=max(0, x+z–3); z=min(x+z, 3))

C(y, x) = if (y>0) then <rót dầu từ y sang x>

kết quả là (x=x+y; y = 0)

C(y, z) = if (y>0) && (z<3) then <rót dầu từ y sang z>

kết quả là (y=max(0, y+z–3); z=min(y+z, 3))

Trang 53

QUY TẮC SẢN XUẤT - PR (cont.)

• Quy tắc sản xuất thường được ký hiệu dạng:

<điều kiện>  <hành động/ kết quả của hành động>

Tập các quy tắc sản xuất của bài toán đong dầu:

(x>0), (y<5)  x=max(0, x+y–5), y=min(x+y, 5)

(x>0),(z<3)  x=max(0, x+z–3), z=min(x+z, 3)

Trang 54

QUY TẮC SẢN XUẤT - PR (cont.)

• Ưu điểm:

– ™ Tính biểu cảm / tính thích hợp biểu diễn: các khía cạnh liên quan của tri thức lĩnh vực có thể được phát biểu bằng quy tắc sản xuất, đơn giản, dễ hiểu

– Tính thích hợp suy diễn/ hiệu quả tính toán: dễ dàng xây dựng cơ chế suy luận và giải thích trên các quy tắc sản xuất

– Tính hiệu quả suy diễn, tính hiệu quả thu được: hiệu chỉnh và bảo trì hệ thống tương đối dễ dàng Có thể tích hợp với các quy tắc sản xuất mờ

• Nhược điểm:

– Thực thi đơn giản thường thiếu hiệu quả

– Một số kiểu tri thức không dễ dàng biểu diễn được bằng quy tắc sản xuất

– Khi tập quy tắc lớn, khó khăn để hiểu và bảo trì

Trang 55

QUY TẮC SẢN XUẤT - PR (cont.)

• Tối ưu hoá tập các quy tắc A  B

– Rút gọn vế phảỉ: xoá bỏ các sự kiện vế phải nếu nó cũng xuất hiện ở vế trái Nếu sau khi rút gọn vế phải trở nên rỗng thì xoá bỏ quy tắc đó khỏi tập các quy tắc

Trang 56

QUY TẮC SẢN XUẤT - PR (cont.)

– Nếu trong tập các quy tắc có phần <điều kiện> chứa phần

<điều kiện> của một quy tắc khác thì xoá quy tắc đó đi

Ví dụ trong tập quy tắc có các quy tắc

A  B  C  <hành động>

A  C  <hành động>

Xoá quy tắc A  B  C  <hành động> khỏi tập các quy tắc

Trang 57

QUY TẮC SẢN XUẤT - PR (cont.)

– Nếu trong tập các quy tắc có phần <điều kiện> chứa phần

<điều kiện> của một quy tắc quy tắc dẫn xuất thì xoá quy tắc đó đi

Trang 58

QUY TẮC SẢN XUẤT - PR (cont.)

– Nếu một quy tắc có dạng <điều kiện 1 >  <điều kiện 2>

 <hành động> thì phân rã thành hai quy tắc

<điều kiện 1>  <hành động> , <điều kiên 2>  <hành động>

Ví dụ: A  B  C phân rã thành hai quy tắc

A  C, B  C

Ngày đăng: 15/09/2014, 02:06

HÌNH ẢNH LIÊN QUAN

BẢNG  Hình - Giáo trình hệ cơ sở tri thức
nh (Trang 83)

TỪ KHÓA LIÊN QUAN

w