Tải bản đầy đủ (.ppt) (118 trang)

Trí tuệ nhân tạo - Chương 3 - Tri thức và các phương pháp biểu diễn tri thức pps

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.35 MB, 118 trang )

TRƯỜNG CAO ĐẲNG CNTT HỮU NGHỊ ViỆT - HÀN
KHOA KHOA HỌC MÁY TÍNH
***
TRÍ TUỆ NHÂN TẠO
(Artificial Intelligence - AI)
Nguyễn Thanh Cẩm
07/28/14 2
Contents
Tổng quan về khoa học trí tuệ nhân tạo
1
Các phương pháp giải quyết vấn đề cơ bản
2
Tri thức và các phương pháp biểu diễn tri thức
3
Máy học
4
Mạng Nơron
5
07/28/14 3
Tri thức và các phương pháp
Tri thức và các phương pháp
biểu diễn tri thức
biểu diễn tri thức


Chương 3
3.1
3.2
3.3
Thông tin, dữ liệu và tri thức
Thuật toán – một phương pháp biểu diễn tri thức


Các phương pháp biểu diễn tri thức trên máy tính
07/28/14 4
3.1 Thông tin, dữ liệu và tri thức

Tri thức là một khái niệm rất trừu tượng.

So sánh khái niệm "tri thức" với hai khái
niệm

Thông tin và

Dữ liệu.

Nhà bác học nổi tiếng Karan Sing đã từng nói:
"Chúng ta đang ngập chìm trong biển thông tin
nhưng lại đang khát tri thức".
07/28/14 5

Dữ liệu là các con số, chữ cái, hình ảnh, âm
thanh mà máy tính có thể tiếp nhận và xử lý.

Dữ liệu thường không có ý nghĩa đối với con
người.

Thông tin là tất cả những gì mà con người có
thể cảm nhận được một cách trực tiếp hoặc
gián tiếp

Đối với con người Thông tin luôn có một ý nghĩa
nhất định nào đó.

3.1 Thông tin, dữ liệu và tri thức
07/28/14 6

Thông tin là quan hệ giữa các dữ liệu. Nếu
những quan hệ này được chỉ ra một cách rõ
ràng thì đó là các tri thức. Chẳng hạn:

Trong toán học: 1, 1, 3, 5, 2, 7, 11, là các
dữ liệu.

Dữ liệu: 1, 1, 2, 3, 5, 8, 13, 21, 34,

Biểu diễn bằng công thức: U
n
= U
n-1
+ U
n-2
.

Công thức nêu trên chính là tri thức.
3.1 Thông tin, dữ liệu và tri thức
07/28/14 7
I U R
5 10 2
2.5 20 8
4 12 3
7.3 14.6 2
3.1 Thông tin, dữ liệu và tri thức


Trong vật lý:
Công thức này là tri thức
07/28/14 8
3.1 Thông tin, dữ liệu và tri thức

Trong cuộc sống hàng ngày:

Chuồn chuồn bay thấp thì mưa, bay cao thì
nắng, bay vừa thì râm.

Lời nhận xét trên là tri thức.

Mọi mối liên hệ giữa các dữ liệu đều có thể
được xem là tri thức, bởi vì những mối liên hệ
này thực sự tồn tại.
07/28/14 9
3.1 Thông tin, dữ liệu và tri thức

Bạn hãy hình dung dữ liệu như là những điểm
trên mặt phẳng

Còn tri thức chính là phương trình của đường
cong nối tất cả những điểm này lại.
07/28/14 10
3.1 Thông tin, dữ liệu và tri thức

Người ta thường phân loại tri thức ra làm các dạng như
sau:

Tri thức sự kiện: Chẳng hạn: mặt trời mọc ở phía

đông, tam giác đều có 3 góc 60
0
,

Tri thức thủ tục: Thuật toán, thuật giải là một dạng
của tri thức thủ tục.

Tri thức mô tả: một cái bàn thường có 4 chân, con
người có 2 tay, 2 mắt,

Tri thức Heuristic: là một dạng tri thức cảm tính. có dạng
ước lượng, phỏng đoán, và thường được hình thành
thông qua kinh nghiệm.
07/28/14 11
3.1 Thông tin, dữ liệu và tri thức

Tri thức không quyết định sự thông minh
(người biết nhiều định lý toán hơn chưa chắc đã
giải toán giỏi hơn!)

Nhưng nó là một yếu tố cơ bản cấu thành trí
thông minh.

Muốn xây dựng một trí thông minh nhân tạo, ta
cần phải có tri thức.

Vấn đề đầu tiên là: đưa tri thức vào máy tính
(được gọi là biểu diễn tri thức).
07/28/14 12
3.1

3.2
3.3
Thông tin, dữ liệu và tri thức
Thuật toán – một phương pháp biểu diễn tri thức
Các phương pháp biểu diễn tri thức trên máy tính
Tri thức và các phương pháp biểu diễn tri thức
07/28/14 13
3.2 Thuật toán – một phương pháp biểu diễn tri thức

Chương trình giải phương trình bậc hai có được
xem là một chương trình có tri thức hay
không?

Vậy thì tri thức nằm ở đâu?

Tất cả các chương trình máy tính ít nhiều đều
đã có tri thức. Đó chính là tri thức của lập trình
viên được chuyển thành các câu lệnh của
chương trình.

Các tri thức trong những chương trình truyền
thống là những tri thức "cứng",
07/28/14 14
3.2 Thuật toán – một phương pháp biểu diễn tri thức

Chương trình hỗ trợ ra quyết định (như đầu tư
cổ phiếu, đầu tư bất động sản chẳng hạn),

Người dùng muốn đưa vào chương trình những
kiến thức của mình thì anh ta phải chọn một

trong hai cách là:

(1) tự sửa lại mã chương trình!?

(2) tìm tác giả của chương trình để nhờ người
này sửa lại!?.

Cả hai thao tác trên đều không thể chấp nhận
được.
07/28/14 15
3.2 Thuật toán – một phương pháp biểu diễn tri thức

Cần phải "mềm" hóa các tri thức được biểu diễn trong
máy tính.

Mọi chương trình máy tính đều gồm hai thành phần là
các mã lệnh và dữ liệu.

Mã lệnh được ví như là phần cứng của chương trình còn
dữ liệu được xem là phần mềm.

"mềm" hóa tri thức là tìm các phương pháp để có thể
biểu diễn các loại tri thức của con người bằng các cấu
trúc dữ liệu mà máy tính có thể xử lý được.

Đây cũng chính là ý nghĩa của thuật ngữ "biểu diễn tri
thức".
07/28/14 16
3.2 Thuật toán – một phương pháp biểu diễn tri thức


Con người vẫn chưa thể tìm ra một kiểu biểu diễn tổng
quát cho mọi loại tri thức!

Hãy xét một số bài toán:

Bài toán 1: Cho hai bình rỗng X và Y có thể tích lần
lượt là V
X
và V
Y
, hãy dùng hai bình này để đong ra z lít
nước (z <= min(V
X
,V
Y
)).

Bài toán 2: Cho biết một số yếu tố của tam giác (như
chiều dài cạnh và góc, ). Hãy tính các yếu tố còn
lại.

Bài toán 3: Tính diện tích phần giao của các hình hình
học cơ bản.
07/28/14 17
3.2 Thuật toán – một phương pháp biểu diễn tri thức

Bài toán 1 sẽ được giải quyết bằng cách sử
dụng các luật dẫn xuất (luật sinh).

Bài toán 2 sẽ được giải quyết bằng mạng ngữ

nghĩa và

Bài toán 3 sẽ giải quyết bằng công cụ frame.
07/28/14 18
3.2 Thuật toán – một phương pháp biểu diễn tri thức

Với bài toán 1, như V
X
= 5, V
Y
= 7 và z = 4, một quy
trình đổ nước như:

Múc đầy bình 7

Trút hết sang bình 5 cho đến khi 5 đầy.

Đổ hết nước trong bình 5

Đổ hết nước còn lại từ bình 7 sang bình 5

Múc đầy bình 7

Trút hết sang bình 5 cho đến khi bình 5 đầy.

Phần còn lại chính là số nước cần đong.
07/28/14 19
3.2 Thuật toán – một phương pháp biểu diễn tri thức

Mỗi một trường hợp sẽ có một cách đổ nước

hoàn toàn khác nhau.

Nếu có một ai đó yêu cầu bạn đưa ra một cách
làm tổng quát thì chính bạn cũng sẽ lúng túng.
07/28/14 20
3.2 Thuật toán – một phương pháp biểu diễn tri thức

Sau nhiều lần thí nghiệm, rất có thể bạn sẽ rút ra được
một số kinh nghiệm như:

"khi bình 7 đầy nước mà bình 5 chưa đầy thì hãy đổ
nó sang bình 5 cho đến khi bình 5 đầy"

Tại sao bạn không thử "truyền" những kinh nghiệm này
cho máy tính và để cho máy tính "mày mò" tìm các thao
tác cho chúng ta?

Vì máy tính có khả năng "mày mò" hơn hẳn chúng ta!

Những "kinh nghiệm" mà chúng ta cung cấp cho máy
tính không giúp tìm được lời giải, chúng ta sẽ thay thế
nó bằng những kinh nghiệm khác
07/28/14 21
3.2 Thuật toán – một phương pháp biểu diễn tri thức

Chúng ta hãy phát biểu lại bài toán một cách hình thức:

Giả sử rằng V
X
<V

Y
.

Gọi lượng nước chứa trong bình X là x
(0<=x<=V
X
)

Gọi lượng nước chứa trong bình Y là y
(0<=y<=V
Y
)

Điều kiện kết thúc của bài toán sẽ là :

x = z hoặc y = z

Điều kiện đầu của bài toán là : x = 0 và y = 0
07/28/14 22
3.2 Thuật toán – một phương pháp biểu diễn tri thức

Quá trình giải được thực hiện bằng cách xét lần
lượt các luật (kinh nghiệm ).

Sau khi áp dụng luật, trạng thái của bài toán
sẽ thay đổi.

Ba luật được mô tả như sau:

(L1) Nếu bình X đầy thì đổ hết nước trong bình X đi.


(L2) Nếu bình Y rỗng thì đổ đầy nước vào bình Y.

(L3) Nếu bình X không đầy và bình Y không rỗng thì
hãy trút nước từ bình Y sang bình X (cho đến khi bình
X đầy hoặc bình Y hết nước).
07/28/14 23
3.2 Thuật toán – một phương pháp biểu diễn tri thức

Trên thực tế, lúc đầu người ta dùng đến hơn 15 luật
(kinh nghiệm) khác nhau. rút gọn còn 3 luật.

Chuyển đổi cách giải thành chương trình như sau:

x = 0; y = 0;
while ( (x != z) && (y != z) )
{ if (x = = Vx) x = 0;
if (y = = 0) y = Vy;
if (y > 0)
{ k = min(Vx - x, y);
x = x + k;
y = y - k;
}
}

07/28/14 24
3.2 Thuật toán – một phương pháp biểu diễn tri thức

Thử "chạy" chương trình trên với số liệu cụ thể:


Vx = 3, Vy = 4 và z = 2

Ban đầu : x = 0, y = 0

Luật (L2) -> x = 0, y = 4

Luật (L3) -> x = 3, y = 1

Luật (L1) -> x = 0, y = 1

Luật (L3) -> x = 1, y = 0

Luật (L2) -> x = 1, y = 4

Luật (L3) -> x = 3, y = 2
07/28/14 25
3.2 Thuật toán – một phương pháp biểu diễn tri thức

Ba luật mà chúng ta đã cài đặt trong chương
trình ở trên được gọi là cơ sở tri thức.

Còn cách thức tìm kiếm lời giải bằng cách
duyệt tuần tự từng luật và áp dụng nó được gọi
là động cơ suy diễn.

Bài toán đong nước chỉ có lời giải khi số nước
cần đong là một bội số của ước số chung lớn
nhất của thể tích hai bình.

z = n × USCLN(V

X
, V
Y
) (với n nguyên dương)

×