Professional Documents
Culture Documents
BÀI GIẢNG
HỆ CHUYÊN GIA
TS tiết Lý thuyết Thực h nh/ Xemina Tự học B i tập lớn Đồ án môn học
60 45 0 0 15 0
Nhiệm vụ của sinh viên: Lên lớp đầy đủ v chấp h nh mọi quy định của Nh trƣờng.
L m b i tập lớn đúng hạn.
Tài liệu tham khảo:
1. Nguyễn Thanh Thủy - Hệ Chuyên gia - Trƣờng Đại học Bách khoa H nội - 2002
2. Ho ng Kiếm - Các hệ cơ sở tri thức - Nh xuất bản ĐHQG TPHCM - 2002
3. JohnDurkin - Expert systems - NXB Prentic Hall - 1994
Hình thức và tiêu chuẩn đánh giá sinh viên:
- Thi viết rọc phách, thời gian l m b i: 60 phút.
Thang điểm : Thang điểm chữ A,B,C,D,F.
Điểm đánh giá học phần: Z=0,3X+0,7Y.
B i giảng n y l t i liệu chính thức và thống nhất của Bộ môn Khoa học máy tính, Khoa
Công nghệ thong tin v đƣợc dùng để giảng dạy cho sinh viên.
Hệ chuyên gia = CSTT + MTSD + GD + Modul hỏi đáp + Thu nhận tri thức
Các vấn đề của hệ chuyên gia:
Quản trị tri thức
Môtơ - suy diễn:
Sd thông thƣờng
Sd với Metaknowledge
Sd không chắc chắn
Sd xấp xỉ logic xác suất
Logic mờ
Giao diện
Hỏi đáp
KDD : thu nạp (phát hiện) tri thức từ dữ liệu
HCG phân tán
1
Chương 1: Tổng quan về hệ chuyên gia
1.1. Hệ chuyên gia - chương trình ứng dụng (HCG - CTƯD)
Khái niệm: Hệ chuyên gia (HCG ) l một chƣơng trình ứng dụng (CTƢD) khai
thác cơ sở tri thức (CSTT) thu nạp từ nguồn tri thức chuyên môn dựa trên việc sử
dụng cơ chế suy diễn để giải quyết các b i toán tƣ vấn KHÓ đạt trình độ cỡ nhƣ
một CHUYÊN GIA LÂU NĂM LÀNH NGHỀ
i) Ta có sơ đồ mô tả nhƣ sau:
HCGƢD = CSTT + MTSD
(BDTT)
Nguồn tri thức NSD
2
Sau khi đã xét ai trò của các nhân tố ở mục trên ta có thể thấy rằng để xây dựng một
hệ chuyên gia thì cần có sự tham gia của các nhân tố. v sự kết hợp của họ tiến h nh
trong một thời gian d i( long-term). Các nhân tố bao gồm:
- CGia
- LTV
- Kĩ sƣ tri thức
iv) Hai phƣơng cách xây dựng hệ chuyyên gia ứng dụng
Cách 1:
Với cách n y có sự kết hợp v nỗ lực giũa các chuyên gia, các kĩ sƣ tri thức và các
lập trình viên. Họ l m việc cùng nhau và kết quả l xây dựng một hệ chuyên gia.
HCGƯD = ∑ nỗ lực (CGia + KSTT + LTV)
Cognitive Engineering
Cách 2:
Trong cách này không có sự tham gia của Lập trình viên
HCGƯD = ∑ nỗ lực (CGia + KSTT) + CÔNG CỤ
ES Generation KBMS
Shell ES ES Building to
Empty ES
v) Hệ tri thức(knowledge system)
Tri thức đƣợc thu nạp từ nhiều nguồn khác nhau nhƣ là:
+T i liệu
+KDD
+Knowledge Base System
+Knowledge Base System : Hệ thống l m việc trên cơ sở tri thức
vi) Hệ chuyên gia nhằm giải quyết b i toán tƣ vấn (consultation) khó
HTTTQL HCG
Nhiều thông tin Ít
3
Nhanh Chậm SUPER cross - validation
Chính xác KCX
NSD
C.Gia
KSTT
CSTT(2 )
CS luật Cs sự
KDD l.vực kiện
CSDL (NSD)
L
4
Phân tích (If … then)
HCG = 1 +(2 + 3) + 4 + 5 + 6
Kenel(nhân)
Ví dụ:
(1) Đánh cờ
i) CHƢƠNG TRÌNH CỜ = CTDL + Thuật giải Heuristic
ii) Cẩm nang
If thế cờ Then đi quân.....
(2) Hệ Tử vi
(3) Hệ khám bệnh
1.3. Ứng dụng hệ chuyên gia
Hiên nay hệ chuyên gia đƣợc ứng dụng trong nhiều lĩnh vực khác nhau: ví dụ nhƣ
công nghệp, nông nghiệp, khoa học máy tính, thƣơng mại khí tƣợng, y học, quân sự,
hoá học.....Đặ biệt trong giai đoạn gần đây việc ứng dụng hệ chuyên gia vào lĩnh vực
giáo dục đ o tạo đang đƣợc phát triển mạnh.
Ở đâu cần tƣ vấn ở đó có thể xây dựng hệ chuyên gia
nên
phải
* Các dạng b i toán (Sự tƣ vấn)
1 - Diễn giải (Interpretation): Đƣa ra mô tả tình huống các dữ liệu thu thập
đƣợc.
2 - Dự báo (Hediction): đƣa ra hậu quả của một tình huống nào đó, nhƣ là dự
báo thời tiết, dự báo giá cả thị trƣờng.
3 - Chuẩn đoán (Diagnosis): Xác định các lỗi , các bộ phận hỏng hóc của hệ
thống dựa trên các dữ liệu quan sát đƣợc.
(Khi hệ thống hoạt động không bình thƣờng)
4 - Gỡ rối (Debugging): Mô tả các phƣơng pháp khắc phục hệ thống khi gặp
sự cố.
5
5 - Thiết kế : lựa chọn cấu hình các đói tƣợng nhằm thoả mãn một số ràng
buộc nào đó:
x: CAD
Intelligent (x) : CAD
6 - Giảng dạy : Phần mềm dạy học, có thể chuẩn đoán và sủa lỗi của học sinh
trong quá trình học tập.
- Multimedia
- Internet
Bài tập chương 1:
Câu 1: Hệ chuyên gia l gì? Cho ví dụ?
Câu 2: Trình b y cấu trúc của một hệ chuyên gia trong thực tế.
Câu 3: Liệt kê các hệ chuyên gia đã đƣợc ứng dụng thực tế (tối thiểu 6 hệ).
6
Chương 2: Biểu diễn tri thức
2.1. Mở đầu
Ở chƣơng trƣớc chúng ta đã có khái niệm đơn giản nhƣ thế nào là một hệ
chuyên gia. Một thành phần vô cùng quan trọng của hệ chuyên gia đó là cơ sở tri
thức. Thông qua các phiên thu nạp tri thức ( trực tiếp hay gián tiếp) chúng ta đã xây
dựng đƣợc một cơ sở tri thức cho hệ chuyên gia. Vậy làm thế nào đẻ quản lí và thao
tác xử lí để hệ chuyên gia có thể hoạt động đƣợc. Trong chƣơng này chúng ta sẽ đề
cập đến vấn đề đó và giải quyết vấn đề đó nhƣ thế nào.
HCSTT/ HCGƢD = CSTT + MTSD + Giao Diện + Giải thích + Thu nạp (KDD)/
Soạn thảo (Tri thức chuyên gia)
KB Administrator - Dƣ thừa
- Đúng đắn Chính xác phi mâu thuẫn
Không chính xác
- Tổ chức lƣu trữ ..... suy diễn
hiệu năng
- Phân tán
- Chuyển đổi biểu diễn các mức / user
2.2. Dư thừa (Redundancy)
- CSTT = ( CS luật, CS sự kiện)
Rule Base, Fact base
Tri thức chuyên về l.vực Thông tin về một b i toán (cụ thể)
2.2.1. Dƣ thừa luật
ĐN: cho CSTT: B1 = (R1, F1)
B2 = (R2, F2)
Ta nói R1 R2 Sức mạnh suy diễn của R1 bằng sức mạnh suy diễn của R2
Bao đóng suy diễn cho R. Xét A F
Tiến * **
7
A R = f F/ A f
GT
VD:
1) a b c
2) b c d e
3) a d f
4) c g
5)a h
6) d c h
7) b u
a+ = a, h
a, b + = a, b, c, g , u, h
Nhận xét: Một luật trong logic mệnh đề PTH v bao đóng = bao đóng của PTH
VD: Logic vị từ:
V1: td (U, XY) tđ (V, XZ) SS (UV, YZ)
V2: SS (UV, XY) SS (XY, ST) SS (UV, ST)
V3: SS (UV, XY) SS (UT, XY) THAG (U,V,T)
Q
P
K L
B C
GT = tđ (P, AB), tđ (Q, AC), tđ (K,BQ), tđ (L,CP)
8
GT R = … ?
VD: Quy nạp toán học P(x)
(1) P(1)
(2) P (i) P (i + 1)
P(1)R = P(1), P(2), P(3),...
x P (x)
* Việc xác định bao đóng suy diễn dựa v o SD tiến:
B E
C E A B
9
ri : lefti qi
le ft i K
F (1+K)m = (m)
F = 0 (m)
ĐN:
Luật r R thừa trong R R\ r R
Tiêu chuẩn 1 (áp dụng cho logic mệnh đề)
r: left q R dƣ thừa q left R / r
giải thích:
left ... q
R / r
Câu hỏi: Thuật toán xác định bao đóng của 1 tập
A R 0 (m2) 0(m) (logic mệnh đề)
(SD tiến)
VD:
1) a m u
2) u c u c
3) a b c ab c
4) u b Q3 : Thứ tự có ảnh hƣởng r R không
5) b g
6) g c
- Khi xét các biểu diễn l logic vị từ vấn đề dƣ thừa nhƣ thế n o?
2.2.2. Dƣ thừa sự kiện
Giả sử cơ sở luật không chứa luật dư thừa
ĐN: Xét r : left q
f left
f đƣợc coi l dƣ thừa trong r thay r bởi r’ : left \ f q vẫn có tập luật tƣơng
đƣơng ( R r) r R
10
TC 2: f dƣ thừa f (left \ rf )
R+
Giải thích: (m2)
r: (left\ f ) f q 0 (m)
CHÚ Ý:
- Dƣ thừa không có ý nghĩa l vô ích
- Duy trì dƣ thừa kéo theo nâng cao chất lƣợng suy diễn
KSTT q.định dƣ thừa có vô ích hay không?
VD: GT = a, m KL = c
Vet1 = r1, r2
Vet2 = { r1, r4, r5, r6 }
Luật hợp th nh (compositional rule):
T vet1: a m c (tăng suy diễn, giảm bộ nhớ)
VD: Hệ chuyên gia chứng minh biểu thức hoá học
Tri thức 7:
2.3. Mâu thuẫn (consistency - inconsistency)
2.3.1 Mâu thuẫn tƣờng minh
- Khi duyệt CSTT, chỉ qua ht bên ngo i của các luật đã phát hiện ra ><
ĐN:
Ta nói: r: left q >< r’: left’ q’
+ left left’ hoặc left’ left
+ q >< q’
_
Trong logic mệnh đề: p >< p
_
Trong logic vị từ: + p(a) >< p (a)
_
+ p (a) >< x p(x)
_
+ p(a) >< x p (a)
0(k2) 0 (K log2K)
* Xử lý mâu thuẫn
- Xử lý cục bộ : r >< r’
+ theo trọng số
+ theo lĩnh vực chuyên môn
r thuộc lĩnh vực chuyên môn A
r’ thuộc lĩnh vực chuyên môn B
+ theo xử lý ngoại lệ: r – chung; r’ - ngoại lệ; left left’
- Xử lý tổng thể: thể hiện trong:
ĐỒ THỊ MÂU THUẪN : - đỉnh l luật
- cạnh l mâu thuẫn
A
(r, r’) A r >< r’
Nhƣ vậy:
r10 r9
r1 r5
r8
r100
Biện pháp: Vứt bỏ tập luật (tập con các luật) R0 R sao cho R\ R0 trở th nh phi ><
Theo những đồ thị: bỏ luật cùng các cạnh liên thuộc để có một đồ thị con R\ R0 chỉ
còn các đỉnh cô lập (tức l (R, R0, ))
+ Tiêu chuẩn (R0) max / min
· Tiêu chuẩn (R0) = · R min
·
rR0
w(r) min
12
2.3.2. Mâu thuẫn không tƣờng minh (KTM)
ĐN: CSTT (R,F) chứa >< KTM
FF 1) F không chứa cặp sự kiện đụng độ
SUY DIỄN *
2) F R chứa cặp sự kiện đụng độ F F R
R
VD:
_
1) a b a, u R = a, u,...e,... e
2) b c
3) c d
4) d e
5) a u v
6) v w
_
7) w u e
* Thuật toán:
R={r1,r2……,rm}
Xét a F: R1={rj:leftj qj/a leftj}
R2={rl:leftl ql/a leftl}
R3=R\{R1,R2}
R 1' = R1 R3 ; R '2 = R2 R 3
Mâu thuẫn không tƣờng minh (R) Mâu thuẫn không tƣờng minh (R 1' ) mâu
thuẫn không tƣờng minh (R '2 )
Nếu a R1 = hoặc R2 = ; R = LA’ thì mâu thuẫn không tƣờng minh (R)
left R chứa cặp sự kiện đụng độ 0(m2)
2.4. Lưu trữ CSTT
A. Cấu trúc tĩnh: Với bảng luật lƣu trữ bằng mảng ARRAY
VD: 1) a b c a b c
b c d e
2) b c d e a d f
c g
a h 13
d c h
b u
Vế trái Vế phải
3) a d f
4) c g
5) a h
6) d c h
7) b u
Hai lƣu trữ cơ sở sự kiện v cơ sở luật
Tên Ý nghĩa Cơ sở luật
A ++++ SK1 SK2 SK3 KL
b a b c
c **** b c d e
d ---- a d f
c g
a f
a ++ a b e
b ... b c d e
.......
c **
14
C. Cấu trúc lại
CS/ Bảng sự kiện
Giá trị: lƣu thực trong máy tính (boolean)
Ngữ nghĩa: diễn giải ý nghĩa của nó
Câu hỏi: user đƣa ra các gợi ý đối với sự kiện
Trỏ: chỉ ra vị trí xuất hịên đầu tiên trong bảng luật
trỏ 1: chỉ sự kiện tiếp theo
trỏ 2: móc nối các sự kiện cùng tên
trỏ 3: nạp 1 danh sách móc nối giữa các luật
STT Tên Giá NN Ques VT VP Tro STT Tên Tro1 Tro2 Tro3 Dạng
trị s.k
1 a – +++ ? 1 1 a 1
2 b – &&&
?? 1 2 b 1
3 c – *** ??? 1 1 3 c 1
4 b 1
4 d – ### ???? 1 5 c 1
5 e – $$$ ????? – 1 6 d 1
7 c 1
8 a 1
9 d 1
Chú ý” Cấu trúc dữ liệu nào thì gắn với thao tác đó
+ Cập nhật: thêm, bớt, sửa: tất cả thao tác này là do ngƣời quản trị tri thức,
hay là kĩ sƣ tri thức đảm nhận
+ Suy diễn
15
2.5. Soạn thảo tri thức:
K.E
CSTT
BDTT
Chuyên gia
(NN tự nhiên)
a→b (NN lập trình)
Text Editor Text Editor
Cú pháp
text file PT cú pháp Sự chuyển đổi
Văn phạm
16
B. Cập nhật
Thêm có hại: mâu thuẫn
Bớt Dị thƣờng
Sửa bất lợi: dƣ thừa
___________________________________________________________________
Bài tập chương 2:
B i 1: Biểu diễn một cơ sở tri thức trong thực tế gồm 6 luật.
B i 2: Biểu diễn một cơ sở tri thức gồm 8 luật, xác định v xử lý các luật dƣ thừa.
B i 3: Biểu diễn một cơ sở tri thức gồm 8 luật, xác định v xử lý các mâu thuẫn.
17
Chương 3: Các kỹ thuật suy diễn và lập luận
3.1. Nhập môn
Động cơ
USER
CSTT
Tình huống
Kernel
18
D: 1) a b
2) b c a b c
c
3) c e
4) c d
e d
5) d e f
6) b h f
7) f h g h g
Tập sự kiện:
F = { a, b, c, d, e, f, g, h} tách ra hai sự kiện:
F1 = { a, b, c} R1 = { a b, b c}
F2 = { e, d, f, g, h} R2 = { d e f, f h g}
R0 = {c e, c d, b h}
F0 = {b, c, d, b, h}
R1 R0 R2
R3
19
A b
B c
C e
cd
f h g
bh
d eh
- Nếu phân rã dựa trên tập luật l m gốc thì dẫn đến full condition
- Phân rã theo tập sự kiện hình sao.
3.3. Mô tơ suy diễn
A. Suy diễn tiến, lùi (nhắc lại)
1. Suy diễn tiến tìm kiếm
VD: 1) a b 5) d e f
2) b c 6) b h
3) c e 7) f h g
4)c d
GT = {a}
{a}f min {a,b} min {a,b,c} {a,b,c,d}
2,6 r2
r1 3,4,6 r3
{a}
r1
{a, b}
r2 r6
{a, b, c} {a, b, h}
(3,4,6)
..... {a, b, h, c}
(3,4)
..... .....
20
SUY DIỄN TIẾN ĐỒ THỊ SUY DIỄN TIẾN
1) GT 1) Đỉnh gốc
2) T.gian (SK đã chứng minh) 2) Nút
3) THOẢ 3) CUNG
r
T.Gian T.Gian {q} T.Gian T.Gian
r: left q T.gian = Tgian {q}
r thoa
4) Kết thúc 4) Lá
T.Gian KL
5) VẾT 5) Đƣờng đi
Chú ý:
- Nếu SDT theo vét cạn độ phức tạp tƣơng ứng với quá trình tìm kiếm
trên đồ thị SD.
CSD trên(vecan) Ctìm kiếmVC = 0(BH)
B: Branching (độ phân nhánh) v H l chiều cao của cây
2. Suy diễn lùi tìm kiếm
f
{g} {f, h} {d, e, h}
r1 r5
ĐỒ THỊ SUY DIỄN LÙI ( And, or)
{g}
r7
{f} {h}
r6
{d} {e} {}
r4 r3
{c} {c} {a}
{b} {a}
21
Suy diễn lùi tìm kiếm theo chiều sâu
H'
CSDlùi CTKsâu = 0 (B )
- Trong trƣờng hợp suy diễn lùi mà có chu trình :
* Prolog
r1 A B c
r2 A C B GT = {a, b, hc}
r3 B C A KL = {c}
r4 a hc A {c} r1 {A, B} A {B, C, B} …
r3
r5 b hc A
chỉ số max: {c} {AB} {B}
A B
r1
B. Chọn hƣớng SD
r5 r4
- Tình huống GT, KL NSD SD Tiến, Lùi
- Tập luật R CTIẾN CLÙI
0(B TH )
T
0(B HL )
L
22
1) a b C c 9) a b c P
2) a b ma c 10) a b c P
3) a b mb c 11) a b c mc
4) A B C 12) a ha S
5) a hc B 13) a b C S
6) b hc A 14) a b c P S
7) a R A 15) b S hb
8) b R B 16) S p r
F1= {a, b, C} R1 = {r1, r2}
F2 = {a, b, ma} R2 = {r2}
F3 = {a, b, mb} R3 = {r3}
F4 = {A, B} R4 = {r4}
F5 = {a, hc} R5 = {r5}
F6 = {b, hc} R6 = {r6}
F7 = {a, R} R7 = {r7}
F8 = {b,R} R8 = {r8}
F9 = {a, b, c, p} R9 = {r9, r10, r11, r14}
F10 = {a, ha} R10 = {r12}
F11 = {b, S} R11 = {r15}
F12 = {S, p} R12 = {r16}
Ƣớc lƣợng:
B Tm = max (2, 1, 4) = 4
_
16
BT = = 1,33
12
23
2.Ƣớc lƣợng BL
c có 3 luật
C có 1
B có 2 BL max = 3
_
16
A có 2 BL = = 1,6
10
P có 1
p có 1
mc có 1
S có 3
hb có 1
r có 1
3. Luật (Meta Knowlegde)
1. If BT > BL Then chọn Lùi
2. If BT > BL Then chọn Tiến
3. If BT = BL # GT > # KL Then chọn Lùi
4. # GT < # KL Then chọn Tiến
0. If user thích Then chọn
C. Chọn luật trong quá trình SD (B i toán đụng độ luật - Rule Conflict)
1. Suy diễn tiến
Tại 1 thời điểm n o đó trong quá trình SD tiến chúng ta có thể dùng nhiều luật cùng
một lúc:
TGian = {sự kiện f đã CM}; TG = {GT}
(Mở) THOẢ = {r: left q/ left TGian} tập luật có thể áp dụng
(Đóng) VET = {r1… rk} tập những luật đã dùng
- Khi # THOA 2 chọn r thoả ?
24
2 cơ chế chọn: + cứng nhắc (LIFO, FIFO) (sâu, rộng)
(max, min)
+ mềm dẻo
Đều l quá trình vét cạn (to n bộ tập luật)
Độ phức tạp 0 (Bh)
_
Để chọn theo mềm dẻo hàm h (r) (heurestic)
Max/ min (extremum)
Đánh giá:
- # VET min (c ng ít c ng tốt)
- Dƣ min
VD: (*)
Gt = {a, b, R}, Kl = {p}
{a, b, R}CS min {a, b, R, A} {a b R A B} r4
{a bR AB} rmin
{a b RABCc}
7,8
VET = {r7…
, r8, r4, r1, r9, r10, r11}
r7 8 r8 1,13 r1 13,9,10,11
A B C c P Dƣ = 2
Nên theo CS Min VET = {r7, r8, r4, r1, r9, r10, r11} (2)
CS Max VET = {r8, r7, r4, r13, r11} (1)
FIFO VET = {r7 r8 r4 r11 r13 r9 r10 r11} (3)
LIFO VET = {r8 r7 r4 r13 r15 r1 r9 r10 r11} (4)
Vậy có cách n o để Dƣ = 0 ?
{a, b, R} r {a, b, R, A} r8 {a, b, R, A, B} r4 {a, b, R, A, B, C}…...
7,8 7 4 1,13
25
Đồ thị FPG (Fact Precedence Graph)
Sử dụng để miêu tả mối tƣơng quan giữa điều n y với điều khác
Vd (*)
hc R
A B
C
a b
ma c mb
mc
P p
ha S
hb
ĥ 1(r8)=kc(B,p)=3
ĥ 1(r1)=kc(c,p)=1
Chọn r1
ĥ 1(r13)=kc(s,p)=
ĥ 1(r9)=kc(P,p)=
Chọn r11
ĥ 1(r10)=kc(mc,p)=
ĥ 1(r11)=kc(p,p)=0
26
Nhận xét:
#VET +Complexity ĥ x m
ii)Đồ thị RPG(Rule Precedence Graph)
RPG=(R,A)
Trong đó R: Tập các đỉnh
A: l tập các cạnh sao cho:
r r’, r:left q q left’
r’:left q’
VD:Xây dựng đồ thị RPG cho ví dụ trên ta có:
r5 r13
r6 r4 r1 r+9
r7 r2 r10
r8 r3 r11 r16
r14
r12 r15
27
ĥ 2 (r8)=kcRPG(r8, r16)=3
ĥ 2 (r1)=kcRPG(r1, r16)=2
Chọn r13
ĥ 2 (r13)=kcRPG(r13, r16)=1
ĥ 2 (r15)=kcRPG(r15, r16)=
ĥ 2 (r10)=kcRPG(r10, r10)=1
ĥ 2 (r11)=kcRPG(r11, r16)=1
ĥ 2 (r14)=kcRPG(r14, r16)=1
ĥ 2 (r16)=kcRPG(r16, r16)=0
2. Suy diễn lùi
Đồ thị FPG
Tình huống đụng độ khi suy diễn lùi:
Goal= Tập những sự kiện cần chứng minh; ban đầu Goal=KL
Xét f Goal. Có nhiều luật suy ra f. Ta chọn luật bằng các thử sai v quay lui. Để
tránh phải quay lui ta cần chọn luật nhƣ thế n o.
Nhắc lại các cách chọn có quay lui:
+ cứng nhắc: - Chỉ số max: chọn luật có chỉ số lớn nhất trong tập luât thoả
- Chỉ số min: chọn luật có chỉ số nhỏ nhất trong tập luât thoả
+ mềm dẻo : ĥ (r) max/min: Đánh giá tốt hay không dựa v o quay lui, c ng
nhiều cáng kém
VD:
GT={a b R}
{S}12,13,14 {a b c p} {a b mb p} …….
* Cách tính ĥ 3(r)
ĥ 3(r)= ĥ 3(left f)=kc(GT,left)
28
Kc(GT, left)=max(b,a)
b GT
VD: GT={a b R}, KL={S}
{S}12,13,14 {a b c p} {a b mb p} …….
ĥ 3(r12)=kc(a b R,a ha)=
29
1. Suy diễn lùi
Xét 1 sự kiện thuộc Goal.
ĥ () = /min XACDINH (f) = {r; left f}
= 0/max Kĩ sƣ tri thức
XACDINH’(f) XACDINH (f)
Kết luận: Nâng cao hiẹu quả quá trình suy diễn
- Chọn hƣớng suy diễn
- Chọn luật Control
- Phân tách cơ sở tri thức (CSTT) mechanisms
tđ(U,XY) tđ(U,YX)
SS(XY,UV) SS(UV,XY) Implici t
SS(XY,UV) SS(VU,YX)
A. Suy diễn tiến
A
GT: tđ (P, AB); tđ (Q, AC)
tđ (I, BQ); tđ (J, CP) Q
P
tđ (E, CQ)
KL { SS (PS, BC)
I J
B C
30
B 1' : TG0 = GT
THOA = {(r1, 1), (r1, 2), (r1, 3), (r1, 4)}
1 = {A/X; B/Y; C/Z; P/U; Q/V}
2 = {C/X; Q/Y; P/Z; E/U; J/V}
3 = ...
4 = ....
Chọn (r1, 1)
TG1 = TG0 {SS (UV, YZ), 1} = TG0 {SS (PQ, BC)}
B '2 : TG1 =
THOA = {(r1, 2), (r1, 3), (r1, 4)
….
Vđề: L m nhƣ thế n o để xác định (ri, i)
B. Suy diễn lùi.
Nói chung suy diễn tiến v suy diễn lùi đều giống nhƣ nhau trong logic mệnh đề vì
đều l quá trình hợp nhất (Unification)
Để rõ hơn ta hãy xét ví dụ sau:
GT tđ(P,AB), tđ(Q,AC), tđ(I,PQ), tđ(J,CP), tđ(E,QC)
KL SS(IJ, BC)
Ta áp dụng thủ tục suy diễn lùi, nhƣng co khó khăn l khi không tiếp tục đƣợc ta lại
phải quay lui.Từ đây ta có thể đƣa ra nhận xét sau:
Sự giống v khác nhau giữa suy diễn lùi của logic vị từ v suy diễn Prolog
- Giống nhau: cả trong prolog cv logic vị từ đều có phép hợp nhất v quá trình
thử sai
- Khác nhau: Tính chất trong prolog l chúng minh suy ra điều vô lý, còn suy
diễn lùi l suy ra goal=0. Cơ chế của prolog l theo chỉ số min v đi từ trái
sang phải. Còn trong logic vị từ thì có thể áp dụng hất mọi cacchs đi thông
thƣờng: Trai, phải v ngƣợc lại hay l trên duới v ngƣợc lại.
31
3.5. Ứng dụng các kỹ thuật suy diễn vào xây dựng hệ chuyên gia
3.5.1. Giao diện
3.5.1.1. Mở đầu
Đầu tiên chúng ta xét đến các loại ngƣời sử dụng hệ chuyên gia. Bao gồm 4 loại sau:
- Ngƣời sủ dụng không chuyên, đầu cuối. Thƣờng
- Ngƣời sử dụng chuyên , thƣờng sử dụng hệ thống ở trình độ không cao. là tƣ vấn
32
4. d b h
5. m g
6. m a h
7. f h k
8. g c k
KL={k} Khi đó ta có:
HỎIgần= U{lefti / r:left qi , qi KL}
= {f c g h}
Nhận xét:
HỎIgần={f/ (f,g) FPG, g KL}
ii) Hỏi xa
HỎIxa= {f/ đƣờng đi p FPG, p= f … g, g KL}
m
TRÁI= lefti
ii
PHẢI={q1……qn}
R={r1…..rm}
ri: left i qi
HỎIxa={f TRAI\ PHẢI/ đƣờng đi p:f ….. g, g KL}
B. Không biết kết luận
HỎI= TRÁI \ PHẢI
Xét vid dụ ở trên:
TRÁI={ a b c m n f g h}
PHẢI={c f g h k}
HỎI=TRÁI \ PHẢI={a b d e m n}
3.5.1.3. Phƣơng thức hỏi gần
A. Hỏi thân thiện
HỎI={đau,…..}
f HỎI Câu hỏi (f) l một văn bản hiện lên m n hình để nhằm gợi ý ngƣời
dùng đƣa thông tin về sự kiện f
33
B. Tránh câu hỏi thừa
Hỏi có tính đến kết quả trả lời của các câu hỏi trƣớc KỊCH BẢN HỎI/ CÂY HỎI
1. Hỏi xa.
2. Hỏi gần
3.5.1.4 Giao diện ngƣời sử dụng
Giao diện l hiển thị cở sở tri thức bằng đồ hoạ
Các loại hiển thị:
+ Tuyến tính: ri: lefti q1
………..
rm: leftm qm
f F Diễn giải (f)
r1: p1 …. pn q
Nếu nhƣ diễn giải p1 v ….. diễn giải pn thì diễn giải q
+ Phi tuyến:
. Đồ thị FPG
. Đồ thị RPG
. Cây lồng nhau
34
3.5.2. Modul giải thích
3.5.2.1. Mở đầu
G
D MTSD
User
CSTT
35
TRẢ LỜI
f? G MTSD
User D
f!
WHY f?
CSTT
36
3.5.2.4. Câu hỏi How f
Ngƣời sử dụng đang đƣợc cung cấp sơ bộ về một lĩnh vực n o đấy . Much đích
ngƣời sử dụng muón biết quá trình suuy diễn để suy ra f.
Hệ thống:
- GIẢ THIẾT: Tập tin ngƣời sử dụng cung cấp trực tiếp hoặc gián tiếp.
Kĩ thuật: Xác địng đƣợc cách suy diễn. Từ đó có đƣợc vết suy diễn.
Vết ={ri1, ri2…..rik}
GT TG1 …….TGkf
Phƣơng thức trả lời.
-“Một lèo”: Đƣa ra to n bộ sự kiện
-“Nhát gừng”: Chỉ đƣa ra một bƣớc của ngƣời sử dụng( thƣờng l bƣớc cuối)
Chú ý: Việc lựa chọn phƣơng thức phụ thuộc v o ngữ cảnh của ngƣời sử dụng.
3.5.2.5.Câu hỏi How not f
Ngƣời sử dụng muốn biết lí do không có kết luận f
Hệ thống: GT KL
Phƣơng thức:
- “Trần thuật”: Dựa tên suy diễn lùi
- “Trực tiếp”: Dựa trên suy diễn tiến
Khắc phục những dị thƣờng: Bằng cách xây dựng tập hợp hỏi, thêm tri thức v o hệ
thống.
Bài tập chương 3:
B i 1: Biểu diễn một cơ sở tri thức bằng logic mệnh đề trong thực tế gồm 6 luật.
B i 2: Biểu diễn một cơ sở tri thức trong thực tế, áp dụng thủ tục suy diễn tiến v o
cơ sở tri thức.
B i 3: Biểu diễn một cơ sở tri thức trong thực tế, áp dụng thủ tục suy diễn lùi v o cơ
sở tri thức.
37
Chương 4: Hệ hỗ trợ ra quyết định
4.1. Khái niệm về hệ hỗ trợ ra quyết định
- Các khái niệm căn bản về quyết định
Thí dụ về hệ hỗ trợ quyết định (HHTQĐ)
• Nghiên cứu v hoạch định tiếp thị: chính sách giá cho khách h ng, dự báo sản
phẩm tiêu thụ ..
• Hoạch định chiến lƣợc v vận h nh: theo dõi, phân tích v báo cáo về xu hƣớng
thị trƣờng ..
• Hỗ trợ bán h ng: chi tiết v tổng hợp tình hình bán h ng, so sánh v phân tích xu
hƣớng bán h ng ..
- Quyết định là gì ?
Đó l một lựa chọn về “đƣờng lối h nh động” (Simon 1960; Costello & Zalkind
1963; Churchman 1968), hay “chiến lƣợc h nh động” (Fishburn 1964) dẫn đến “một
mục tiêu mong muốn” (Churchman 1968)
- Ra quyết định là gì ?
“Một quá trình lựa chọn có ý thức giữa hai hay nhiều phƣơng án để chọn ra một
phƣơng án tạo ra đƣợc một kết quả mong muốn trong các điều kiện r ng buộc đã
biết”. Quyết định có thể l nhận thức ở dạng sự kiện, “Chi $10,000 cho quảng cáo
v o quý 3” . Quyết định có thể l nhận thức ở dạng quá trình, “Trƣớc tiên thực hiện
A, sau đó B hai lần v nếu có đáp ứng tốt hãy thực thi C”. Quyết định có thể l một
hoạt động gi u kiến thức, Quyết định có kết luận n o thì hợp lý/hợp lệ trong ho n
cảnh n o ? Quyết định có thể l những thay đổi trạng thái kiến thức. Quyết định có
chấp nhận một kiến thức mới không ?
Tại sao phải hỗ trợ ra quyết định ?
Nhu cầu hỗ trợ ra quyết định
+ Ra quyết định luôn cần xử lý kiến thức
+ Kiến thức l nguyên liệu v th nh phẩm của ra quyết định, cần đƣợc sở hữu hoặc
tích lũy bởi ngƣời ra quyết định
38
Giới hạn về nhận thức (trí nhớ có hạn ..)
‰ Giới hạn về kinh tế (chi phí nhân lực ..)
Giới hạn về thời gian
Áp lực cạnh tranh
Bản chất của hỗ trợ ra quyết định
cung cấp thông tin, tri thức
có thể thể hiện qua tƣơng tác ngƣời - máy, qua mô phỏng
Các yếu tố ảnh hưởng đến ra quyết định
Công nghệ - thông tin - máy tính
Tính cạnh tranh - sự phức tạp về cấu trúc
Thị trƣờng quốc tế - ổn định chính trị - chủ nghĩa tiêu thụ
Các thay đổi biến động
4.2. Cấu trúc của một hệ hỗ trợ ra quyết định
Các định nghĩa trƣớc đây của HHTQĐ nhấn mạnh v o khả năng hỗ trợ các nh ra
quyết định quản lý trong các tình huống nửa cấu trúc. Nhƣ vậy, HHTQĐ có ý nghĩa
l một bổ trợ cho các nh quản lý nhằm mở rộng năng lực nhƣng không thay thế khả
năng phân xử của họ. Tình huống ở đây l cần đến các phân xử của các nh quản lý
hay các quyết định không ho n to n đƣợc giải quyết thông qua các giải thuật chặt
chẽ.
Thông thƣờng các HHTQĐ sẽ l các hệ thông tin máy tính hóa, có giao tiếp đồ họa
v l m việc ở chế độ tƣơng tác trên các mạng máy tính.
Cơ sở của các định nghĩa về HHTQĐ thay đổi từ nhận thức HHTQĐ l m gì (thí dụ,
hỗ trợ ra quyết định trong các b i toán phi cấu trúc) cho đến cách thức đạt đƣợc các
mục tiêu của HHTQĐ (các th nh phần yêu cầu, khuôn mẫu sử dụng, quá trình phát
triển ..)
39
Cấu trúc cơ bản của một hệ hỗ trợ ra quyết định:
Phân hệ quản lý dữ liệu gồm một cơ sở dữ liệu (database) chứa các dữ liệu cần
thiết của tình huống v đƣợc quản lý bởi một hệ quản trị cơ sở dữ liệu (DBMS - data
base management system). Phân hệ n y có thể đƣợc kết nối với nh kho dữ liệu của
tổ chức (data warehouse) - l kho chứa dữ liệu của tổ chức có liên đới đến vấn đề ra
quyết định.
Phân hệ quản lý mô hình còn đƣợc gọi l hệ quản trị cơ sở mô hình (MBMS -
model base management system) l gói phần mềm gồm các th nh phần về thống kê,
t i chánh, khoa học quản lý hay các phƣơng pháp định lƣợng nhằm trang bị cho hệ
thống năng lực phân tích; cũng có thể có các ngôn ngữ mô hình hóa ở đây. Th nh
phần n y có thể kết nối với các kho chứa mô hình của tổ chức hay ở bên ngoài nào
khác.
Phân hệ quản lý dựa vào kiến thức có thể hỗ trợ các phân hệ khác hay hoạt động
độc lập nhằm đƣa ra tính thông minh của quyết định đƣa ra. Nó cũng có thể đƣợc
kết nối với các kho kiến thức khác của tổ chức.
40
Phân hệ giao diện người dùng giúp ngƣời sử dụng giao tiếp với v ra lệnh cho hệ
thống. Các th nh phần vừa kể trên tạo nên HHTQĐ, có thể kết nối với
intranet/extranet của tổ chức hay kết nối trực tiếp với Internet.
Bài tập chương 4:
Câu 1: Nêu ra 5 hệ hỗ trợ ra quyết định đã đƣợc ứng dụng trong thực tế.
Câu 2: Trình b y chi tiết cấu trúc của một hệ hỗ trợ ra quyết định đã đƣợc ứng dụng.
Câu 3: Thiết kế một hệ hỗ trợ ra quyết định dựa trên lý thuyết đã đƣợc học.
41
Chương 5: Máy học
5.1. Thế nào là máy học?
Thuật ngữ "học" theo nghĩa thông thƣờng l tiếp thu tri thức để biết cách vận dụng.
Ở ngo i đời, quá trì học diễn ra dƣới nhiều hình thức khác nhau nhƣ học thuộc lòng
(học vẹt), học theo kinh nghiệm (học dựa theo trƣờng hợp), học theo kiểu nghe
nhìn,... Trên máy tính cũng có nhiều thuật toán học khác nhau. Tuy nhiên, trong
phạm vi của giáo trình n y, chúng ta chỉ khảo sát phƣơng pháp học dựa theo trƣờng
hợp. Theo phƣơng pháp n y, hệ thống sẽ đƣợc cung cấp một số các trƣờng hợp
"mẫu", dựa trên tập mẫu n y, hệ thống sẽ tiến h nh phân tích v rút ra các quy luật
(biểu diễn bằng luật sinh). Sau đó, hệ thống sẽ dựa trên các luật n y để "đánh giá"
các trƣờng hợp khác (thƣờng không giống nhƣ các trƣờng hợp "mẫu"). Ngay cả chỉ
với kiểu học n y, chúng ta cũng đã có nhiều thuật toán học khác nhau. Một lần nữa,
với mục đích giới thiệu, chúng ta chỉ khảo sát một trƣờng hợp đơn giản.
Có thể khái quát quá trình học theo trƣờng hợp dƣới dạng hình thức nhƣ sau :
Dữ liệu cung cấp cho hệ thống l một ánh xạ f trong đó ứng một trƣờng hợp p trong
tập hợp P với một "lớp" r trong tập R.
f : P |® R
p®r
Tuy nhiên, tập P thƣờng nhỏ (v hữu hạn) so với tập tất cả các trƣờng hợp cần quan
tâm P’ (P Ì P’). Mục tiêu của chúng ta l xây dựng ánh xạ f ’ sao cho có thể ứng mọi
trƣờng hợp p’ trong tập P’ với một "lớp" r trong tập R. Hơn nữa, f ’ phải bảo to n f,
nghĩa l :
Với mọi p Î P thì f(p) º f ’(p)
Phƣơng pháp học theo trƣờng hợp l một phƣơng pháp phổ biến trong cả nghiên cứu
khoa học v mê tín dị đoan. Cả hai đều dựa trên các dữ liệu quan sát, thống kê để từ
đó rút ra các quy luật. Tuy nhiên, khác với khoa học, mê tín dị đoan thƣờng dựa trên
tập mẫu không đặc trƣng, cục bộ, thiếu cơ sở khoa học.
42
5.2. Học bằng cách xây dựng cây định danh
Phát biểu hình thức có thể khó hình dung. Để cụ thể hợn, ta hãy cùng nhau quan sát
một ví dụ cụ. Nhiệm vụ của chúng ta trong ví dụ n y l xây dựng các quy luật để có
thể kết luận một ngƣời nhƣ thế n o khi đi tắm biển thì bị cháy nắng. Ta gọi tính chất
cháy nắng hay không cháy nắng l thuộc tính quan tâm (thuộc tính mục tiêu). Nhƣ
vậy, trong trƣờng hợp n y, tập R của chúng ta chỉ gồm có hai phần tử {"cháy nắng",
"bình thƣờng"}. Còn tập P l tất cả những ngƣời đƣợc liệt kê trong bảng dƣới (8
ngƣời) Chúng ta quan sát hiện tƣợng cháy nắng dựa trên 4 thuộc tính sau : chiều cao
(cao, trung bình, thấp), m u tóc (v ng, nâu, đỏ) cân nặng (nhẹ, TB, nặng), dùng kem
(có, không),. Ta gọi các thuộc tính n y gọi l thuộc tính dẫn xuất.
Dĩ nhiên l trong thực tế để có thể đƣa ra đƣợc một kết luận nhƣ vậy, chúng ta cần
nhiều dữ liệu hơn v đồng thời cũng cần nhiều thuộc tính dẫn xuất trên. Ví dụ đơn
giản n y chỉ nhằm để minh họa ý tƣởng của thuật toán máy học m chúng ta sắp
trình bày.
43
Ý tƣởng đầu tiên của phƣơng pháp n y l tìm cách phân hoạch tập P ban đầu th nh
các tập Pi sao cho tất cả các phần tử trong tất cả các tập Pi đều có chung thuộc tính
mục tiêu.
P = P1 È P2 È ... È Pn và " (i,j) i¹ j : thì (Pi Ç Pj = Æ ) và
" i, " k,l : pk Î Pi và pl Î Pj thì f(pk) = f(pl)
Sau khi đã phân hoạch xong tập P th nh tập các phân hoạch Pi đƣợc đặc trƣng bởi
thuộc tính đích ri (ri Î R), bƣớc tiếp theo l ứng với mỗi phân hoạch Pi ta xây dựng
luật Li : GTi ® ri trong đó các GTi l mệnh đề đƣợc hình th nh bằng cách kết hợp
các thuộc tính dẫn xuất.
Một lần nữa, vấn đề hình thức có thể l m bạn cảm thấy khó khăn. Chúng ta hãy thử
ý tƣởng trên với bảng số liệu m ta đã có.
Có hai cách phân hoạch hiển nhiên nhất m ai cũng có thể nghĩ ra. Cách đầu tiên l
cho mỗi ngƣời v o một phân hoạch riêng (P1 = {Sarah}, P2 = {Dana}, … tổng cộng
sẽ có 8 phân hoạch cho 8 ngƣời). Cách thứ hai l phân hoạch th nh hai tập, một tập
gồm tất cả những ngƣời cháy nắng v tập còn lại bao gồm tất cả những ngƣời không
cháy nắng. Tuy đơn giản nhƣng phân hoạch theo kiểu n y thì chúng ta chẳng giải
quyết đƣợc gì !!
5.2.1. Đâm chồi
Chúng ta hãy thử một phƣơng pháp khác. Bây giờ bạn hãy quan sát thuộc tính đầu
tiên – m u tóc. Nếu dựa theo m u tóc để phân chia ta sẽ có đƣợc 3 phân hoạch khác
nhau ứng với mỗi giá trị của thuộc tính m u tóc. Cụ thể l :
Pvàng = { Sarah, Dana, Annie, Kartie }
Pnâu = { Alex, Peter, John }
Pđỏ = { Emmile }
Ta thấy rằng phân hoạch Pnâu v Pđỏ thỏa mãn đƣợc điều kiện "có chung thuộc tính
mục tiêu" (Pnâu chứa to n ngƣời không cháy nắng, Pđỏ chứa to n ngƣời cháy
nắng).
44
Còn lại tập Pv ng l còn lẫn lộn ngƣời cháy năng v không cháy nắng. Ta sẽ tiếp tục
phân hoạch tập n y th nh các tập con. Bây giờ ta hãy quan sát thuộc tính chiều cao.
Thuộc tính n y giúp phân hoạch tập Pv ng th nh 3 tập con : PV ng, Thấp = {Annie,
Kartie}, PVàng, T.Bình= {Sarah} và PVàng,Cao= { Dana }
Nếu nối tiếp v o cây ở hình trƣớc ta sẽ có hình ảnh cây phân hoạch nhƣ sau :
Quá trình n y cứ thế tiếp tục cho đến khi tất cả các nút lá của cây không còn lẫn lộn
giữa cháy nắng v không cháy nắng nữa. Bạn cũng thấy rằng, qua mỗi bƣớc phân
hoạch cây phân hoạch ng y c ng "phình" ra. Chính vì vậy m quá trình n y đƣợc
gọi l quá trình "đâm chồi". Cây m chúng ta đang xây dựng đƣợc gọi l cây định
danh.
Đến đây, chúng ta lại gặp một vấn đề mới. Nếu nhƣ ban đầu ta không chọn thuộc
tính m u tóc để phân hoạch m chọn thuộc tính khác nhƣ chiều cao chẳng hạn để
phân hoạch thì sao? Cuối cùng thì cách phân hoạch n o sẽ tốt hơn?
5.2.2. Phƣơng án chọn thuộc tính phân hoạch
Vấn đề m chúng ta gặp phải cũng tƣơng tự nhƣ b i toán tìm kiếm : "Đứng trƣớc
một ngã rẽ, ta cần phải đi v o hƣớng n o?". Hai phƣơng pháp đánh giá dƣới đây sẽ
giúp ta chọn đƣợc thuộc tính phân hoạch tại mỗi bƣớc xây dựng cây định danh.
5.2.2.1. Quinlan
Quinlan quyết định thuộc tính phân hoạch bằng cách xây dựng các vector đặc trƣng
cho mỗi giá trị của từng thuộc tính dẫn xuất v thuộc tính mục tiêu. Cách tính cụ thể
nhƣ sau :
Với mỗi thuộc tính dẫn xuất A còn có thể sử dụng để phân hoạch, tính :
VA(j) = ( T(j , r1), T(j , r2) , …, T(j , rn) )
T(j, ri) = (tổng số phần tử trong phân hoạch có giá trị thuộc tính dẫn xuất A l j v
có giá trị thuộc tính mục tiêu l ri ) / ( tổng số phần tử trong phân hoạch có giá trị
thuộc tính dẫn xuất A l j )
* trong đó r1, r2, … , rn l các giá trị của thuộc tính mục tiêu
45
Nhƣ vậy nếu một thuộc tính A có thể nhận một trong 5 giá trị khác nhau thì nó sẽ có
5 vector đặc trƣng.
Một vector V(Aj ) đƣợc gọi l vector đơn vị nếu nó chỉ có duy nhất một th nh phần
có giá trị 1 v những th nh phần khác có giá trị 0.
Thuộc tính đƣợc chọn để phân hoạch l thuộc tính có nhiều vector đơn vị nhất.
Trở lại ví dụ của chúng ta, ở trạng thái ban đầu (chƣa phân hoạch) chúng ta sẽ tính
vector đặc trƣng cho từng thuộc tính dẫn xuất để tìm ra thuộc tính dùng để phân
hoạch. Đầu tiên l thuộc tính m u tóc. Thuộc tính m u tóc có 3 giá trị khác nhau
(v ng, đỏ, nâu) nên sẽ có 3 vector đặc trƣng tƣơng ứng l :
VTóc (v ng) = ( T(v ng, cháy nắng), T(v ng, không cháy nắng) )
Số ngƣời tóc v ng l : 4
Số ngƣời tóc v ng v cháy nắng l : 2
Số ngƣời tóc v ng v không cháy nắng l : 2
Do đó
VTóc(vàng) = (2/4 , 2/4) = (0.5, 0.5)
Tƣơng tự
VTóc(nâu) = (0/3, 3/3) = (0,1) (vector đơn vị)
Số ngƣời tóc nâu l : 3
Số ngƣời tóc nâu v cháy nắng l : 0
Số ngƣời tóc nâu v không cháy nắng l : 3
VTóc(đỏ) = (1/1, 0/1) = (1,0) (vector đơn vị)
Tổng số vector đơn vị của thuộc tính tóc v ng l 2
Các thuộc tính khác đƣợc tính tƣơng tự, kết quả nhƣ sau :
VC.Cao(Cao) = (0/2,2/2) = (0,1)
VC.Cao(T.B) = (2/3,1/3)
VC.Cao(Thấp) = (1/3,2/3)
VC.Nặng (Nhẹ) = (1/2,1/2)
VC.Nặng (T.B) = (1/3,2/3)
VC.Nặng (Nặng) = (1/3,2/3)
46
VKem (Có) = (3/3,0/3) = (1,0)
VKem (Không) = (3/5,2/5)
Nhƣ vậy thuộc tính m u tóc có số vector đơn vị nhiều nhất nên sẽ đƣợc chọn để
phân hoạch.
Sau khi phân hoạch theo m u tóc xong, chỉ có phân hoạch theo tóc v ng (Pv ng) l
còn chứa những ngƣời cháy nắng v không cháy nắng nên ta sẽ tiếp tục phân hoạch
tập n y. Ta sẽ thực hiện thao tác tính vector đặc trƣng tƣơng tự đối với các thuộc
tính còn lại (chiều cao, cân nặng, dùng kem). Trong phân hoạch Pv ng, tập dữ liệu
của chúng ta còn lại là :
47
VKem (Không) = (2/2,0/2) = (1,0)
2 thuộc tính dùmg kem v chiều cao đều có 2 vector đơn vị. Tuy nhiên, số phân
hoạch của thuộc tính dùng kem l ít hơn nên ta chọn phân hoạch theo thuộc tính
dùng kem.
Bài tập chương 5:
B i 1: Nêu ra các 5 ví dụ ứng dụng máy học trong thực tế.
B i 2: Thu thập dữ liệu cho một hệ dự báo tăng giảm một chỉ số chứng khoán. Xây
dựng cây định danh v đƣa ra tập luật cho hệ trên.
B i 3: Thu thập dữ liệu cho một hệ dự báo đối với sinh viên dự thi tuyển sinh đại
học. Xây dựng cây định danh v đƣa ra tập luật cho hệ trên.
48
Chương 6: Logic mờ và lập luận xấp xỉ
6.1. Biểu diễn tri thức bằng LOGIC VỊ TỪ.
CSTT(knowlegde) = Cơ sở sự kiện, Cơ sở luật
Thông tin về tình Tri thức về lĩnh
huống vực chuyên môn
(Do ngƣời sử dụng) (Do chuyên gia)
Các sự kiện(Fact) đƣợc mô tả bởi Vị từ(Predicate). Mỗi vị từ l một phát biểu, quan
sát về đối tƣợng m ta đang xét.
F={p(t1,t2….tn)/p vị từ}
p: Tên vị từ
ti: hạng thức( tẻm) có thể l một biến, mộthằng, hoặc l một h m(rất quan trọng)
VD: Ai cũng có ke yêu ngƣời ghét.
…..
Luật( Rule)
Mọi tri thức chuyên môn đều đƣợc biểu diễn bằng mệnh đề.: Nếu…..thì….
p1(t1….tk)……..pn(u1…..un) suy ra q(v1….vm)
trong đó: pi, q: Tên vị từ
ti, u, v: các hạng thức
Câu(clause)
……l một câu v tƣơng ứng với một luật có dạng nhƣ ở trên
6.2. Một số ví dụ
Bài toán chở đồ vật qua sông.
Coa một con sói, một con dê v mọt chiếc bắp cải muốn qua sông. Nhƣng chỉ só một
bác lái đò. L m thế n o dể bác lái đò có thể chở đƣợc các vật trên qua sông an to n.
49
Biết rằng Sói ăn thịt dê nếu chỉ có hai con một mình, dê ăn bắp cải nếu nhƣ không
có sói ở đó.
Sói Dê Bắp cải Bờ bắc
Lái đò
……… Bờ nam
Biểu diễn:
-Vị trí :vt(LĐ,S,D,B)
-An toàn: at(LĐ,S,D,B)
-Vị trí xuất phát, đến : ql(Đ1, Đ2)
Ta có mô tả nhƣ sau:
1. vt(b,b,b,b)
2. dd(b,n)
3. dd(n,b)
4. vt(LD,S,D,B) dd at(LD,LD’) at(LD’,S,D,B) vt(LD’,S,D,B)
5. vt(X,X,D,B) dd(X,X’) at(X,X’,D,B) vt(X’,X,D,B)
6. vt(X,S,X,B) dd(X,X’) at(X,X’,B,S) vt(X’,X’,B,S)
7. vt(X,S,X,D) dd(X,X’) at(X,X’,D,S) vt(X’,X’,D,S)
8. at(X S X B)
9. dd(X X’) at(X X X’ X)
Tóm lại ta thấy đây chỉ l luật v sự kiện chứ không phải tri thức chuyên gia
6.3. Cơ chế suy diễn
SUY DIỄN: +Suy diễn tiến( Modus Ponens, Modus Tollens)
+Suy diễn lùi( Modus Ponens, Modus Tollens)
50
pq pq q : p
p p p:
q q q:-
Ví dụ:
1. membership( x1, [x1:-] )
l danh sách có hai phần tử với: +) x l phần tử đầu
+)- l mô tả các phần còn lại
2. membership( x2, [-:y] )
:- membership (x2, y)
Goal: membership(1, [ 1,2,3]): :- membership (1, [1,2,3])
Chú ý: Trong Prolog áp dụng suy diễn lùi với: luật theo chỉ số min v sự kiện từ trái
qua phải
Từ giả thiết v áp dụng phƣơng pháp suy diễn lùi ta có quá trình suy diễn nhƣ sau:
3. :-mb(x, [1,2,3])
4. :- {x/x1, 1/x1} (3,1) nên x=1
5. :-mb(x,[2,3] {x/x2 ; 2,3/x1} (3,2)
6. :- {x/x3; 2/x} (5,1)nên x=2
7. :-mb(x,[3]) {x/x4; 3/x4} (5,2)
8. :- {3/x} (7,1) nên x=3
9. :--mb(x,[]) (7,2)
10. fail (9,1)
11. fail (9,2)
51
6.4. Biểu diễn tri thức bằng logic mờ và suy diễn
6.4.1. Tập mờ( Fuzzy set)
Trở lại với các kiểu định nghĩa về tập hợp (set) . Chúng ta đã biết l có hai kiểu định
nghĩa tập hợp:
1- Phƣơng pháp lệt kê tất cả các phần tử thuộc tập hợp đó. Ví dụ tập số nguyên
nhỏ hơn 10 l tập: N=1,2,3,4,5,6,7,8,9
2- Phƣơng pháp mô tả thông qua vị từ đặc trƣng( characteurstic predicate)
PA(x) = 1 nếu x A
0 nếu x A
PA: U {0,1}
X U PA(x)
Mở rộng: A~ 0,1
:x 0 A~ ( x) 1
~ ~
Vậy khi có tập mờ A : thì A~ ( x) gọi l độ thuộc của x v o A
~
Tuổi = A
52
A~ ( x) +) 0 với x (0,25)
+) 1 với x (26,32)
+) 0,7 với x (33,38)
+) 0,2 với x (39,45)
+) 0 với x> 45
6.4.2. Các phép toán trên tập mờ:
Cho tập nền ( tập vũ trụ ) U ( Universer Set)
~
Một tập mờ A trên U đƣợc một mô tả bởi h m thuộc ( mebership function)
A : U 0,1
A
a b c
53
+) x nếu a x b
+) x nếu b x c
+) 0 nếu x>c
~
A (a, b, c)
Số mờ
Dạng 2
a b c d
~
A = (a, b, c, d)
~ ~
Tập mờ A không phải l tập theo nghĩa thông thƣờng nên quan niệm A phải định
nghĩa theo h m thuộc. Do đó không biểu diễn bằng biểu đồ Ven m biểu biểu diễn
bằng đồ thị
Hợp của các tập mờ
Cho hai tập mờ A, B với A và B l hai h m thuộc tƣơng ứng
~ ~ ~
Từ đó ta xây dựng 1). A B C
54
Chú thích: lấy tất cả phần trên của đồ thị
Khi đó hợp của hai tập mờ l một tập rõ
~ ~ ~
2). AB C
55
~ ~ ~ ~
( A B ) A A
5. Tính phân phối :
~ ~ ~ ~ ~ ~ ~
A ( B C ) ( A B )( A C )
~ ~ ~ ~ ~ ~ ~
A ( B C ) ( A B )( A C )
6. Tính chất khác :
~ ~ ~
A
~
A u~ u~
~
7. u~
~
u~
~ ~
8. AA
~ ~
AA ~ u
~ ~ ~ ~
9. A B A B
~
Ví dụ : A {(a, 0.1), (b, 0.2), (c, 0.3), (d, 0.4)}
~
A {(a, 0.9), (b, 0.8), (c, 0.7), (d, 0.6)}
~ ~
A A { (a, 0.1, (b, 0.2), (c, 0.3), (d, 0.4), (a, 0.9), (b, 0.8), (c, 0.7), (d, 0.6)}
Nhận xét : - L. Zadel (max, min, 1-)
- A B ( x ) t( A ( x ), B ( x ))
Hàm t là t – norm :
s : [0, 1] x [0, 1] → [0, 1]
- Hàm t – conorm thỏa mãn các tính chất :
+ s(x, y) = s(y, x)
+ s(s(x, y), z) = s(x, s(y, z))
s( x , 1 ) 1
+
s( x ,0 ) x
- Hàm t – norm thỏa mãn các tính chất :
+ t(x, y) = t(y, x)
+ t(s(x, y), z) = t(x, s(y, z))
t( x , 1 ) x
+
t( x , 0 ) 0
Ví dụ : s(x, y) = x + y - xy
56
t(x, y) = xy
→ Kiểm tra :
1. Giao hoán : hiển nhiên
2. Kết hợp :
Hàm s :
s (x, s(y, z)) ... x y z xy yz zx xyz
s ( x , s ( x , y )) s ( s ( x , y ), z )
s (s (x, y), z) ... x y z xy yz zx xyz
Hàm t :
→ hiển nhiên
3. Tính chất cuối :
s( x , 1 ) ... 1 t( x , 1 ) ... x
+ ;
s( x ,0 ) ... x t( x ,0 ) ... 0
- Bộ ba : (s, t, n) ; A ( x ) n( A ( x ) n : [ 0,1] [ 0,1]
Hàm negation :
n( 0 ) 1
1.
n( 1 ) 0
2. n(n(x)) = x
3. Đơn điệu : x y → n(x) n(y)
Ví dụ : hàm 1 – x
57
. Tập mờ → ma trận
X = ( μ1*, μ2* , ... , μn* )
Y = ( μ1B, μ2B, , ..., μnB )
μiA = μA (xi)
μjB = μB (yj)
If X = x1 then Y = y1 μ11
... ...
If X = x2 then Y = ym μ1m
... ...
If X = xn then Y = y1 μn1
... ...
If X = xn then Y = ym μnm
→ ma trận n x m.
→ từ một luật X = A → Y = B, ta có n x m luật, mỗi luật có độ chắc chắn n o
đó ( có khoảng 37 cách khác nhau)
Ví dụ :
→ Ma trận : y1 y2 ... ym
x1 μ11 μ12 ... μ1m
x2 μ21 μ22 ... μ2m
... ... ... ... ...
xn μn1 μn2 ... μnm
RC/A RC/B
Tập A trên U A : U [ 0, 1]
A ( u ) [ 0, 1]
Tập B trên V B : V [ 0, 1]
B ( v ) [ 0, 1 ]
B / A = ₣(μA, μB)
có hai dạng : ₣(x, y) = xy
₣(x, y) = min(x, y)
A → B ≡ AB
₣(x, y) = s(m(x), y)
Chú ý : max s ( x, y )
min t ( x, y )
– 1–x n (x)
(kéo theo) max( 1 A , B )
D = ₣ ( r , r , ... , r ; e , e , ... , e )
i 1 2 m 1 2 l
R GT
- Procedure SD ( R : set of rules ;
GT, KL : set of facts ;
var KQ : Boolen ;
vet : set of rules
)
- GT KL
~ ~ ~ ~
X 1 A1 X 2 A2 ... X n An Y B
~ ~ ~
X 1 A1 X 2 A2 ... X n An
Y B B F ( r , A , ... , A )
1 n
- Xét :
~ ~
If X A then Y B
~
X A
~
Y B
B A RB / A
RB / A A
B
11 12 ... 1m
21 22 ... 2 m
( 1 , 2 , ... , n ) ... ... ... ...
... nm
n1 n 2
~
A l tập mờ trên U = { x1, x2, ... , xn}
~
B l tập mờ trên V = { y1, y2, ... , yn}
i A ( xi )
n
j B ( y j ) .
k 1
k kj
trong mờ
max (min ( k , kj ))
~ ~
If X Ai then Y Bi
60
~
X A
~
Y B
B max ( A RBi / Ai )
Vét cạn
*) B i toán : Cho một số luật → có thể tạo ra hình thức để duyệt luật không vét cạn
hay không ?
+ Heuristic (TTNT)
+ GT di truyền.
~ ~ ~ ~
If X 1 A1 X 2 A2 ... X n An then Y B
~ ~ ~
X 1 A1 X 2 A2 ... X n An
~
Y B
B ( A1 , A2 , ... , An ) RB~ / A1 , ... , An
~ ~
If X i Ai then Y B
~
X Ai
n
~ ~ ~
Y B ; Y B B i
i 1
~ ~ ~
If X 1 A1 X 2 A2 then Y B
~
X A
n
~ ~ ~
Y B ; Y B B i
i 1
*) Suy diễn mờ = áp dụng liên tiếp nhiều lần Modus Ponen (Fred Forward)
Ví dụ :
1. If X = A1 then Y = B1
2. If X = A2 then Y = B2
3. If X = B3 then Z = C3
4. If X = B4 then Z = C4
61
5. If X = A5 then Z = C5
6. If X = A6 then Y = B1
7. If X = A1 Y = B6 then Z = C7 (bỏ qua luật n y chƣa xét)
MB / A a B MB a b MC a b
1 1 2 / A2 4 / B4
MC MC / A a b
3 / B3 5 5
Đồ thị :
X Y Z (DAG)
`
*)
- MP (r1 , A 0 ) Y (0.6, 0.5) B10
- MP (r3 , B10 ) Z (0.6, 0.5)
(0.6, 0.6)
- MP (r4 , B10 ) Z (0.6, 0.6)
- MP (r2 , A 0 ) Y (0.6, 0.6) B02
- MP (r3 , B 02 ) Z (0.6, 0.6)
(0.6, 0.6)
- MP (r4 , B 02 ) Z (0.6, 0.6)
62
- MP (r5 , A 0 ) (0.2, 0.2) Z (0.6, 0.6)
Chứng minh :
...
Tổng kết :
1. Biẻu diễn tập mờ → chỉ số mờ & thao tác
2. Nghiên cứu về : t – norm :
t – conorm :
n(.) : not
₣ (x, y) :
3. Mâu thuẫn : tƣờng minh
không tƣờng minh
( chƣa có trong TLTK tự tìm hiểu )
4. Dƣ thừa (trong tập luật)
5. Duyệt / Áp dụng không vét cạn.
6. Lựa chọn thể hiện phép toán phù hợp.
7. Suy diễn thao tác trực tiếp (Linguistic Reasoning)
Bài tập chương 6:
B i 1: Trình b y ba tập mờ trong thực tế.
B i 2: Trình b y hai tập mờ trong thực tế, chỉ ra quan hệ mờ giữa chúng.
B i 3: Biểu diễn một hệ mờ gồm 5 luật.
63
Đề cương ôn tập
1. Nắm vững cấu trúc v chi tiết các th nh phần của hệ chuyên gia.
4. Nắm vững khái niệm v cấu trúc của hệ hỗ trợ ra quyết định.
5. Nắm vững khái niệm về máy học. Phƣơng pháp xây dựng cây định danh
64
Đề thi tham khảo:
Đề 1:
Câu 1 (3 đ):
Hệ chuyên gia là gì?
Hãy cho biết những đặc trƣng cơ bản của một hệ chuyên gia.
Câu 2 (4 đ): Cho tập các luật sau R = {r1, ..., r6}
Câu 3 (3 đ)
Cho luật IF A THEN B với A = (0, 0.5, 0.6, 0.8, 0) và B = (0, 0.5, 1, 0.5, 0.4),
A' = (0, 0.5, 0, 0, 0). Tìm B' bằng cách sử dụng suy diễn tích cực đại.
Đề 2:
Câu 1 (3 đ):
Trong cấu trúc của một hệ chuyên gia.
Vì sao việc phân tách cơ sở tri thức v cơ chế lập luận (mô tơ suy diễn) l
quan trọng?
Câu 2 (4 đ): Cho tập các luật sau R = {r1, ..., r6}
65
Câu 3 (3 đ)
Cho luật IF A THEN B với A = (0, 0.5, 0.6, 0.8, 1) v B = (0, 0.5, 1, 0.5, 0),
A' = (0, 0.5, 0, 0, 0). Tìm B' bằng cách sử dụng suy diễn max - min.
Đề 3:
Câu 1 (3 đ)
Câu 2 (4 đ)
Cho miền của các đối tƣợng có các thuộc tính v có các giá tri nhƣ sau:
Tóc = {nhiều,ít}
M u tóc ={trắng,đen,v ng}
Dáng ngƣời ={cao, thấp,trung bình}
1. Sử dụng vị từ logic để biểu diễn các đối tƣợng n y.
2. Sử dụng các phép toán tổng quát để định nghĩa không gian học của các đối
tƣợng
3. Xây dựng các tập mẫu huấn luyện dƣơng P v âm N để học nhận dạng đối
tƣợng l ngƣời có dáng ngƣời cao sử dụng cả 3 giải thuật đã thảo luận trên.
Câu 3 (3 đ)
Xem xét các câu sau đây:
Hùng thích tất cả các loại thực phẩm
Táo l thực phẩm
G l thực phẩm
Bất cứ thứ gì mọi ngƣời ăn v không bị hại đó l thực phẩm
Phong ăn đậu phọng v vẫn còn sống
Lan ăn bất cứ thứ gì Phong ăn
1. Hãy biểu diễn các sự kiện trên bằng logic vị từ
2. Chuyển đổi các tiên đề ở câu 1 sang mệnh đề
3. Chứng minh Hùng thích ăn đậu phọng sử dụng phƣơng pháp hợp giải
4. Sử dụng phƣơng pháp hợp giải để trả lời câu hỏi:”Lan ăn thực phẩm n o?”.
66
Đề 4:
Câu 1 (3đ)
Câu 2 (4đ)
Sử dụng thuật toán Quinlan để rút ra quy luật cho những ngƣời có đặc điểm
n o có khả đỗ đại học hoặc không theo cơ sở dữ liệu ở bảng sau:
Câu 3 (3đ)
Cho Ω = {1, 2, 3, 4, 5}.
A, B l các tập mờ trong Ω nhƣ sau:
A = {(1,0), (2,1), (3,0.5), (4,0.3), (5,0.2)}
B = {(1,0), (2,0.5), (3,0.7), (4,0.2), (5,0.4)}
Hãy tính: A∩B, B∩Ac, A∪B
67