Bài toán được đặt ra là từ một mẫu cơ sở dữ liệu có sẳn, máy tính có thể phát hiện ra tính quy luật trong mẫu dữ liệu đó bằng phương pháp xây dựng câyđịnh danh và nhờ đó giúp con người đ
Trang 1Phần 1: Đặt vấn đề 1
Phần 2: Lý thuyết cơ sở của phương pháp suy diễn 2
I Mô hình tổng quát của suy diễn
II Suy diễn tiến
III Suy diễn lùi
Phần 3: Lý thuyết cơ sở của phương pháp học bằng cây định danh 6
I Định nghĩa về cây định danh 6
II Phân tích bài toán 6
III Thuật toán Quinlan 6
1 Thuật toán 6
2 Minh hoạ thuật toán 6
3 Nhận xét (độ đo hỗn loạn) 9
4 Phát sinh tập luật 10
5 Tối ưu hóa tập luật 10
6 Kết luận 12
Phần 4: Cài đặt ứng dụng minh họa 15
Phần 5: Kết luận 25
Tài liệu tham khảo 25
Trang 2Phần 1
ĐẶT VẤN ĐỀ
Trong đời sống xã hội phát triển ngày nay, nhu cầu học hỏi và tìm hiều ngàycàng cao, đặc biệt trong lĩnh vực công nghệ thông tin trong những năm gần đâyphát triển như vũ bảo nhu cầu công nghệ và tri thức luôn luôn đòi hỏi vì vậycon người nghiên cứu thêm nhiều lĩnh vực mới và đạt được nhiều thành quả caonhằm phục vụ nhu cầu xã hội
Từ khi trí tuệ nhân tạo ra đời cho đến nay, người ta không ngừng thực hiện cáccông trình nghiên cứu để đưa tư tưởng nghiên cứu cùng với máy tính để ứngdụng vào việc giải quyết các công việc trong thực tiễn đời sống
Một trong những nguyên nhân làm cho trí tuệ nhân tạo trở thành một trongnhững lĩnh vực mũi nhọn trong thời đại hiện nay là việc làm cho máy tính trởnên thông minh hơn, nói cụ thể hơn là người ta tìm cách tạo ra các chươngtrình thông minh hơn có khả năng giải quyết các vấn đề thực tế như cách giảiquyết của con người
Một trong những lĩnh vực lý thú của trí tuệ nhân tạo được đề cập trong chuyên
đề này là Máy học Tức là làm sao cho các chương trình có thể học từ các sai
lầm của chúng, từ những quan sát ngẫu nhiên hay từ các yêu cầu đặt ra của conngười Nói cách khác là làm cho các chương trình có khả năng rút kinh nghiệm
từ những quan sát thực tế
Trí tuệ và việc học có liên quan mật thiết với nhau chặt chẽ Thật vậy trí tuệ sẽkhông tồn tại được nếu không tồn tại khả năng học hỏi Và thông qua việc họcchương trình máy tính ngày càng biến hóa và phát triển thích ứng với môitrường và yêu cầu phức tạp của xã hội hiện nay
Chuyên đề sau đây sẽ là một khảo sát nhỏ về một phương pháp học trong trí tuệ
nhân tạo, đó là việc học bằng phương pháp suy diễn và xây dựng cây định
danh Bài toán được đặt ra là từ một mẫu cơ sở dữ liệu có sẳn, máy tính có thể
phát hiện ra tính quy luật trong mẫu dữ liệu đó bằng phương pháp xây dựng câyđịnh danh và nhờ đó giúp con người đưa ra các quyết định nhanh chóng vàchuẩn xác
Trang 3Phần 2
LÝ THUYẾT CƠ SỞ CỦA PHƯƠNG PHÁP SUY DIỄN
I MÔ HÌNH TỔNG QUÁT CỦA SUY DIỄN
FACT: Tập sự kiện
HYPO: Tập giả thuyết
Operator MATCH(X,Y) =
a Dẫn ra sự kiện mới
(1) IF MATCH(LHS, FACT) = T THEN ADD RHS TO FACT
(2) IF NOT MATCH(RHS, FACT)=F THEN ADD NOT(LHS) TO FACT
b Tạo ra giả thuyết mới
(3) IF MATCH(LHS, FACT) = F THEN ADD NOT(RHS) TO HYPO
(4) IF MATCH(LHS, HYPO) =T THEN ADD RHS TO HYPO
(5) IF MATCH(LHS, HYPO) =F THEN ADD NOT(RHS) TO HYPO
(6) IF MATCH(RHS, FACT) =T THEN ADD LHS TO HYPO
(7) IF MATCH(RHS, HYPO) =T THEN ADD LHS TO HYPO
(8) IF MATCH(LHS, HYPO)=F THEN ADD NOT(LHS) TO HYPO
c Khẳng định hay phủ định giả thuyết
(9) IF MATCH(hypo.FACT) = T THEN ADD hypo TO HYPO
(10) IF MATCH(hypo.FACT)=F THEN DELETE hypo TO HYPO
d Tiếp nhận FACT mới từ bên ngồi
II. SUY DIỄN TIẾN
Suy diễn tiến: là quá trình suy luận xuất phát từ một sự kiện ban đầu, xác định các sự kiện có thể được “sinh” ra từ các sự kiện này
Ví du: Cho cơ sở tri thức được xác định như sau:
T if X được lượng giá T trong Y
F if X được lượng giá F trong Y
? if X không thể lượng giá trong Y
Trang 4Ví dụ (tiếp theo) ( suy diễn tiến)
Sự kiện ban đầu: H, K
III. SUY DIỄN LÙI
Suy diễn lùi: là quá trình suy luận ngược xuất phát từ một số sự kiện banđầu, ta tìm kiếm các sự kiện đã “sinh” ra sự kiện này Một ví dụ thường gặp trong thực tế là xuất phát từ các trình trạng của máy tính, chuẩn đoán xem máy tính đã bị hỏng hóc ở đâu
Điện vào máy « có » hay « không »
Ví dụ (tt) ( Chuẩn đoán hỏng máy tính)
Một số luật suy diễn :
R1 : Nếu ( điện vào máy là « có ») và ( âm thanh đọc ổ cứng là
Trang 5Để xác định được các nguyên nhân gây ra sự kiện « không sử dụng được máy tính », ta phải xây dựng một cấu trúc đồ thị AND/OR như sau :
Trang 6Ví dụ 1: Dữ liệu của một bảng quan sát gồm 4 thuộc tính của con người như
sau:
Tóc có giá trị vàng, nâu, đỏ
Chiều cao có giá trị cao, trung bình, thấp
Cân nặng có giá trị nặng, nhẹ, trung bình
Dùng kem chống nắng có giá trị có dùng kem, không dùng kem
thì khi đi tắm biển người đó có bị cháy nắng hay không?
Dữ liệu quan sát được cho trong bảng sau:
Tên Màu tóc Chiều cao Cân nặng Dùng kem? Kết quả
1 (Màu tóc Vàng) và (có dùng kem) à không cháy nắng
2 (Màu tóc nâu) và (không dùng kem) à cháy nắng
3 (Màu tóc nâu) à không cháy nắng
4 (Màu tóc đỏ) à cháy nắng
Trang 7Phần 3
LÝ THUYẾT CƠ SỞ CỦA PHƯƠNG PHÁP HỌC BẰNG
XÂY DỰNG CÂY ĐỊNH DANH
I ĐỊNH NGHĨA VỀ CÂY ĐỊNH DANH:
Cây định danh là cây mà nếu ta đi từ nút gốc đến các lá ta sẽ có một quyết địnhhay một quy luật dựa vào các thuộc tính trên đường đi từ gốc đến lá, như vậymỗi đường đi từ nút gốc đến nút lá sẽ cho ra một quyết định hay một quy luật
Vì vậy người ta còn gọi cây định danh là cây quyết định
Ví dụ: Với ví dụ 1 ở trên thì cây định danh được xác định như sau:
Các kết luận hay quyết định cho cây định danh này được đưa ra như hình số 1
II PHÂN TÍCH BÀI TOÁN:
Bài toán học bằng phương pháp xây dựng cây định danh được phân tích và khai
thác qua các bước sau đây, dựa vào bảng dữ liệu ở bảng số 1 ở phần đặt vấn đề.
Người ta dựa vào ý tưởng tiếp cận hình học là phân chia không gian bài toántạo thành một cây định danh sau đó xây dựng các phương pháp học dựa trêncây định danh đó Cây định danh được xây dựng bằng cách tìm các quy luật của
Trang 81 Ta xét ngẫu nhiên qua từng thuộc tính rồi phân nhóm kết quả theo từng giátrị của thuộc tính
Quan sát thuộc tính tóc ta có:
Pvàng = {Sarah, Dana, Annie, Kartie}
Pnâu = {Alex, Peter, John }
Pđỏ = {Emmile}
Người được gạch dưới và in đậm là bị cháy nắng, ta có sơ đồ sau:
Ta thấy P vàng còn lẫn lộn người cháy nắng và không cháy nắng, tiếp tục quan
sát thuộc tính kế tiếp là thuộc tính chiều cao với các tập hợp còn lẫn lộn này
Trang 9như vậy cây ngày càng phình ra đến khi xét hết các thuộc tính thì cây cuốicùng là cây định danh có khả năng cho ta các kết luận cuối cùng.
3. Nhận xét: Như vậy nếu ta chọn các thuộc tính ngẫu nhiên khác nhau thì kết
quả cuối cùng sẽ cho ra cây định danh cuối cùng khác nhau Với nhận xétnày ta thấy nếu ta chọn thuộc tính đầu tiên theo một cách nào đó thông minhhơn dựa vào tần xuất xuất hiện của giá trị dữ liệu trên thuộc tính thì có thể sẽcho ta một cây định danh đơn giản hơn Việc chọn thuộc tính như thế nào là
thông minh hơn ta sẽ xem thuật toán Quinlan sau đây:
III THUẬT TOÁN QUINLAN:
Một vector V(Aj) được gọi là vector đơn vị nếu nó 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
2 Minh họa thuật toán:
- Tương tự xét giá trị tóc nâu:
Tổng số phần tử trong phân hoạch có giá trị thuộc tính dẫn xuất là
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 là A là j
Trang 10Số 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à: 3Như vậy: Vtóc(nâu) = (0/3, 3/3) = (0, 1) à vector đơn vị
- Tóc đỏ:
Vtóc(đỏ) = (1/1, 0/1) = (1, 0) à Vector đơn vị
Tổng số vector đơn vị của thuộc tính Màu Tóc là 2
Xét thuộc tính Chiều cao
Như vậy: thuộc tính màu tóc có số vector đơn vị nhiều nhất (2 vector đơn vị)
nên sẽ được chọn đầu tiên để phân hoạch
Sau khi phân hoạch theo tóc vàng ta có tập phân hoạch:
Tên Chiều cao Cân nặng Dùng kem? Kết quả
(Bảng số 2)
b Bước 2:
Trong tập phân hoạch này ta thấy còn chứa những người cháy nắng và
không cháy nắng, tiếp tục phân hoạch tập này Tính vector đặc trưng trên cáctập còn lại (chiều cao, cân nặng, dùng kem)
Xét thuộc tính Chiều cao
Trang 11Vì hai thuộc tính dùng kem và chiều cao đều có cùng 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 Những tập phân hoạch đạt được trong bước
này không còn lẫn lộn người cháy nắng và không cháy nắng nên thuật toánkết thúc
Ta có cây định danh cuối cùng:
3 Nhận xét (độ đo hỗn loạn):
Thay vì phải xây dựng vector đặc trưng như phương pháp của Quinlan, ứngvới mỗi thuộc tính dẫn xuất ta chỉ cần tính ra độ đo hỗn loạn và lựa chọnthuộc tính nào có độ đo hỗn loạn là thấp nhất Người ta tính được công thứcnhư sau:
Gọi TA là độ đo hỗn loạn của một thuộc tính A, ta có:
Màu tóc
Đỏ Nâu
Trang 12
Trong đó:
o bt là tổng số phần tử có trong phân hoạch
o bj là số phần tử có thuộc tính dẫn xuất A có giá trị j
o bri là tổng số phần tử có thuộc tính dẫn xuất A có giá trị j và thuộc tínhmục tiêu có giá trị i
*** Tính độ đo hỗn loạn trong bài toán trên:
o Tập tóc Vàng có 2 người cháy nắng và 2 người không cháy nắng;
o Tập tóc Đỏ chỉ có 1 người cháy nắng;
o Tập tóc Nâu cả 3 người không cháy nắng, độ đo hỗn loạn được tính như
sau, và cho kết quả là 0.5
Ttóc = 4/8(-2/4log22/4 – 2/4log22/4) + 1/8(-1/1log21/1 – 0/1log20/1)
+ 3/8(-3/3log23/3)
Ttóc = 4/8(-2/4log22/4 – 2/4log22/4) + 1/8*0 + 3/8*0
Ttóc = 0.5Tính tương tự ta có:
Tchiều.cao = 0.69
Tcân.nặng = 0.94
Tdùng.thuốc = 0.61
à ta chọn được thuộc tính màu tóc để phân hoạch
Tiếp tục tính độ đo hỗn loạn trên các thuộc tính còn lại
Dựa vào cây định danh được xây dựng như trong hình số 5 mục 2, các quyết
định được phát sinh như sau: Người ta theo các nhánh của cây từ gốc đến lálấy các thử nghiệm là giả thiết và lấy nút lá làm kết luận, có các luật sau:
1 (Màu tóc vàng) và (có dùng kem) à không cháy nắng
Trang 13Vấn đề còn lại là làm sao tối ưu hóa tập luật này nếu nó có tồn tại luật dư thừa.
5 Tối ưu hóa tập luật:
a Loại bỏ giả thiết không cần thiết trong luật:
Sau khi các luật chuyển từ cây định danh, có thể bỏ đi các luật không cầnthiết để đơn giản tập các luật được sinh ra, người ta sẽ bỏ đi những giảthiết nào có thể bỏ đi mà không thay đổi tác dụng của luật đối với mẫu
Ta lần lượt xét 4 tập luật ở trên:
• Xét luật 1:
IF (Màu tóc Vàng) và (có dùng kem) THEN không cháy nắng
Giả thiết có 2 phần, nếu bỏ đi phần “màu tóc”, còn lại “có dùng kem”,theo các mẫu, người có dùng kem là {Dana, Alex, Kartie} cả 3 ngườinày không ai bị cháy nắng, tức là không ai trái với phần kết luận cả
Do đó người ta có thể bỏ đi phần giả thiết về “màu tóc” để có luật sauvẫn tương đương:
IF (có dùng kem) THEN không cháy nắng
Để dễ dàng trong suy luận người ta đưa ra bảng ngẫu nhiên (gọi làbảng ngẫu nhiên vì kết quả của bảng phụ thuộc vào dữ liệu cho trongbảng quan sát) như sau:
Màu tóc Người không cháy nắng Người bị cháy nắng Tóc vàng
Tóc không vàng
2 1
0 0Bảng trên cho thấy một tri thức là người có tóc vàng không quyết định
gì trong việc họ có bị cháy nắng hay không (vì không có người tócvàng nào bị cháy nắng) à có thể loại bỏ thuộc tính tóc trong luật 1Nếu bỏ đi thuộc tính dùng kem ta có:
Dùng kem Người không cháy nắng Người bị cháy nắng
Có dùng
Trang 14Rõ ràng ta không thể loại bỏ thuộc tính “dùng kem” này trong luật này
• Xét luật 2:
IF (Màu tóc nâu) và (không dùng kem) THEN cháy nắng
Bỏ giả thiết “màu tóc”:
Màu tóc Người không cháy nắng Người bị cháy nắng Tóc vàng
Bỏ giả thiết “dùng kem”:
Dùng kem Người không cháy nắng Người bị cháy nắng
Có dùng
Hai bảng trên cho thấy không thể bỏ đi giả thiết nào trong luật này vì người ta không thể bảo đảm kết luận vẫn đúng nếu bỏ đi một trong 2 giả thiết đã cho, có nghĩa là luật này không thể cho đơn giản hơn được nữa
• Xét luật 3 và 4 ta cũng không thể loại bỏ giả thiết nào
Tóm lại: Sau khi loại bỏ giả thiết thừa, tập luật trên có thể tóm gọn hơn
như sau:
b Loại bỏ luật thừa:
Nếu suy luận kỹ hơn chút nữa sau khi loại bỏ giả thiết thừa trong phần(a), ta có thể thấy rằng đôi khi cũng còn có luật thừa vì trùng suy luậnthông tin với các luật khác trong tập luật Ta dùng các suy luận sau đây
để loại bỏ luật thừa:
Với tập luật thu được ở hình số 7 ta thấy có 2 kết luận không cháy nắng
(luật 1 & 3) và 2 kết luận cháy nắng (luật 2 & 4) Người ta có thể dùng
luật mặc định để thay thế một hay nhiều luật có trong tập luật nếu luật
mặc định đó không làm mất đi tính đúng đắn ban đầu Luật mặc định làluật được dùng chỉ khi không có luật nào Do có hai kết luận nên có haikhả năng của luật mặc định:
5 (Có dùng kem) à không cháy nắng
6 (Màu tóc nâu) và (không dùng kem) à cháy nắng
7 (Màu tóc nâu) à không cháy nắng
8 (Màu tóc đỏ) à cháy nắng
Trang 15IF không có giả thiết THEN người đó bị cháy nắng (a)
IF không có giả thiết THEN người đó không cháy nắng (b)
Dễ thấy rằng luật mặc định (a) có thể thay thế cho luật (2) và luật (4) vì
“không có giả thiết” đại diện cho nhiều giả thiết nhất “màu tóc nâu”,
“không dùng kem” và “màu tóc đỏ”
Như vậy tập luật hình 7 có thể thay thế bằng một tập luật khác sau khiloại bỏ luật bằng cách thay thế vào luật mặc định đại diện cho luật 2 & 4như sau:
6 Kết luận:
Sau khi dùng thuật toán Quinlan để xây dựng cây định danh, người ta
chuyển về tập luật, đồng thời tối ưu hóa tập luật bằng việc loại bỏ các giảthiết thừa, loại bỏ giả thiết không gây ảnh hưởng đến tập luật Sau đó loại bỏluật thừa bằng thay thế vào luật mặc định dựa trên hơn hai tập luật có cùngchung kết luận mà có nhiều giả thiết nhất
Phần 4
CÀI ĐẶT ỨNG DỤNG MINH HỌA
Trong phạm vi đề tài này em chỉ thực hiện được một phần của các lỗi phầncứng của dòng máy laptop hiệu Acer, đề tài này có thể nghiên cứu mở rộng chotất các các dòng máy laptop có trên thị trường
1 Dữ liệu các lỗi phần cứng của dòng máy laptop hiệu Acer
Struck key
Nối lại dây bàn phímThay bàn phímThay mainboard
1 (Có dùng kem) à không cháy nắng
2 (Màu tóc nâu) à không cháy nắng
3 (không có giả thiết) à cháy nắng
Trang 16System CMOS checksum bad –
default configuration used
Thay pin CMOSSetup lại BIOS
Real time clock error
Thay pin CMOSSetup lại BIOSLỗi mainboard
Previous boot incomplete – default
configuration used
Setup BIOS mặc địnhThay pin CMOSLỗi MainboardInvalid System Configuration Data Setup BIOS mặc định
Lỗi Mainboard
Operating system not found
Kiểm tra hệ điều hànhKiểm tra đĩa cứng trong BIOSLỗi đĩa cứng
Lỗi Mainboard
Đền nguồn tắt, màn hình tối
Kiểm tra pin/cục sạcKiểm tra các dây nốiKiểm tra RAMLỗi Mainboard
Đèn nguồn sáng, màn hình tối
Kiểm tra pin/cục sạcKiểm tra dây màn hình LCDLỗi đĩa cứng
Lỗi dây màn hình LCDLỗi mạch cao áp màn hìnhLỗi màn hình
Lỗi MainboardĐèn nguồn sáng, chỉ thấy con trỏ
chuột lúc khởi động
Kiểm tra các dây nốiLỗi Mainboard
Trang 17Lỗi màn hình
Triệu chứng Nguyên nhân và cách khắc phục
Đèn backlight không sáng
Cắm thử màn hình ngoài vào cổng VGA ngoài, setup BIOS về mặc định, khởi động lại máy
Cắm lại dây màn hình LCDHỏng dây màn hình
Hỏng mạch cao ápHỏng màn hìnhHỏng Mainboard
Màn hình tối khong thể hiệu chỉnh
độ sáng màn hình
Setup BIOS mặc định, khởi động lại máy
Cắm lại dây màn hình LCDLỗi bàn phím ( nút điều chỉnh độ sáng bị hỏng)
Hỏng cáp LCDHỏng mạch cao ápHỏng màn hìnhHỏng Mainboard
Màn hình không đọc được, mất điểm
trên màn hình, màu bị sai
Cắm lại dây màn hìnhHỏng dây màn hìnhHỏng màn hìnhHỏng Mainboard
Lỗi liên quan đến nguồn:
Triệu chứng Nguyên nhân và cách khắc phụcMáy tắt đột ngột trong lúc chạy Sạc lại Pin