190 likes | 499 Views
SUY LUẬN KHÔNG CHẮC CHẮN. Nội dung chính : Trong chương này, chúng ta sẽ tìm hiểu về các phương pháp suy luận từ các thông tin không chắc chắn hoặc không đầy đủ bao gồm suy luận Bayes, đại số chắc chắn Standford và logic mờ. Mục tiêu cần đạt : Sau chương này, sinh viên có thể :
E N D
SUY LUẬN KHÔNG CHẮC CHẮN • Nội dung chính: Trong chương này, chúng ta sẽ tìm hiểu về các phương pháp suy luận từ các thông tin không chắc chắn hoặc không đầy đủ bao gồm suy luận Bayes, đại số chắc chắn Standford và logic mờ. • Mục tiêu cần đạt : Sau chương này, sinh viên có thể : • Vận dụng công thức Bayes để tính xác suất của một giả thuyết. • Hiểu nguyên tắc hoạt động của HCG MYCIN • Vận dụng đại số hệ số chắc chắn Stanford vào hệ chuyên gia MYCIN. • Hiểu lý thuyết về logic mờ & ứng dụng của nó vào các HCG mờ. • Biết lựa chọn phương pháp suy luận phù hợp với vấn đề cần giải quyết. • Kiến thức tiên quyết: Biểu diễn tri thức ở dạng luật, cơ bản về lý thuyết xác suất.
SUY LUẬN BAYES Xác suất hậu nghiệm (posterior probability) hay xác suất có điều kiện (conditional probability) Là xác suất của một sự kiện khi biết trước một hay nhiều sự kiện khác. Công thức Bayes Ta ký hiệu P(h | e) là xác suất khẳng định giả thuyết h đúng cho trước bằng chứng e. Công thức Bayes được phát biểu như sau: • Giả sử ta có các thông tin sau: • - 75% trường hợp bệnh nhân mắc bệnh quai bị đều bị cúm • - Cơ hội một người bị bệnh quai bị là 1/15000 • - Cơ hội một người bị cúm là 1/1000 • Hãy xác định xác suất điều kiện của một bệnh nhân mắc bệnh quai bị biết rằng người này không bị cúm.
ĐẠI SỐ HỆ SỐ CHẮC CHẮN STANFORD MB(H | E) là độ đo của niềm tin vào khả năng đúng của giả thuyết H, khi có bằng chứng E MD(H | E) là độ đo của sự hoài nghi vào khả năng đúng của giả thuyết H, khi có bằng chứng E Giá trị của các độ đo này chỉ rơi vào một trong hai trường hợp: 0 < MB(H | E) < 1 trong khi MD(H | E) = 0, hoặc: 0 < MD(H | E) < 1 trong khi MB(H | E) = 0 Hệ số chắc chắn Stanford CF (H | E) = MB(H | E) – MD(H | E) Ta có hai vấn đề không chắc chắn là dữ liệu và luật. Vì vậy, ở đây ta cũng có 2 loại hệ số CF là hệ số chắc chắn cho dữ kiện (fact), và hệ số chắc chắn cho luật (rule). Để dễ phân biệt ta sử dụng ký hiệu CFf cho dữ kiện và CFr cho luật
ĐẠI SỐ HỆ SỐ CHẮC CHẮN STANFORD • CÁC HỆ SỐ CHẮC CHẮN STANFORD • a. Hệ số chắc chắn dành cho dữ kiện: dữ kiện ở đây bao gồm dữ liệu ban đầu, dữ liệu suy luận được và kết luận (giả thuyết): CFf(fact) ∈[-1,1]: • CFf càng tiến về 1 thể hiện sự tin tưởng dữ kiện là đúng càng mạnh • CFf tiến về -1 thể hiện sự tin tưởng dữ kiện là không đúng càng mạnh • CFf có giá trị xung quanh 0 cho thấy tồn tại rất ít bằng cớ cho việc ủng hộ hay chống lại dữ kiện. Vì vậy, nếu lấy dữ liệu này đi suy luận thì độ chính xác sẽ rất thấp. Do đó, người ta thường đưa ra một giới hạn (threshold) nhằm tránh việc suy luận với thông tin không chắc chắn như vậy (vd: 0.2). Nghĩa là nếu dữ kiện nào có CF nhỏ hơn giới hạn, ta sẽ không sử dụng trong quá trình suy luận. • b. Hệ số chắc chắn dành cho luật: • CFr(rule) ∈[-1,1] : thể hiện sự tin tưởng của các chuyên gia vào độ tin cậy của luật.
ĐẠI SỐ HỆ SỐ CHẮC CHẮN STANFORD Các quy tắc tính toán trên CF c. Quy tắc kết hợp các CFf của các điều kiện: Thông thường, một luật thường có tiền đề (vế trái) tạo thành từ những kết nối and/or của nhiều điều kiện. Khi một luật sinh được sử dụng, các CF liên kết với mỗi điều kiện của tiền đề sẽ được kết hợp với nhau để tạo ra một độ đo chắc chắn cho toàn bộ tiền đề (toàn bộ vế trái của luật) theo công thức sau: CF ( ĐK1 And ĐK2) = Min[CF(ĐK1), CF(ĐK2)] CF (ĐK1 Or ĐK2) = Max[CF(ĐK1), CF(ĐK2)] Thí dụ: CF(bệnh nhân bị sốt) = 0.9 CF(bệnh nhân bị hắc hơi) = 0.6 => CF(bệnh nhân bị sốt And bệnh nhân bị hắc hơi) = 0.6 => CF(bệnh nhân bị sốt Or bệnh nhân bị hắc hơi) = 0.9
ĐẠI SỐ HỆ SỐ CHẮC CHẮN STANFORD d. Quy tắc tính CF cho dữ kiện suy ra từ luật: Khi hệ thống sử dụng các luật không chắc chắn (nghĩa là đi kèm theo một hệ số CF) để suy ra kết luận, thì các hệ số CF của tiền đề cũng sẽ được truyền từ tiền đề sang kết luận thông qua luật theo quy tắc sau: CFf(KL) = CFr(luật) * CFf(ĐK) Thí dụ 7.3: CF(bệnh nhân bị sốt) = 0.8 CF(If bệnh nhân bị sốt Then bệnh nhân bị cúm) = 0.5 => CF(bệnh nhân bị cúm) = 0.4
ĐẠI SỐ HỆ SỐ CHẮC CHẮN STANFORD e. Quy tắc kết hợp nhiều CF của các kết luận từ nhiều luật Khi có nhiều luật cùng đưa ra một kết luận (vế phải) giống nhau, thì các giá trị CF đạt được từ các luật này sẽ được kết hợp theo quy tắc sau: Nếu KL từ luật 1 có giá trị CFf1(KL) Nếu KL từ luật 2 có giá trị CFf2(KL) Thì: Thí dụ 7.4: CF(bệnh nhân bị sốt) = 1 CF(bệnh nhân bị hắc hơi) = 0.8 CF(If bệnh nhân bị hắc hơi Then bệnh nhân bị cúm) = 0.5 CF(If bệnh nhân bị sốt Then bệnh nhân bị cúm) = 0.6 => CF1(bệnh nhân bị cúm) = 0.4 => CF2(bệnh nhân bị cúm) = 0.6 => CF(bệnh nhân bị cúm) = 0.4 + 0.6 – 0.24 = 0.76
VÍ DỤ HỆ MINI-MYCIN • MINI-MYCIN là một hệ chuyên gia nhỏ chuyên phân biệt giữa chân bị gãy, chân bị quá mỏi hay chân bị nhiễm trùng. • Nó gồm các luật sau: • 1. IF đau và sốt THEN bị nhiễm trùng 0.6 • 2. IF đau và sưng THEN bị chấn thương 0.8 • 3. IF quá tải THEN bị nhiễm trùng 0.5 • 4. IF bị chấn thương AND đỏ THEN bị gãy 0.8 • 5. IF bị chấn thương AND di chuyển đượcTHEN quá mỏi 1.0 • Sử dụng MINI-MYCIN để chẩn đoán tình trạng chân của Minh, biết rằng: chân của Minh đang bị đau (1.0). Khi tôi kiểm tra nó, thấy nó sưng tấy (0.6) and hơi đỏ (0.1). Tôi không có nhiệt kế nhưng tôi nghĩ anh ta có bị sốt (0.4). Tôi biết Minh là một vận động viên marathon, các khớp của anh ta thường xuyên làm việc quá tải (1.0). Minh có thể di chuyển chân của anh ấy. • Hãy vẽ đồ thị And/Or minh họa cho quá trình suy luận để đi đến kết luận của MINI-MYCIN.
SUY LUẬN VỚI CÁC TẬP MỜ • Logic truyền thống hay logic ‘giòn’: • Logic truyền thống chỉ quan tâm đến 2 giá trị tuyệt đối (đúng hoặc sai). Logic truyền thống luôn tuân theo 2 giả thuyết. • Một là tính thành viên của tập hợp: Với một phần tử và một tập hợp bất kỳ, thì phần tử hoặc là thuộc tập hợp đó, hoặc thuộc phần bù của tập đó. • Hai là định luật loại trừ trung gian, khẳng định một phần tử không thể vừa thuộc một tập hợp lại vừa thuộc phần bù của tập hợp đó. • Thí dụ: Nếu nhiệt độ trên 35 độ C thì nóng, ngược lại là không nóng. Hình bên dưới minh họa tập hợp “NÓNG” gồm tất cả các nhiệt độ từ 35 độ C trở lên
SUY LUẬN VỚI CÁC TẬP MỜ Khái niệm Logic mờ: Để khắc phục khuyết điểm của logic truyền thống, Lotfi Zadeh đã đưa ra lý thuyết mới về logic gọi là logic mờ (fuzzy logic). Lý thuyết của Zadeh biểu diễn tính mờ hay tính thiếu chính xác trong các phát biểu (như ở mục trên) theo cách định lượng bằng cách đưa ra một hàm tư cách thành viên tập hợp (set membership function) nhận giá trị thực giữa 0 và 1. Khái niệm về tập mờ: Cho S là một tập hợp và x là một phần tử của tập hợp đó. Một tập con mờ F của S được định nghĩa bởi một hàm tư cách thành viên μF(x) đo “mức độ” mà theo đó x thuộc về tập F. Trong đó, 0 ≤ μF(x) ≤ 1. Khi μF(x) = 0 nghĩa là x hoàn toàn không thuộc tập F. Khi μF(x) = 1 nghĩa là x thuộc F hoàn toàn. Nếu μF(x) = 0 hoặc 1 thì tập F được xem là “giòn”
SUY LUẬN VỚI CÁC TẬP MỜ Thí dụ: Hình bên dưới minh họa hàm thành viên cho các tập mờ thể hiện người đàn ông “Thấp”, “Cao” và “Trung bình”. Biểu diễn của các tập mờ “Thấp”, “Trung bình”, và “Cao”
SUY LUẬN VỚI CÁC TẬP MỜ Tính chất: Ta gọi các con số 0.8, 0.2, 1.0 là các giá trị mờ (fuzzy values). Vậy từ các giá trị chính xác hay giá trị ‘giòn’ (số tuổi: 28, 35, 23…), ta đã suy ra các giá trị mờ tương ứng. Thao tác này gọi là mờ hóa (fuzzification) các giá trị giòn. Thí dụ: Cho các tập mờ thể hiện “Trẻ”, “Trung niên” và “Già”. • - An 28 tuổi => μTre(An) = 0.8 và μTrung niên(An) = 0.3 • - Bảo 35 tuổi => μTre(Bảo) = 0.3 và μTrung niên(Bảo) = 0.8 • - Châu 23 tuổi => μTre(Châu) = 1.0
SUY LUẬN VỚI CÁC TẬP MỜ Các toán tử logic trên tập mờ: Logic mờ không quan tâm đến cách thức các tập mờ được tạo ra như thế nào, mà quan tâm đến các luật hỗ trợ cho việc suy luận trên các tập mờ này. Phần này sẽ trình bày các phép toán thao tác trên các tập mờ, đó là phép bù (complement) phép hợp (union), phép giao (intersection). Phép hợp hay toán tử OR: Khái niệm: Hợp của hai tập mờ (AB) thể hiện mức độ một phần tử thuộc về một trong hai tập là bao nhiêu. Công thức: μavb(x) = max (μA(x) , μB(x) ) Thí dụ: μTre(An) = 0.8 và μTrung niên(An) = 0.3 => μTrevTrung Niên(An) = max( 0.8, 0.3) = 0.8
SUY LUẬN VỚI CÁC TẬP MỜ • Phép giao hay toán tử AND: • Khái niệm: Giao của hai tập mờ (A∩B) thể hiện mức độ một phần tử thuộc về cả hai tập là bao nhiêu. • Công thức: μ A^B(x) = min (μA(x) , μB(x)) • Thí dụ: • μTre(An) = 0.8 và μTrung niên(An) = 0.3 • μTre^Trung Niên(An) = min( 0.8, 0.3) = 0.3 • Phép bù hay toán tử NOT: • Khái niệm: Bù của một tập mờ thể hiện mức độ một phần tử không thuộc về tập đó là bao nhiêu. • Công thức: μ ¬A(x) = 1 - μA(x) • Thí dụ 7.12: μTrẻ(An) = 0.8 • μ ¬Trẻ(An) = 1 – 0.8 = 0.2
SUY LUẬN VỚI CÁC TẬP MỜ Thủ tục ra quyết định mờ: (fuzzy decision making procedure) Để hệ thống mờ có thể suy luận bằng các luật mờ và đưa ra kết luận từ các số liệu chính xác ở đầu vào, hệ thống thực hiện 3 bước: 1. Mờ hóa: Tính toán các giá trị mờ từ các giá trị chính xác ở đầu vào 2. Suy luận mờ: Áp dụng tất cả các luật mờ có thể áp dụng để tính ra giá trị mờ cho kết luận, sau đó kết hợp các kết quả đầu ra. 3. Phi mờ hóa: Xác định giá trị chính xác từ kết quả mờ có được ở bước 2. Có nhiều kỹ thuật phi mờ hóa có thể áp dụng được, phương pháp thông dụng nhất là phương pháp trọng tâm (centriod method).
SUY LUẬN VỚI CÁC TẬP MỜ Cho hệ thống mờ dùng trong điều trị bệnh gồm các luật sau đây: 1. IF sốt nhẹ THEN liều lượng asperine thấp 2. IF sốt THEN liều lượng asperine bình thường 3. IF sốt cao THEN liều lượng asperine cao 4. IF sốt rất cao THEN liều lượng asperine cao nhất. Với các tập mờ được biểu diễn như sau:
SUY LUẬN VỚI CÁC TẬP MỜ Một bệnh nhân sốt ở 38.7 độ, hãy xác định liều lượng asperince cần thiết để cấp cho bệnh nhân. Bước 1: Mờ hóa. giá trị x = 38.7 đã cho: ta thấy 38.7 thuộc về các tập mờ như sau: Bước 2: Suy luận. Ta thấy có 2 luật 1 và 2 có thể áp dụng cho ra hai liều lượng aspirine: μThấp (x) = 0.3 μBình thường (x) = 0.7 Kết hợp các giá trị mờ này lại ta được vùng được tô màu sau đây: