PowerPoint Presentation Mạng Bayes Ngô Xuân Bách Học viện Công nghệ Bưu chính Viễn thông Khoa Công nghệ thông tin 1 Nhập môn trí tuệ nhân tạo Nội dung http //www ptit edu vn 2 Định nghĩa và cách xây[.]
Học viện Cơng nghệ Bưu Viễn thơng Khoa Cơng nghệ thơng tin Nhập mơn trí tuệ nhân tạo Mạng Bayes Ngô Xuân Bách Nội dung Định nghĩa cách xây dựng mạng Bayes Suy diễn với mạng Bayes http://www.ptit.edu.vn Vấn đề biểu diễn xác suất Bài toán suy diễn: o o Cho chứng 𝐸1 , 𝐸2 , … , 𝐸𝑛 Cần xác định yêu cầu 𝑄 cách tính 𝑃(𝑄|𝐸1 , 𝐸2 , … , 𝐸𝑛 ) Nếu có tất xác suất đồng thời o Có thể tính xác suất điều kiện Bảng xác suất đồng thời có kích thước tăng theo hàm mũ số biến o Quá lớn thực tế Cần có cách biểu diễn suy diễn thực tế http://www.ptit.edu.vn Ví dụ (1/2) Bài toán: Một người làm về, cần đoán nhà có người khơng? Biết rằng: o o o o Nếu người nhà vắng thường (nhưng khơng ln ln) bật đèn ngồi sân Khi khơng có người nhà thường buộc chó bên ngồi Nếu chó bị ốm bị buộc bên ngồi Nếu chó ngồi nghe tiếng sủa http://www.ptit.edu.vn Ví dụ (2/2) Xác định biến ngẫu nhiên sau o o o o o 𝑂 : nhà khơng có người 𝐿 : đèn ngồi sân sáng 𝐷 : chó buộc ngồi 𝐵 : chó bị ốm (đau bụng) 𝐻 : nghe thấy tiếng sủa http://www.ptit.edu.vn Quan hệ nút O L B D H http://www.ptit.edu.vn Mạng Bayes 𝑃 𝑂 = 0.6 𝑃 𝐿|𝑂 = 0.3 𝑃 𝐿|¬𝑂 = 0.6 L O B D H 𝑃 𝑃 𝑃 𝑃 𝑃 𝐵 = 0.3 𝐷|𝑂, 𝐵 = 0.05 𝐷|𝑂, ¬𝐵 = 0.1 𝐷|¬𝑂, 𝐵 = 0.1 𝐷|¬𝑂, ¬𝐵 = 0.2 𝑃 𝐻|𝐷 = 0.3 𝑃 𝐻|¬𝐷 = 0.8 http://www.ptit.edu.vn Định nghĩa mạng Bayes Mạng Bayes bao gồm phần o Phần thứ đồ thị có hướng, khơng chu trình, nút ứng với biến ngẫu nhiêu, cạnh (có hướng) biểu diễn cho quan hệ nút gốc nút đích o Phần thứ hai bảng xác suất điều kiện chứa xác suất điều kiện nút biết tổ hợp giá trị nút bố mẹ http://www.ptit.edu.vn Tính độc lập xác suất mạng Bayes Mạng Bayes cho phép biểu diễn ngắn gọn toàn xác suất đồng thời o Việc rút gọn nhờ sử dụng tính độc lập xác suất mạng Độc lập xác suất o o Mỗi nút 𝑉 độc lập với tất nút hậu duệ 𝑉, biết giá trị nút bố mẹ 𝑉 Ví dụ: 𝐻 độc lập có điều kiện với 𝐿, 𝑂, 𝐵 biết 𝐷 𝑃 𝑂 = 0.6 𝑃 𝐿|𝑂 = 0.3 𝑃 𝐿|¬𝑂 = 0.6 L O B 𝑃 𝐵 = 0.3 D 𝑃 𝐷|𝑂, 𝐵 = 0.05 𝑃 𝐷|𝑂, ¬𝐵 = 0.1 𝑃 𝐷|¬𝑂, 𝐵 = 0.1 𝑃 𝐷|¬𝑂, ¬𝐵 = 0.2 H 𝑃 𝐻|𝐷 = 0.3 𝑃 𝐻|¬𝐷 = 0.8 http://www.ptit.edu.vn Tính xác suất đồng thời cho mạng Bayes Ví dụ: 𝑃(𝐻, ¬𝐿, 𝐷, ¬𝑂, 𝐵) = 𝑃(𝐻 | ¬𝐿, 𝐷, ¬𝑂, 𝐵) 𝑃(¬𝐿, 𝐷, ¬𝑂, 𝐵) = 𝑃(𝐻|𝐷) 𝑃(¬𝐿, 𝐷, ¬𝑂, 𝐵) = 𝑃(𝐻|𝐷) 𝑃(¬𝐿 | 𝐷, ¬𝑂, 𝐵) 𝑃(𝐷, ¬𝑂, 𝐵) = 𝑃(𝐻|𝐷) 𝑃(¬𝐿|¬𝑂) 𝑃(𝐷, ¬𝑂, 𝐵) = 𝑃(𝐻|𝐷) 𝑃(¬𝐿|¬𝑂) 𝑃(𝐷 | ¬𝑂, 𝐵) 𝑃(¬𝑂, 𝐵) = 𝑃(𝐻|𝐷) 𝑃(¬𝐿|¬𝑂) 𝑃(𝐷|¬𝑂, 𝐵) 𝑃(¬𝑂) 𝑃(𝐵) = (0.3)(1 − 0.6)(0.1)(1 − 0.6)(0.3) 𝑃 𝑂 = 0.6 𝑃 𝐿|𝑂 = 0.3 𝑃 𝐿|¬𝑂 = 0.6 10 O B 𝑃 𝐵 = 0.3 L D 𝑃 𝐷|𝑂, 𝐵 = 0.05 𝑃 𝐻|𝐷 = 0.3 𝑃 𝐻|¬𝐷 = 0.8 H 𝑃 𝐷|𝑂, ¬𝐵 = 0.1 𝑃 𝐷|¬𝑂, 𝐵 = 0.1 𝑃 𝐷|¬𝑂, ¬𝐵 = 0.2 http://www.ptit.edu.vn Suy diễn cho trường hợp riêng đơn giản Trường hợp đơn giản o o Khi chứng 𝐸 kết 𝑄 có liên kết trực tiếp với Phân biệt trường hợp: 28 Suy diễn nhân (trên xuống): cần tính 𝑃(𝑄|𝐸) 𝐸 nút cha 𝑄 Suy diễn chẩn đoán (dưới lên): cần tính 𝑃(𝑄|𝐸) 𝐸 nút 𝑄 O L B D H http://www.ptit.edu.vn Suy diễn nhân (1/3) Ví dụ: tính 𝑃(𝐷|𝐵) 𝑃 𝑂 = 0.6 𝑃 𝐿|𝑂 = 0.3 𝑃 𝐿|¬𝑂 = 0.6 L O B 𝑃 𝐵 = 0.3 D 𝑃 𝐷|𝑂, 𝐵 = 0.05 𝑃 𝐷|𝑂, ¬𝐵 = 0.1 𝑃 𝐷|¬𝑂, 𝐵 = 0.1 𝑃 𝐷|¬𝑂, ¬𝐵 = 0.2 𝑃 𝐻|𝐷 = 0.3 H 𝑃 𝐻|¬𝐷 = 0.8 29 http://www.ptit.edu.vn Suy diễn nhân (2/3) Ví dụ: tính 𝑃(𝐷|𝐵) 𝑃 𝑂 = 0.6 𝑃(𝐷, 𝐵) 𝑃 𝐿|𝑂 = 0.3 𝑃 𝐷𝐵 = 𝑃(𝐵) 𝑃 𝐿|¬𝑂 = 0.6 𝑃 𝐷, 𝐵, 𝑂 + 𝑃(𝐷, 𝐵, ¬𝑂) = 𝑃(𝐵) 𝑃 𝐷|𝐵,𝑂 𝑃(𝐵,𝑂)+𝑃(𝐷| 𝐵,¬𝑂)𝑃(𝐵,¬𝑂) = 𝑃(𝐵) = L O B 𝑃 𝐵 = 0.3 D 𝑃 𝐷|𝑂, 𝐵 = 0.05 𝑃 𝐷|𝑂, ¬𝐵 = 0.1 𝑃 𝐷|¬𝑂, 𝐵 = 0.1 𝑃 𝐷|¬𝑂, ¬𝐵 = 0.2 𝑃 𝐻|𝐷 = 0.3 H 𝑃 𝐻|¬𝐷 = 0.8 𝑃 𝐷|𝐵,𝑂 𝑃 𝐵 𝑃(𝑂)+𝑃(𝐷| 𝐵,¬𝑂)𝑃(𝐵)𝑃(¬𝑂) 𝑃(𝐵) = 𝑃 𝐷|𝐵, 𝑂 𝑃(𝑂) + 𝑃(𝐷| 𝐵, ¬𝑂)𝑃(¬𝑂) = 0.05 0.6 + 0.1 − 0.6 = 0.07 30 http://www.ptit.edu.vn Suy diễn nhân (3/3) Ví dụ: tính 𝑃(𝐷|𝐵) 𝑃(𝐷, 𝐵) 𝑃 𝐷𝐵 = 𝑃(𝐵) 𝑃 𝐷, 𝐵, 𝑂 + 𝑃(𝐷, 𝐵, ¬𝑂) = 𝑃(𝐵) = = 𝑃 𝑂 = 0.6 O Bước 1: Đưa x/s điều = 0.3 L D kiện x/s đồng thời 𝑃 𝐿|𝑂 𝑃 𝐿|¬𝑂 = 0.6 𝑃 𝐷|𝐵,𝑂 𝑃(𝐵,𝑂)+𝑃(𝐷| 𝐵,¬𝑂)𝑃(𝐵,¬𝑂) 𝑃(𝐵) 𝑃 𝐷|𝐵,𝑂 𝑃 𝐵 𝑃(𝑂)+𝑃(𝐷| 𝐵,¬𝑂)𝑃(𝐵)𝑃(¬𝑂) 𝑃(𝐵) B 𝑃 𝐵 = 0.3 𝑃 𝐷|𝑂, 𝐵 = 0.05 𝑃 𝐷|𝑂, ¬𝐵 = 0.1 𝑃 𝐷|¬𝑂, 𝐵 = 0.1 𝑃 𝐷|¬𝑂, ¬𝐵 = 0.2 𝑃 𝐻|𝐷 = 0.3 H Bước 2: = Sử0.8dụng tính 𝑃 𝐻|¬𝐷 độc lập x/s mạng Bayes, viết lại x/s đồng thời dạng x/s điều kiện nút biết giá trị bố mẹ = 𝑃 𝐷|𝐵, 𝑂 𝑃(𝑂) + 𝑃(𝐷| 𝐵, ¬𝑂)𝑃(¬𝑂) = 0.05 0.6 + 0.1 − 0.6 = 0.07 31 Bước 3: Sử dụng giá trị x/s từ bảng x/s điều kiện để tính http://www.ptit.edu.vn Suy diễn chuẩn đốn (1/5) Ví dụ: tính 𝑃(¬𝐵|¬𝐷) 𝑃 𝑂 = 0.6 𝑃 𝐿|𝑂 = 0.3 𝑃 𝐿|¬𝑂 = 0.6 L O B 𝑃 𝐵 = 0.3 D 𝑃 𝐷|𝑂, 𝐵 = 0.05 𝑃 𝐷|𝑂, ¬𝐵 = 0.1 𝑃 𝐷|¬𝑂, 𝐵 = 0.1 𝑃 𝐷|¬𝑂, ¬𝐵 = 0.2 𝑃 𝐻|𝐷 = 0.3 H 𝑃 𝐻|¬𝐷 = 0.8 32 http://www.ptit.edu.vn Suy diễn chuẩn đoán (2/5) Theo Bayes 𝑃 𝑂 = 0.6 𝑃 ¬𝐷 ¬𝐵 𝑃(¬𝐵) 𝑃 ¬𝐵 ¬𝐷 = 𝑃(¬𝐷) 𝑃 𝐿|𝑂 = 0.3 𝑃 𝐿|¬𝑂 = 0.6 tính 𝑃 ¬𝐷 ¬𝐵 phần trước 33 L O B 𝑃 𝐵 = 0.3 D 𝑃 𝐷|𝑂, 𝐵 = 0.05 𝑃 𝐷|𝑂, ¬𝐵 = 0.1 𝑃 𝐷|¬𝑂, 𝐵 = 0.1 𝑃 𝐷|¬𝑂, ¬𝐵 = 0.2 𝑃 𝐻|𝐷 = 0.3 H 𝑃 𝐻|¬𝐷 = 0.8 http://www.ptit.edu.vn Suy diễn chuẩn đoán (3/5) Theo Bayes 𝑃 𝑂 = 0.6 𝑃 ¬𝐷 ¬𝐵 𝑃(¬𝐵) 𝑃 ¬𝐵 ¬𝐷 = 𝑃(¬𝐷) 𝑃 𝐿|𝑂 = 0.3 𝑃 𝐿|¬𝑂 = 0.6 tính 𝑃 ¬𝐷 ¬𝐵 phần trước O B 𝑃 𝐵 = 0.3 D 𝑃 𝐷|𝑂, 𝐵 = 0.05 L 𝑃 𝐷|𝑂, ¬𝐵 = 0.1 𝑃 𝐷|¬𝑂, 𝐵 = 0.1 𝑃 𝐷|¬𝑂, ¬𝐵 = 0.2 𝑃 𝐻|𝐷 = 0.3 H 𝑃 𝐻|¬𝐷 = 0.8 𝑃(¬𝐷|¬𝐵) = 𝑃(¬𝐷|𝑂, ¬𝐵)𝑃(𝑂) + 𝑃(¬𝐷|¬𝑂, ¬𝐵)𝑃(¬𝑂) = 0.9 0.6 + 0.8 0.4 = 0.86 (0.86)(0.7) 0.602 𝑃(¬𝐵|¬𝐷) = = 𝑃(¬𝐷) 𝑃(¬𝐷) Để tính 𝑃(¬𝐷), ta tính 𝑃(𝐵|¬𝐷) 34 http://www.ptit.edu.vn Suy diễn chuẩn đốn (4/5) 𝑃 𝐵 ¬𝐷 = Sử dụng 𝑃 ¬𝐷 𝐵 𝑃(𝐵) 𝑃(¬𝐷) = 1−0.07 0.3 𝑃(¬𝐷) = 0.279 𝑃(¬𝐷) 𝑃 ¬𝐵 ¬𝐷 + 𝑃 𝐵 ¬𝐷 = 0.602 0.279 + =1 𝑃(¬𝐷) 𝑃(¬𝐷) Do 𝑃(¬𝐷) = 0.881 Thay lại: 𝑃 ¬𝐵 ¬𝐷 = 35 0.602 0.602 = = 0.683 𝑃 ¬𝐷 0.881 http://www.ptit.edu.vn Suy diễn chuẩn đoán (5/5) Theo Bayes 𝑃 𝑂 = 0.6 𝑃 ¬𝐷 ¬𝐵 𝑃(¬𝐵) 𝑃 ¬𝐵 ¬𝐷 = 𝑃(¬𝐷) 𝑃 𝐿|𝑂 = 0.3 𝑃 𝐿|¬𝑂 = 0.6 tính 𝑃 ¬𝐷 ¬𝐵 phần trước L O B 𝑃 𝐵 = 0.3 Bước 1: biến đổi suy diễn D 𝑃 𝐷|𝑂, 𝐵 = 0.05 𝐷|𝑂,tắc ¬𝐵 bayes = 0.1 nhân sử dụng𝑃 quy 𝑃 𝐷|¬𝑂, 𝐵 = 0.1 𝑃 𝐷|¬𝑂, ¬𝐵 = 0.2 𝑃 𝐻|𝐷 = 0.3 H 𝑃 𝐻|¬𝐷 = 0.8 𝑃(¬𝐷|¬𝐵) = 𝑃(¬𝐷|𝑂, ¬𝐵)𝑃(𝑂) + 𝑃(¬𝐷|¬𝑂, ¬𝐵)𝑃(¬𝑂) Bước 2: thực giống suy = 0.9 0.6 + 0.8 0.4 diễn nhân = 0.86 (0.86)(0.7) 0.602 𝑃(¬𝐵|¬𝐷) = = 𝑃(¬𝐷) 𝑃(¬𝐷) Để tính 𝑃(¬𝐷), ta tính 𝑃(𝐵|¬𝐷) 36 http://www.ptit.edu.vn Phương pháp chung Áp dụng cho suy diễn nhân suy diễn chuẩn đoán o o o 37 Bước 1: Đưa xác suất điều kiện xác suất đồng thời Bước 2: Sử dụng tính độc lập xác suất mạng Bayes, viết lại xác suất đồng thời dạng xác suất điều kiện nút biết giá trị bố mẹ Bước 3: Sử dụng giá trị xác suất từ bảng xác suất điều kiện để tính http://www.ptit.edu.vn Suy diễn cách lấy mẫu Trong trường hợp tổng quát: suy diễn mạng Bayes NP-đầy đủ (rất phức tạp) Có thể suy diễn xấp xỉ cách lấy mẫu Sinh giá trị biến có xác suất đồng thời mạng 38 http://www.ptit.edu.vn Lấy mẫu (1/2) 𝑃(𝑠) = 0.3 𝑃(𝐿𝑀 ∧ 𝑆) = 0.05 𝑃(𝐿𝑀 ∧ ¬𝑆) = 0.1 𝑃(𝐿¬𝑀 ∧ 𝑆) = 0.1 𝑃(𝐿¬𝑀 ∧ ¬𝑆) = 0.2 𝑃(𝑀) = 0.6 𝑃 𝑅𝑀 = 0.3 𝑃(𝑅¬𝑀) = 0.6 L 𝑃 𝑇𝐿 = 0.3 𝑃(𝑇¬𝐿) = 0.8 R T Chọn ngẫu nhiên 𝑆: 𝑆 = 𝑡𝑟𝑢𝑒 với xác suất 0.3 Chọn ngẫu nhiên 𝑀: 𝑀 = 𝑡𝑟𝑢𝑒 với xác suất 0.6 Chọn ngẫu nhiên 𝐿: xác suất 𝐿 = 𝑡𝑟𝑢𝑒 phụ thuộc vào giá trị 𝑆, 𝑀 o M S Giả sử bước sinh 𝑀 = 𝑡𝑟𝑢𝑒, 𝑆 = 𝑓𝑎𝑙𝑠𝑒 , 𝐿 = 𝑡𝑟𝑢𝑒 với xác suất 0.1 Chọn ngẫu nhiên 𝑅 với xác suất phụ thuộc giá trị 𝑀 Chọn ngẫu nhiên 𝑇 với xác suất phụ thuộc giá trị 𝐿 39 http://www.ptit.edu.vn Lấy mẫu (2/2) Giả sử cần tính: 𝑃(𝑅 = 𝑇𝑟𝑢𝑒𝑇 = 𝑇𝑟𝑢𝑒, 𝑆 = 𝐹𝑎𝑙𝑠𝑒) Lấy mẫu nhiều lần theo cách trên, giá trị sinh gọi mẫu Tính số lần xẩy kiện sau: o 𝑁𝑐: số mẫu có 𝑇 = 𝑇𝑟𝑢𝑒 𝑆 = 𝐹𝑎𝑙𝑠𝑒 o 𝑁𝑠: số mẫu có 𝑅 = 𝑇𝑟𝑢𝑒, 𝑇 = 𝑇𝑟𝑢𝑒 𝑆 = 𝐹𝑎𝑙𝑠𝑒 o 𝑁: tổng số mẫu Nếu 𝑁 đủ lớn: o 𝑁𝑐/𝑁: (xấp xỉ) xác suất 𝑃(𝑇 = 𝑇𝑟𝑢𝑒 𝑎𝑛𝑑 𝑆 = 𝐹𝑎𝑙𝑠𝑒) o 𝑁𝑠/𝑁: (xấp xỉ) xác suất 𝑃(𝑅 = 𝑇𝑟𝑢𝑒 , 𝑇 = 𝑇𝑟𝑢𝑒 , 𝑆 = 𝐹𝑎𝑙𝑠𝑒 ) o 𝑃(𝑅|𝑇, ¬𝑆) = 𝑃(𝑅, 𝑇, ¬𝑆)/𝑃(𝑇, ¬𝑆) 𝑁𝑠/𝑁𝑐 40 http://www.ptit.edu.vn Lấy mẫu tổng quát Cần tính 𝑃(𝐸1 |𝐸2 ) Lấy mẫu số lượng đủ lớn Tính số lượng: o o o 𝑁𝑐: số mẫu có 𝐸2 𝑁𝑠: số mẫu có 𝐸1 𝐸2 𝑁: Tổng số mẫu Nếu 𝑁 đủ lớn, ta có: 𝑃 𝐸1 𝐸2 = 41 𝑁𝑠 𝑁𝑐 http://www.ptit.edu.vn Bài tập Làm số tập giáo trình 42 http://www.ptit.edu.vn ... Định nghĩa cách xây dựng mạng Bayes Suy diễn với mạng Bayes 22 http://www.ptit.edu.vn Những nội dung học (nhắc lại) Cách xây dựng mạng bayes (bằng tay) Mạng bayes cho phép rút gọn việc... http://www.ptit.edu.vn Tính độc lập xác suất mạng Bayes Mạng Bayes cho phép biểu diễn ngắn gọn toàn xác suất đồng thời o Việc rút gọn nhờ sử dụng tính độc lập xác suất mạng Độc lập xác suất o o Mỗi nút...Nội dung Định nghĩa cách xây dựng mạng Bayes Suy diễn với mạng Bayes http://www.ptit.edu.vn Vấn đề biểu diễn xác suất Bài toán suy diễn: o o Cho chứng