480 likes | 753 Views
Các hệ thống thông minh Intelligence systems. Chương 3. Các suy diễn, giải thích và độ không chắc chắn. Chuyên ngành Các hệ thống thông tin và tri thức Hồ Cẩm Hà-khoa CNTT-ĐHSP HN- 2012. 1. Suy luận trong trí tuệ nhân tạo.
E N D
Cáchệthốngthông minhIntelligence systems Chương 3. Các suy diễn, giải thích và độ không chắc chắn Chuyên ngành Các hệ thống thông tin và tri thức Hồ Cẩm Hà-khoa CNTT-ĐHSP HN- 2012 1
Suy luận trong trí tuệ nhân tạo Con người làm việc với tri thức, sự kiện và các chiến lược giải bài toán để rút ra kết luận- quá trình suy lý Trong các hệ thống thông minh, việc suy lý thể hiện ở kỹ thuật suy diễn và các chiến lược điều khiển Các kỹ thuật suy diễn: hướng dẫn hệ thống tổng hợp tri thức từ các tri thức đã có trong CSTT và từ sự kiện ghi lại ở bộ nhớ. Các chiến lược điều khiển: thiết lập đích cần đến và hướng dẫn hệ thống suy lý
theo cách suy diễn (modus ponens) quy nạp giả định tương tự, loại suy theo lẽ thường không đơn điệu Suy lý
Suy diễn với các luật Chuỗi suy diễn tiến Chuỗi suy diễn lùi • Thế nào là suy diễn tiến (lùi) • Điểm khác nhau cơ bản • Ưu, nhược điểm mỗi kiểu • Khi nào nên dùng tiến (lùi) • Cài đặt thế nào?
Suy diễn tiến (forward chaining) Quá trình lập luận suy ra sự kiện mới từ các sự kiện trong bộ nhớ làm việc, sử dụng modus ponens tổng quát (không định hướngtới giải quyết một vấn đề nào cả) gọi là lập luận điều khiển bởi dữ liệu Có thể coi là quá trình tìm kiếm từ sự kiện (fact) đến mục tiêu (goal)
Suy diễn lùi (backward chaining) Quá trình lập luận nhằm chứng minh (hay bác bỏ một giả thuyết (tìm ra các câu trả lời cho một câu hỏi) gọi là lập luận định hướng mục đích. Có thể coi là quá trình tìm kiếm từ mục tiêu (goal) về sự kiện (fact).
Suy diễn tiến (forward chaining) Thích hợp khi: Tất cả hoặc một phần dữ liệu được cho từ đầu. Có nhiều mục tiêu, nhưng chỉ có một số ít các phép toán có thể áp dụng cho một trạng thái bài toán. Rất khó đưa ra một mục tiêu hoặc giả thuyết ngay lúc đầu.
Suy diễn lùi (backward chaining) Thích hợp khi: Có thể đưa ra mục tiêu hoặc giả thuyếtngay lúc đầu. Có nhiều phép toán có thể áp dụng trên 1 trạng thái của bài toán sự bùng nổ số lượng các trạng thái. Các dữ liệu của bài toán không được cho trước, nhưng hệ thống phải lấy được trong quá trình tìm kiếm.
Lập luật dựa trên luật(rule-based reasoning) Ưu điểm dùng được theo kiểu trực tiếp, với những tri thức kinh nghiệm có từ chuyên gia; đặc biệt quan trọng ở lĩnh vực tin cậy vào kinh nghiệm để quản trị độ khó và/hoặc thông tin không đầy đủ. các luật ánh xạ vào duyệt không gian trạng thái; các tiện ích giải thích hỗ trợ cho tìm lỗi.
Lập luật dựa trên luật(rule-based reasoning) Ưu điểm (tiếp) Sự tách biệt tri thức khỏi điều khiển làm quá trình phát triển ES đơn giản hơn. Có thể đạt được hiệu năng cao trong miền lĩnh vực được giới hạn. Có những phương tiện giải thích (khác nhau giữa 2 loại suy diễn tiến và lùi)
Lập luật dựa trên luật(rule-based reasoning) Hạn chế Các luật có được từ chuyên gia thường là tri thức kinh nghiệm, không phản ánh tri thức theo kiểu hàm hoặc tri thức dựa trên mô hình của lĩnh vực . luật heuristic có khuynh hướng “dễ vỡ”, khó khăn trong những trường hợp gặp dữ liệu không mong đợi hay thông tin không đầy đủ.
Lập luật dựa trên luật(rule-based reasoning) Hạn chế (tiếp) Chức năng giải thích chỉ có ở mức mô tả, bỏ qua giải thích mang tính lý thuyết (vì không đòi hỏi những lập luận sâu hơn). Tri thức có khuynh hướng rất phụ thuộc vào công việc (task) Tri thức lĩnh vực được hình thức hóa có khuynh hướng được cụ thể hóa trong ứng dụng của nó. Cho đến nay các ngôn ngữ biểu diễn tri thức chưa tiếp cận được với sự linh hoạt trong lập luận của con người.
Lập luật dựa trên trường hợp(case-based reasoning) Giới thiệu Giải quyết vấn đề, chuyên gia con người dùng: luật heuristic, mô hình lý thuyết, lập luận từ các ca trong lịch sử (CBR). CBR dùng CSDL (tường minh) về các lời giải đã có để giải quyết vấn đề đặt ra. VD: trong y tế, luật pháp, lập trình, khám xét phầncứng, kiến trúc đều chứa thiết kế (design) CBR đem đến một số thuận lợi cho việc xây dựng ES: thu thập tri thức có thể đơn giản hơn Các tiếp cận CB cũng cho ES tự học được từ kinh nghiệm của mình
Lập luật dựa trên trường hợp(case-based reasoning) Trước một bài toán mới, CBR: Retrieve approriate cases from memory. Modify a retrieved case so that it will apply to the current situation Apply the transforrmed case Save the solution, with a record of success or failure, for future use
Lập luật dựa trên trường hợp(case-based reasoning) Retrieve approriate cases from memory Ca tương thích: giải pháp của nó có thể áp dụng thành công cho tình huống hiện thời. Làm thế nào để chọn được ca tương thích: dùng heuristic để xác định “tương tự”, thường dựa trên một số đặc điểm chung. Các ca được chỉ mục hóa bởi các đặc tính đáng chú ý. Xác định đặc tính nổi bật rất phụ thuộc vào tình huống
Lập luật dựa trên trường hợp(case-based reasoning) Modify a retrieved case so that it will apply to the current situation Một ca sẽ đưa ra một dãy các phép toán chuyển từ trạng thái đầu về trạng thái đích. Bộ lập luận phải chuyển từ lời giải được lưu trữ thành các phép toán thích hợp cho tình huống hiện thời. Các phương pháp phân tích (chẳng hạn curve fitting)
Lập luật dựa trên trường hợp(case-based reasoning) Apply the transformed case Bước 2 ta đã biến đổi một ca lưu trữ, khi áp dụng có thể không cho một giải pháp thỏa đáng (với tình huống hiện tại) cần thay đổi giải pháp (có thể lặp lại 3 bước đầu này).
Lập luật dựa trên trường hợp(case-based reasoning) Save the solution, with a record of success or failure, for future use Việc lưu trữ một ca mới yêu cầu cập nhật cấu trúc chỉ mục hóa.Có những phương pháp quản trị những chỉ số này, trong đó có các thuật toán phân cụm và cả các kỹ thuật khác nữa trong học máy.
Lập luật dựa trên trường hợp(case-based reasoning) Nói thêm Cấu trúc dữ liệu cho các CBR có thể rất khác nhau: Relational tuples Proof tree Set of large situation-rule Khó nhất là chọn đặc tính cho việc chỉ mục hóa và truy lục lại các ca
Lập luật dựa trên trường hợp(case-based reasoning) Nói thêm Kolodner (1993): preference heuristic to help organize the storage and retrieval of cases Goal-directed preference Salient-feature preference Specify preference Frequency preference Recency preference Ease of adaptation preference
Lập luật dựa trên trường hợp(case-based reasoning) Ưu điểm Khả năng mã hóa một cách trực tiếp những tri thức mang tính lịch sử (Trong nhiều lĩnh vực các trường hợp thu thập được có thể không cần viện đến các tri thức sâu sắc của chuyên gia con người). Cho phép có shortcut trong lập luận. Nếu tìm thấy một case thích hợp đỡ mất thời gian hơn so với việc sinh ra giải pháp từ các luật hay tìm kiếm trên các mô hình Cho phép hệ thống tránh các lỗi và khai thác các thành công đã xảy ra trong quá khứ. Cung cấp một mô hình học cả những vấn đề quan tâm trong lý thuyết và thực tế đủ để ứng dụng cho vấn đề phức tạp.
Lập luật dựa trên trường hợp(case-based reasoning) Ưu điểm Cho phép mô hình đơn giản hơn (so với hệ dựa trên luật) trong thu nhận tri thức. CBR cần một cách biểu diễn thích hợp cho các ca (case), chỉ mục hóa hiệu quả cho truy xuất, chiến lược thích ứng cho các ca. Trong hệ dựa trên luật kỹ sư tri thức phải tương tác trước với các luật. Các chiến lược chỉ mục hóa thích hợp làm tăng thêm năng lực thấu hiểu và giải quyết vấn đề. Khả năng nhận biết sự khác nhau trong các bài toán đích và lựa chọn một ca thích hợp là rất quan trọng đối với CBR. Thông thường các thuật toán đánh chỉ mục cung cấp chức năng này một cách tự động.
Lập luật dựa trên trường hợp(case-based reasoning) Hạn chế Các ca thường không chứa kiến thức chuyên sâu của lĩnh vực bất lợi trong chức năng giải thích, trong nhiều tình huống không áp dụng được các ca chất lượng kém/lời khuyên sai. Vấn đề trade-off giữa số lượng các ca lưu trữ và hiệu năng hệ thống. Khó khăn trong xác định đâu là tính chất tốt dùng cho chỉ mục hóa và sánh hợp các ca.
Lập luật dựa trên mô hình (model-based reasoning) Ưu điểm khả năng dùng tri thức có cấu trúc của lĩnh vực tăng khả năng cho người suy luận để dùng được những điều mà người thiết kế hệ thống không lường trước được. hướng đến những giải pháp kỹ lưỡng (hoàn hảo) và linh hoạt
Lập luật dựa trên mô hình (model-based reasoning) Ưu điểm Có tri thức chuyển đổi được giữa các công việc (task). Thường sử dụng tri thức khoa học và lý thuyết. Thường cung cấp lý giải hiểu sâu hơn những sai lầm ta mắc phải đóng vai trò gia sư (tutor) rất tốt
Lập luật dựa trên mô hình (model-based reasoning) Hạn chế Thiếu kinh nghiệm đặc tả tri thức của lĩnh vực. Các phương pháp heuristic được sử dụng trong cách tiếp cận dùng luật phản ánh lớp kiến thức chuyên gia đáng giá. Yêu cầu một mô hình (lĩnh vực) tường minh. Trong khi nhiều lĩnh vực thiếu lý thuyết khoa học phát biểu tốt và rõ ràng cho vấn đề đặt ra. Độ phức tạp lớn (do thường vận hành ở mức chi tiết) Những tình huống ngoại lệ
Thiết kế hệ lai (Hybrid Design) combination rule-based and case-based: check against before undertaking rule-based reasoning provide a record of examples and exceptions to solutions through retention in the case base can avoid duplicating costly search
Thiết kế hệ lai (Hybrid Design) combination rule-based and model-based: enhance explanations with functional knowledge Improve robustness when rule fail add heuristic search to model-based search manage the complexity of MBR and allow to choose intelligently between possible alternatives
Thiết kế hệ lai (Hybrid Design) combination model-based and case-based: give more mature explanations to the situations recorded in cases check against stored cases before beginning the more extensive search required by MBR provide a record of examples and exceptions in a case base that can use to guide model-based inference Record results of model-based inference for future use
Thiết kế hệ lai (Hybrid Design) is not a simple matter problem: determining which reasoning method to apply in a given situation deciding when to change reasoning methods resolving differences between reasoning methods Designing representations that allow knowledge to be shared.
Suy diễn với tính không chắc chắn Cách tiếp cận thống kê (xác suất) CF hệ số chắc chắn Stanford Lý thuyết Bayes Cách tiếp cận lý thuyết khả năng Fuzzy
Suy diễn với tính không chắc chắn The Stanford Certainty Factor Algebra MB(H/E) độ đo sự tin cậy của giả thuyết khi có chứng cớ E MD(H/E) đô đo sự không tin cậy và giả thuyết khi có chứng cớ E 0 <MB(H/E) < 1 trong khi MD(H/E) =0 0 <MD(H/E) < 1 trong khi MB(H/E) =0 Độ đo chắc chắn: CF(H/E) = MB(H/E) – MD(H/E) Khi chuyên gia tạo ra luật suy diễn, họ phải cung cấp độ đo chắc chắn của luật Trong lập luận, ta thu được độ đo chắc chắn của chứng cớ từ đó tính được độ đo chắc chắn của kết luận (giải thuyết)
Suy diễn với tính không chắc chắn Luật đơn giản: If (e) then (c) CF(e): độ đo chắc chắn của chứng cớ e CF (r): độ đo chắc chắn của luật CF(c) : độ đo chắc chắn của kết luận được tính: CF(c) = CF(e) × CF(r)
Suy diễn với tính không chắc chắn Luật phức tạp: If (e1 AND e2) then (c) CF(e1 AND e2) = MIN (CF(e1), CF(e2)) If (e1 OR e2) then (c) CF(e1 OR e2) = MAX (CF(e1), CF(e2)) If ((e1 AND e2) OR e3) then (c) CF((e1 AND e2) OR e3) = MAX (MIN(CF(e1), CF(e2)), CF(e3)) CF(NOT e) = - CF(e)
Suy diễn với tính không chắc chắn Kết hợp nhiều luật có cùng kết luận: r1: If (e1) then (c) r2: If (e2) then (c) VớiCF(e1), CF(e2), CF(r1), CF(r2) CF(ct1), CF(ct2)- của kết luận của luật r1 và luật r2 CF(ct1) và CF(ct2) đều dương: CFtổng = CF(ct1) + CF(ct2) – CF(ct1)CF(ct2) CF(ct1) và CF(ct2) đều âm: CFtổng = CF(ct1) + CF(ct2) + CF(ct1)CF(ct2) CF(ct1) và CF(ct2) trái dấu: CFtổng = (CF(ct1) + CF(ct2))/(1- MIN(ABS(CF(ct1)),ABS(CF(ct2))))
Suy diễn với tính không chắc chắn Lý thuyết xác suất Bayes Xét luật có cấu trúc IF E THEN H. Định lý Bayes được dùng để cung cấp xác suất về giả thuyết H khi có sự kiện E. Cũng có thể dùng định lý này để kiểm soát các câu suy diễn có dạng IF X THEN E ⇒ IF E THEN Y
Suy diễn với tính không chắc chắn Lý thuyết xác suất Bayes còn được dùng ở dạng phủ định H và tính được tỉ lệ giữa khả năng ủng hộ giải thuyết H và khả năng phủ định giả thuyết H khi có sự kiện E:
Suy diễn với tính không chắc chắn Lý thuyết xác suất Bayes Ví dụ: Bằng chứng (triệu chứng): bệnh nhân bị khó thở Giả thuyết (bệnh): bệnh nhân bị đau tim Giả sử: P(đau tim) = 0.001; P(khó thở) = 0.002 và các chuyên gia cho biết P(khó thở |đau tim) = 0.6 Ta tính được:
Suy diễn với tính không chắc chắn Lý thuyết xác suất Bayes, chú ý: Cần biết tất cả những xác suất về các quan hệ giữa bằng chứng với những giả thuyết khác nhau cũng như những quan hệ xác suất giữa các bằng chứng. Nhiều khi rất khó xác định tất cả những quan hệ giữa bằng chứng và giả thuyết. Việc tính P(E) yêu cầu tập các giả thuyết hi phải độc lập với tập bằng chứng E. Trên thực tế, tránh những khó khăn trên, người ta có thể sử dụng Bayes-đơn giản (naïve Bayes)
Suy diễn với tính không chắc chắn Lý thuyết fuzzy: Một quan hệ mờ R giữa hai tập tham chiếu X và Y là một tập con mờ của X ᵡ Y với hàm thuộc μR Ví dụ: Giả sử X = {1, 2} và Y = {a, b, c}; R tương ứng với ma trận sau R là quan hệ mờ giữa X và Y như sau: R = {((1,a),0.5), ((1,b),1.0), ((1,c),0), (2,a),0.3), ((2,b),0.75), ((2,c),0.8)}
Suy diễn với tính không chắc chắn Lý thuyết fuzzy: Hợp thành của hai quan hệ mờ R1 trên X ᵡ Y và R2 trên Y ᵡ Z xác định một quan hệ mờ R= R1ᵒ R2 trên X ᵡ Z có hàm thuộc được định nghĩa bởi : (x,z)X ᵡ Z, μR(x,z) = maxy Y min(μR1((x,y), μR2((y,z)) Định nghĩa này tương ứng với hợp thành max-min, được dùng phổ biến. Tuy nhiên có thể thay toán tử min bằng một toán tử T khác, chẳng hạn một tích để có hợp thành max-T.
Suy diễn với tính không chắc chắn Lý thuyết fuzzy: Khi đó hợp thành max-min của R1 và R2 là quan hệ mờ R:
Suy diễn với tính không chắc chắn Lý thuyết fuzzy: Các phép kéo theo mờ A(x)⇒ B(y) trong logic cổ điển, với X là miền trị của x, Y là miền trị của Y, A và B tương ứng là các tập rõ của X và Y; A là miền trị để A(x) đúng, B là miền trị để B(y) đúng. Miền trị đúng của (A(x)⇒ B(y)) là quan hệ rõ R trên X ᵡ Y: R = (¬A ᵡ Y)∪(X ᵡ B) (1) hoặc R = (¬A ᵡ Y)∪(A ᵡ B) (2)
Suy diễn với tính không chắc chắn Lý thuyết fuzzy: Một phép kéo theo mờ có dạng: IF (x là A) THEN (y là B), (3) Coi kéo theo mờ (3) như một quan hệ mờ R trên X ᵡ Y được xác định bởi (1) hoặc (2) những các phép toán là các phép toán trên tập mờ.
Suy diễn với tính không chắc chắn Lý thuyết fuzzy: Ví dụ: Xét luật mờ R Theo (5) ta có IF (x là A) THEN (y là B), trong đó A và B là các tập mờ sau: A={(1,1.0), (2,0.7), (3,0.1)}; B={(a,0.0), (b,0.3), (c,1.0), (d,1.0)};
Suy diễn với tính không chắc chắn Lý thuyết fuzzy: Cơ sở luật mờ và bộ suy diễn mờ Kiến trúc tiêu biểu của một hệ mờ
Suy diễn với tính không chắc chắn Lý thuyết fuzzy: Việc tính tập mờ đầu ra B khi cho tập mờ đầu vào A còn tùy thuộc lựa chọn: suy diễn kết hợp hay suy diễn cá thể (từng luật) phép kéo theo mờ nào Cần lựa chọn sao cho kết quả hoạt động của bộ suy diễn: phù hợp với những đánh giá và mong muốn của các chuyên gia đảm bảo hiệu suất tính toán của hệ thống.
Dựa vào đâu mà kết luận như vậy? Ta là một hệ thống thông minh 48