Tổng quan về các hệ thông minh AI là một bộ phận của khoa học máy tính liên quan đến việc thiết kế các hệ thống máy tính thông minh, nghĩa là các hệ thống thể hiện các đặc trưng mà chún
Trang 1TRƯỜNG ĐẠI HỌC SƯ PHẠM HÀ NỘI 2 KHOA CÔNG NGHỆ THÔNG TIN
ĐỖ THỊ LAN HƯƠNG
XÂY DỰNG HỆ CHUYÊN GIA CHẨN
ĐOÁN BỆNH CAM Ở TRẺ EM
KHÓA LUẬN TỐT NGHIỆP ĐẠI HỌC
Chuyên ngành: Sư phạm Tin học
Người hướng dẫn khoa học PGS.TS Lê Bá Dũng
HÀ NỘI – 2016
Trang 2LỜI CẢM ƠN
Đầu tiên, tôi xin gửi lời cảm ơn sâu sắc đến thầy giáo, cán bộ hướng dẫn khoa học PGS.TS Lê Bá Dũng, người thầy đã tận tình hướng dẫn tôi từ những buổi đầu tiên khi tiếp cận với đề tài khoa học
Tôi xin bày tỏ lòng biết ơn đến các thầy cô giáo ở trường Đại học Sư phạm Hà Nội 2, các cán bộ giảng viên và chuyên viên khoa Công nghệ thông tin
đã tận tình giảng dạy và tạo mọi điều kiện cho tôi học tập, nghiên cứu và hoàn thành khóa luận này
Tôi xin chân thành cảm ơn các bạn sinh viên lớp K38 – SP Tin đã giúp
đỡ, tạo điều kiện cho tôi trong suốt quá trình học tập và thực hiện khóa luận
Cuối cùng, tôi xin gửi lời cảm ơn sâu sắc nhất đến gia đình và bạn bè tôi, những người đã động viên, tạo mọi điều kiện cho tôi lao động và học tập trong suốt thời gian qua
Một lần nữa, tôi xin chân thành cảm ơn!
Hà Nội, ngày 04 tháng 5 năm 2016
Sinh viên thực hiện
Đỗ Thị Lan Hương
Trang 3LỜI CAM ĐOAN
Tôi xin cam đoan khóa luận là công trình nghiên cứu của riêng cá nhân tôi, không sao chép của ai Khóa luận là do tôi tự nghiên cứu, đọc, dịch tài liệu, tổng hợp và thực hiện Nội dung lý thuyết trong khóa luận có sử dụng một số tài liệu tham khảo như đã trình bày trong phần tài liệu tham khảo Chương trình phần mềm và những kết quả trong khóa luận là trung thực và chưa được công bố trong bất kỳ một công trình nào khác
Hà Nội, ngày 04 tháng 5 năm 2016
Sinh viên thực hiện
Đỗ Thị Lan Hương
Trang 4MỤC LỤC
MỞ ĐẦU 1
CHƯƠNG 1: TỔNG QUAN TRÍ TUỆ NHÂN TẠO 4
1.1 Tổng quan về các hệ thông minh 4
1.1.1 Hệ chuyên gia 4
1.1.1.1 Khái niệm 4
1.1.1.2 Xây dựng hệ chuyên gia 4
1.1.2 Hệ hỗ trợ ra quyết định 5
1.1.2.1 Khái niệm 5
1.1.2.2 Các thành phần của hệ thống hỗ trợ ra quyết định 5
1.1.3 Hệ điều khiển thông minh 6
1.1.4 Hệ học 6
1.1.4.1 Khái niệm 6
1.1.4.2 Học giám sát 7
1.1.4.3 Học không giám sát 8
1.2 Chứng minh và suy diễn tự động 8
1.2.1 Suy diễn dựa trên bảng giá trị chân lý 8
1.2.2 Suy diễn tiến, lùi dựa trên các câu Horn 9
1.3 Phân tích đánh giá một số hệ xử lý thông minh 10
1.3.1 Lập luật dựa trên luật 10
1.3.2 Lập luật dựa trên mô hình 11
1.4 Kết luận chương 12
CHƯƠNG 2: HỆ CHUYÊN GIA 13
2.1 Hệ chuyên gia là gì? 13
2.1.1 Khái niệm: 13
2.1.2 Những thành phần cơ bản của hệ chuyên gia 14
2.2 Cấu trúc của hệ chuyên gia 15
2.2.1 Cấu trúc kiểu mẫu của hệ chuyên gia 15
Trang 52.2.1.1 Một số mô hình kiến trúc hệ chuyên gia 16
2.2.2 Hệ cơ sở tri thức 18
2.2.2.1 Tri thức chuyên gia 19
2.2.2.2 Các phương pháp biểu diễn tri thức 19
2.2.2.3 Biểu diễn tri thức nhờ ngôn ngữ nhân tạo 25
2.2.3 Các chế độ làm việc của bộ nhớ 25
2.2.4 Suy diễn và lập luận 26
2.2.4.1 Phương pháp suy diễn tiến 27
2.2.4.2 Phương pháp suy diễn lùi 29
2.2.5 Giao diện người dùng 30
2.3 Phát triển hệ chuyên gia 31
2.3.1 Hệ chuyên gia được phát triển như thế nào? 31
2.3.1.1 Quản lý dự án 31
2.3.1.2 Tiếp nhận tri thức 32
2.3.1.3 Phân phối 33
2.3.1.4 Bảo trì và phát triển 33
2.4 Kết luận chương 33
CHƯƠNG 3: XÂY DỰNG HỆ CHUYÊN GIA CHẨN ĐOÁN BỆNH CAM 35
3.1 Khảo sát hệ thống 35
3.1.1 Chứng cam là gì? 35
3.1.2 Các biểu hiện lâm sàng thông qua các biểu hiện trên cơ thể của trẻ 35
3.1.2.1 Gọi tên chứng cam theo bộ vị 35
3.1.2.2 Gọi tên chứng cam theo tạng 36
3.1.3 Các biểu hiện khác 38
3.1.4 Các phương pháp chẩn đoán 38
3.1.4.1 Vọng chẩn (Nhìn, quan sát) 38
3.1.4.2 Văn chẩn (Nghe, ngửi) 39
3.1.4.3 Vấn chẩn (Hỏi bệnh) 39
Trang 63.1.4.4 Thiết chẩn (Xét đoán bộ mạch) 40
3.1.5 Nguyên nhân và các phương pháp điều trị 40
3.1.5.1 Nguyên nhân 40
3.1.5.2 Các phương pháp điều trị 41
3.2 Phân tích và thiết kế hệ thống 35
3.2.1 Biểu diễn tri thức của một số triệu chứng chứng cam của trẻ em 41
3.2.1.1 Đầu vào của bài toán chẩn đoán chứng cam 41
3.2.2 Xây dựng các động cơ suy diễn cho các chứng cam 44
3.2.2.1 Triệu chứng “Ăn ít” – Chủ trị Tỳ cam và Can cam 47
3.2.2.2 Triệu chứng “Đêm ngủ giật mình hay khóc” – Chủ trị Tâm cam 48
3.2.2.3 Triệu chứng “ Hay đái dầm” – Chủ trị Thận cam 49
3.2.2.4 Triệu chứng “Ho” – Chủ trị Phế cam 50
3.3 Giao diện và kết quả kiểm thử của chương trình 51
3.4 Kết luận chương 53
KẾT LUẬN 54
TÀI LIỆU THAM KHẢO 55
Trang 7DANH MỤC BẢNG BIỂU
Bảng 2.1: Bảng minh họa vị từ 23 Bảng 2.2: Biểu diễn tri thức ngôn ngữ nhân tạo trong MYCIN 25
Trang 8DANH MỤC HÌNH ẢNH
Hình 2.1: Thành phần cơ bản của hệ chuyên gia 14
Hình 2.2: Cấu trúc của một hệ chuyên gia 15
Hình 2.3: Mô hình J.L.Ermine 17
Hình 2.4: Mô hình C Ernest 17
Hình 2.5: Mô hình E.V.Popov 18
Hình 2.6: Biểu diễn tri thức nhờ mạng ngữ nghĩa 24
Hình 2.7: Nền tảng của công nghệ hệ chuyên gia dựa trên luật hiện đại 27
Hình 3.1: Mô hình quan hệ giữa các tri thức 42
Hình 3.2: Cây nhị phân chứng cam theo triệu chứng “Ăn ít” 47
Hình 3.3: Cây nhị phân chứng cam theo triệu chứng “Đêm ngủ giật mình” 48
Hình 3.4: Cây nhị phân chứng cam theo triệu chứng “Đái dầm” 49
Hình 3.5: Cây nhị phân chứng cam theo triệu chứng “Ho” 50
Hình 3.6: Giao diện chính của chương trình 51
Hình 3.7: Form thêm mới cơ sở tri thức 52
Hình 3.8: Form thêm biểu hiện 52
Hình 3.9: Form quản lý bệnh nhân 53
Trang 9DANH MỤC TỪ VIẾT TẮT
Trang 10Với sự phát triển của khoa học máy tính ngày nay, con người không chỉ đòi hỏi máy tính chỉ làm công việc lưu trữ các thông tin, mà con người còn muốn có một hệ xử lý thông tin có khả năng suy luận để rút ra những kết luận từ những dữ liệu đã có sẵn Hệ thống này được gọi là “hệ chuyên gia”, hệ thống đang ngày càng được ứng dụng rộng rãi trên toàn thế giới
Xã hội con người ngày càng phát triển, y học cũng ngày càng phát triển, kiến thức y khoa là một khối kiến thức khổng lồ mà khó ai có thể hoàn toàn nắm vững Bên cạnh nhu cầu khám chữa bệnh ngày một tăng cao của con người, tuy nhiên thì số lượng bác sĩ y tá có kinh nghiệm chuyên môn còn thiếu hụt rất nhiều
so với con số cần thiết hiện nay, nhất là bác sĩ khám chữa bệnh riêng cho trẻ em Xuất phát từ thực tế này, việc xây dựng một hệ chuyên gia có đầy đủ các kiến thức chuyên môn và có khả năng hỗ trợ khám chữa bệnh dựa trên những kiến thức tổng hợp từ kinh nghiệm chuyên môn của các y bác sĩ là hoàn toàn cần thiết Hệ thống có thể hỗ trợ các y bác sĩ trong việc chữa bệnh nhanh chóng, chính xác, đáp ứng tốt nhu cầu khám chữa bệnh ngày nay
Vì vậy đề tài tập trung xây dựng hệ chuyên gia về Y khoa: “Xây dựng hệ
chuyên gia chẩn đoán bệnh cam ở trẻ em”, bước đầu xây dựng hệ hỗ trợ chẩn
đoán đáp ứng nhu cầu khám chữa bệnh cho trẻ em
Trang 112
2 Mục đích nghiên cứu
Đề tài được thực hiện nhằm mục đích xây dựng một hệ chuyên gia hỗ trợ chẩn đoán bệnh cam ở trẻ em và chứa đựng một số lượng kiến thức cần thiết cho việc chẩn đoán
Hệ thống có chức năng hỗ trợ hỏi đáp các triệu chứng lâm sàng của người bệnh và cho ra kết quả chẩn đoán cuối cùng về bệnh mà người bệnh có thể đang gặp đồng thời đưa ra các phương pháp điều trị cho căn bệnh đó
3 Nhiệm vụ nghiên cứu
- Làm rõ khái niệm hệ chuyên gia và những vấn đề có liên quan
- Từ các kiến thức thu thập được, xây dựng chương trình chẩn đoán bệnh đơn giản và thân thiện với người sử dụng
4 Đối tượng và phạm vi nghiên cứu
- Nghiên cứu về hệ chuyên gia để xây dựng cơ sở tri thức về các biểu hiện của “bệnh cam” ở trẻ em
- Nghiên cứu các phương pháp chuẩn đoán “bệnh cam” ở trẻ em
5 Ý nghĩa khoa học và thực tiễn của đề tài
- Ý nghĩa khoa học:
Thêm vào danh sách các ứng dụng hệ chuyên gia một hệ thống mới
Đưa được một giải pháp và thực thi cho việc xây dựng cơ sở tri thức chẩn đoán bệnh cam ở trẻ em
- Ý nghĩa thực tiễn:
Hỗ trợ cho người dân trong việc tìm ra bệnh của trẻ em, để từ đó tìm
ra được các phương pháp chữa trị nhanh chóng và hợp lý
Hỗ trợ cho các y bác sĩ trong việc chữa bệnh nhanh chóng, chính xác,
đáp ứng tốt nhu cầu khám chữa bệnh ngày nay
6 Phương pháp nghiên cứu
- Nghiên cứu lý luận: tập trung nghiên cứu các vấn đề cơ bản về mô hình
hệ chuyên gia, phương pháp biểu diễn tri thức hệ chuyên gia
Trang 123
- Nghiên cứu thực tiễn: thu thập các tài liệu liên quan đến tri thức về bệnh cam trẻ em, cách biểu diễn tri thức trong hệ chuyên gia,…
7 Cấu trúc khóa luận
Khóa luận gồm có 3 chương:
- Chương 1: Trình bày về những kiến thức về trí tuệ nhân tạo
- Chương 2: Trình bày về khái niệm và những vấn đề liên quan đến hệ chuyên gia
- Chương 3: Dựa trên cơ sở lý thuyết, xây dựng hệ chuyên gia chẩn đoán chứng bệnh cam
Trang 134
CHƯƠNG 1: TỔNG QUAN TRÍ TUỆ NHÂN TẠO 1.1 Tổng quan về các hệ thông minh
AI là một bộ phận của khoa học máy tính liên quan đến việc thiết kế các
hệ thống máy tính thông minh, nghĩa là các hệ thống thể hiện các đặc trưng mà chúng ta thấy gắn với trí thông minh trong các hành vi của con người, như hiểu
ngôn ngữ, học, suy luận, giải quyết vấn đề,…
Những công cụ thuộc lĩnh vực trí tuệ nhân tạo được xem như các hệ thống thông minh nhằm giúp giải quyết rất nhiều bài toán mà trước đây được xem là quá khó, và giúp giải quyết nhiều bài toán theo cách hiệu quả hơn
1.1.1 Hệ chuyên gia
1.1.1.1 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ề
Một chương trình ứng dụng được xây dựng dựa trên CSTT và mô tơ suy diễn (MTSD) Trong đó CSTT được lấy từ nguồn tri thức Có hai loại là xin ý kiến từ các chuyên gia trong lĩnh vực đó, cũng có thể lấy theo cách thứ hai đó là tổng hợp từ các tài liệu chuyên môn Còn MTSD phụ thuộc vào người dùng do người dùng đưa ra
1.1.1.2 Xây dựng hệ chuyên gia
Xây dựng hệ chuyên gia dự đoán tương đương với việc đưa các tri thức
dự đoán vào trong máy tính Việc này bao gồm các bước:
Trang 145
+ Biểu diễn tri thức dự đoán vào trong máy tính
+ Sử dụng các tri thức vào trong dự đoán
Chúng ta có thể viết một chương trình máy tính bình thường với các thao tác dòng lệnh để thực hiện chức năng trên, nhưng hạn chế của một chương trình bình thường là khó thay đổi, bổ xung các tri thức mới Vì vậy ở đây sẽ xây dựng một hệ chuyên gia dự đoán trên nền tảng là một hệ cơ sở tri thức, chính xác hơn
là một cơ sở tri thức dựa vào luật
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
1.1.2 Hệ hỗ trợ ra quyết định
1.1.2.1 Khái niệm:
Vào thập niên 1970, Scott Morton đưa ra những khái niệm đầu tiên về hệ
hỗ trợ ra quyết định (Decision Support System – DSS) Ông định nghĩa DSS như
là hệ thống máy tính tương tác nhằm giúp những người sử dụng dữ liệu và mô hình để giải quyết các vấn đề không cấu trúc
1.1.2.2 Các thành phần của hệ thống hỗ trợ ra quyết định:
- Data management subsystem: 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 (data warehouse) - là kho chứa dữ liệu có liên đới đến vấn đề ra quyết định
- Model management subsystem: 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
Trang 151.1.3 Hệ điều khiển thông minh
Thuật ngữ “điều khiển thông minh” đã được giới thiệu trong khoảng hơn
ba thập niên trở lại đây với các phương pháp điều khiển có mục tiêu tham vọng hơn so với các hệ thống truyền thống Hệ thống điều khiển thông minh có thể điều khiển một cách tự chủ các hệ thống phức tạp, các quá trình sẽ được tự động quyết định về mục tiêu điều khiển phù hợp
Hệ thống này còn hoạt động được khi hệ thống có sự thay đổi về tham số hay môi trường điều khiển, thông qua quá trình học từ kinh nghiệm, tiếp thu và
tổ chức kiến thức về môi trường xung quanh và hành vi sắp tới của hệ thống
Trong một số trường hợp các kỹ thuật này đã thực sự đóng góp cho hệ thống một số khả năng thông minh, còn các trường hợp khác thì chỉ đơn thuần là phương tiện biểu diễn các luật điều khiển phi tuyến, mô hình của quá trình điều khiển hay các yếu tố bất định Trường hợp sau tuy không đóng góp một cách rõ ràng vào mức độ thông minh của hệ thống, nhưng các phương pháp trên vẫn rất hữu ích Chúng đã làm phong phú hóa lĩnh vực điều khiển thông qua các sơ đồ biểu diễn khác nhằm có được các thông tin đặc thù từ đối tượng điều khiển mà các phương pháp truyền thống không thể có được trên cơ sở của hệ phương trình
vi phân và sai phân
1.1.4 Hệ học
1.1.4.1 Khái niệm
Trong nhiều tình huống, tri thức là không có sẵn Phần lớn người lập trình không có đủ kiến thức thuộc về lĩnh vực chuyên môn của phần mềm nên
Trang 167
không biết cách mô tả các luật trong từng lĩnh vực cụ thể Do thiếu tri thức nên bài toán không được biểu diễn tường minh theo luật, sự kiện hay các quan hệ Vì vậy cần xây dựng các hệ thống học có khả năng thu nhận kiến thức từ các chuyên gia và học tập từ các ví dụ do chuyên gia cung cấp
Máy học (Machine Learning) là các hệ chương trình có khả năng thực thi công việc dựa trên kinh nghiệm, tự khám phá tri thức bằng các cấu trúc dữ liệu
và thuật giải đặc biệt Có hai tiếp cận cho hệ thống học là học từ ký hiệu và học
từ dữ liệu số Học từ ký hiệu bao gồm việc hình thức hóa, sửa chữa các luật tường minh, sự kiện và các quan hệ Học từ dữ liệu số áp dụng cho các hệ thống
sử dụng các mô hình có liên quan đến các kỹ thuật tối ưu các tham số Các hệ học có ưu điểm:
- Xử lý dữ liệu với khối lượng lớn
- Hỗ trợ các kỹ thuật phân tích, xử lý, trích chọn và chi tiết hóa dữ liệu Các hệ học có hai giai đoạn cơ bản: học dữ liệu và xử lý dữ liệu Học dữ liệu là quá trình phân tích và tìm ra những điểm tương đồng trong dữ liệu để sản sinh luật Giai đoạn xử lý ước lượng đặc tính dữ liệu mới dựa trên luật đã được phát sinh ở giai đoạn học Có thể chia các quá trình học thành hai dạng chính: học có giám sát (suppervised learning) và học không giám sát (unsuppervised learning)
Trang 178
Thuật toán học sẽ tìm kiếm trên không gian giả thuyết giải pháp tốt nhất cho ánh xạ f với c = f(x) Kết quả tìm được phản ánh đặc trưng của mẫu dữ liệu Các thuật toán học tìm cách phát sinh một tập giả thuyết bằng cách tìm ra các đặc trưng và giá trị tương ứng với mẫu dữ liệu của mỗi lớp Sau đó áp dụng các tập giả thuyết tìm được để phân loại (classification) các mẫu dữ liệu mới vào các lớp tương ứng
1.1.4.3 Học không giám sát
Thay vì có mục tiêu tường minh, hệ tìm kiếm quy luật hình thành các mẫu và khám phá mối quan hệ của dữ liệu Các bài toán gom cụm dữ liệu (clustering) đều thuộc dạng này Trong mô hình học có giám sát, số các lớp là biết trước Ngược lại, trong mô hình học không giám sát, mẫu học chưa được gán nhãn nên nói chung, số lớp chưa biết trước Các hệ học loại này có khả năng
tự giám sát quá trình hình thành và phát sinh của các lớp Công tác gán nhãn được thực hiện tự động một cách hệ thống và phân biệt với các lớp khác
1.2 Chứng minh và suy diễn tự động
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 Kỹ thuật suy diễn là các bước 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ý
1.2.1 Suy diễn dựa trên bảng giá trị chân lý
Xây dựng các giải thuật cài đặt cho máy tính để nó biết lập luận Giải thuật lập luận tự động là giải thuật chỉ ra rằng nếu KB (cơ sở tri thức) là đúng thì câu truy vấn q có đúng hay không?
Trang 189
Phương pháp lập luận đầu tiên là dựa liệt kê các tất cả các trường hợp có thể có của tập các ký hiệu mệnh đề, rồi kiểm tra xem liệu tất cả các trường hợp làm cho KB đúng xem q có đúng không
Thuật giải trên là sinh ra toàn bộ bảng giá trị chân lý để đánh giá KB và
q, nếu chỉ cần một trường hợp KB đúng mà q sai thì q sẽ kết luận KB không suy diễn được ra q
Giải thuật trên có độ phức tạp thời gian là 2n
* m, với n là số ký hiệu có trong KB, q và m độ dài câu trong KB.[3]
1.2.2 Suy diễn tiến, lùi dựa trên các câu Horn
- 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ướng tớ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) [3]
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)
+ 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
Trang 1910
+ Có thể coi là quá trình tìm kiếm từ mục tiêu (goal) về sự kiện (fact)
[3]
Thích hợp khi:
+ Có thể đưa ra mục tiêu hoặc giả thuyết ngay 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
1.3 Phân tích đánh giá một số hệ xử lý thông minh
1.3.1 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à duyệt không gian trạng thái, các tiện ích giải thích
Trang 20+ 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
1.3.2 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
+ 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
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á
Trang 21Chương 1 tìm hiểu tổng quan về một số hệ thông minh Vai trò của các
hệ thông minh trong các lĩnh vực của đời sống và những ứng dụng của các hệ thông minh đó Ngoài ra còn tìm hiểu cách thức suy diễn của từng hệ thông minh
Tìm hiểu các đặc trưng của từng hệ thông minh ưu và nhược điểm của từng hệ thông minh, phân tích và đánh giá các hệ thông minh
Trang 22Hệ chuyên gia là một hệ thống tin học có thể mô phỏng (emulates) năng lực quyết đoán (decision) và hành động (making abilily) của một chuyên gia (con người) Hệ chuyên gia là một trong những lĩnh vực ứng dụng của trí tuệ nhân tạo (Artificial Intelligence)
Hệ chuyên gia sử dụng các tri thức của những chuyên gia để giải quyết
các vấn đề (bài toán) khác nhau thuộc mọi lĩnh vực
Tri thức (knowledge) trong hệ chuyên gia phản ánh sự tinh thông được
tích tụ từ sách vở, tạp chí, từ các chuyên gia hay các nhà bác học Các thuật ngữ
hệ chuyên gia, hệ thống dựa trên tri thức (knowledge based system) hay hệ
chuyên gia dựa trên tri thức (knowledge based expert system) thường có cùng
nghĩa Một hệ chuyên gia gồm ba thành phần chính là cơ sở tri thức (knowledge base), máy suy diễn hay môtơ suy diễn (inference engine), và hệ thống giao tiếp
với người sử dụng (user interface) Cơ sở tri thức chứa các tri thức để từ đó máy
suy diễn tạo ra câu trả lời cho người sử dụng qua hệ thống giao tiếp
Người sử dụng (user) cung cấp sự kiện (facts) là những gì đã biết, đã có
thật hay những thông tin có ích cho hệ chuyên gia, và nhận được những câu trả lời là những lời khuyên hay những gợi ý đúng đắn (expertise)
Mỗi hệ chuyên gia chỉ đặc trưng cho một lĩnh vực vấn đề (problem
Trang 2314
domain) nào đó, như y học, tài chính, khoa học hay công nghệ, v.v , mà không
phải cho bất cứ một lĩnh vực vấn đề nào
Tri thức chuyên gia để giải quyết một vấn đề đặc trưng được gọi là lĩnh
vực tri thức (knowledge domain) [2]
Ví dụ: Hệ chuyên gia về lĩnh vực y học để phát hiện các căn bệnh lây
nhiễm sẽ có nhiều tri thức về một số triệu chứng lây bệnh, lĩnh vực tri thức y học
bao gồm các căn bệnh, triệu chứng và cách chữa trị
2.1.2 Những thành phần cơ bản của hệ chuyên gia
Hình 2.1 Thành phần cơ bản của hệ chuyên gia
Cơ sở tri thức (knowledge base): Gồm các phần tử (hay đơn vị) tri
thức, thông thường được gọi là luật (rule), được tổ chức như một cơ sở dữ liệu
Máy duy diễn (inference engine): Công cụ (chương trình, hay bộ xử
lý) tạo ra sự suy luận bằng cách quyết định xem những luật nào sẽ làm thỏa mãn các sự kiện, các đối tượng, chọn ưu tiên các luật thỏa mãn, thực hiện các luật có tính ưu tiên cao nhất
Người sử
dụng
(User)
Hệ thống giao tiếp (User Interface)
Cơ sở tri thức (Knowled Base)
Máy suy diễn (Inference Engine)
Trang 2415
Giao diện người sử dụng (user interface): Là nơi người sử dụng và
hệ chuyên gia trao đổi với nhau
Người sử dụng (User): Người sử dụng đầu cuối.[2]
2.2 Cấu trúc của hệ chuyên gia
2.2.1 Cấu trúc kiểu mẫu của hệ chuyên gia
Hình 2.2 Cấu trúc của hệ chuyên gia
Giao diện người, máy: Thực hiện giao tiếp giữa hệ chuyên gia và người sử dụng Nhận những thông tin từ người dùng (các câu hỏi, các yêu cầu về lĩnh vực) và đưa ra lời khuyên, các câu trả lời, các giải thích về lĩnh vực đó
Bộ giải thích: Giải thích các hoạt động của hệ khi có yêu cầu của
Bộ thu nạp
tri thức
Giaodiện Người máy
Bộ giải thích
sử dụng
Trang 2516
người sử dụng
Bộ thu nạp tri thức: Làm nhiệm vụ thu nhận tri thức từ chuyên gia con người, từ kỹ sư tri thức, người sử dụng thông qua các câu hỏi và yêu cầu của họ sau đó lưu trữ vào cơ sở tri thức
Cơ sở tri thức: Lưu trữ, biểu diễn các tri thức trong lĩnh vực mà hệ đảm nhận, làm cơ sở cho các hoạt động của hệ, cơ sở tri thức gồm các sự kiện và luật
Mô tơ suy diễn: Làm nhiệm vụ xử lý và điều khiển các tri thức được biểu diễn trong cơ sở tri thức nhằm đáp ứng các câu hỏi, các yêu cầu của người
sử dụng.[4]
Để thực hiện được các công việc của các thành phần trong cấu trúc hệ chuyên gia phải có một hệ điều khiển quản lý việc tạo lập, tích lũy tri thức cho lĩnh vực hệ đảm nhận gọi là “hệ quản trị cơ sở tri thức” Hệ quản trị cơ sở tri thức thực chất là quản lý điều khiển công việc của bộ thu nạp tri thức, bộ giải thích, mô tơ suy diễn sao cho đảm bảo được các yêu cầu sau:
- Giảm dư thừa tri thức, dữ liệu
- Tính nhất quán và phi mâu thuẫn của tri thức
- Tính toàn vẹn và an toàn
- Giải quyết vấn đề cạnh tranh
- Chuyển đổi tri thức
2.2.1.1 Một số mô hình kiến trúc hệ chuyên gia
Có nhiều mô hình kiến trúc hệ chuyên gia theo các tác giả khác nhau, sau đây là một số mô hình:
Trang 26Người sử dụng yêu cầu
Dữ liệu vấn đề cần giải quyết
Tri thức mới
Tri thức
Cấu trúc Máy suy diễn
Dữ liệu
Lời giải Giải thích Theo dõi
Cơ sở Tri thức
Máy Suy diễn
Trang 2718
* Mô hình E.V.Popov
Hình 2.5 Mô hình E.V.Popov 2.2.2 Hệ cơ sở tri thức
Hệ cơ sở tri thức (CSTT) là chương trình máy tính được thiết kế để mô hình hóa khả năng giải quyết vấn đề của chuyên gia, con người
Hệ CSTT là hệ thống dựa trên tri thức, cho phép mô hình hóa các tri thức của chuyên gia, dùng tri thức này để giải quyết vấn đề phức tạp thuộc cùng lĩnh vực
Hai yếu tố quan trọng trong hệ CSTT là tri thức chuyên gia và lập luận, tương ứng với hệ thống có hai khối chính là cơ sở tri thức và động cơ suy diễn
Cơ sở tri thức: Chứa các tri thức chuyên sâu về lĩnh vực như chuyên gia
Cơ sở tri thức bao gồm: các sự kiện, các luật, các khái niệm và các quan hệ
Động cơ suy diễn: Bộ xử lý tri thức mô hình hóa theo cách lập luận của
hệ chuyên gia Động cơ hoạt động dựa trên thông tin về vấn đề đang xét, so sánh với tri thức đang lưu trong cơ sở tri thức rồi rút ra kết luận
Giao diện người
sử dụng
Bộ nhớ làm việc Diễn dịch
Khả năng giải thích
Sở hữu tri thức
Cơ sở tri thức
Chuyên
gia
Người
sử dụng
Trang 2819
2.2.2.1 Tri thức chuyên gia
Chuyên gia là người có đầy đủ kỹ năng, kiến thức sâu về một lĩnh vực
nào đó (một người có thể làm những việc mà người khác ít khả năng làm được)
Như vậy tri thức chuyên gia là một dạng tri thức đã được tổng hợp từ nhiều chuyên gia trong một lĩnh vực nào đó sau đó được tổng hợp mã hóa đưa vào một cơ sở tri thức và sử dụng máy tính để thực hiện các công việc trong một lĩnh vực hẹp ở mức tương tự như một người chuyên gia Tri thức chuyên gia chính là các hệ luật
Tri thức chuyên gia có đặc điểm nổi bật là khả năng thu thập tri thức Tri thức bao gồm tri thức về lĩnh vực và tri thức kĩ năng giải quyết vấn đề Các tri thức thu được từ chuyên gia không nhất thiết phải là các ý tưởng sáng chói hay độc đáo mà đặc biệt và sâu về lĩnh vực cụ thể
2.2.2.2 Các phương pháp biểu diễn tri thức
* Thể hiện tri thức nhờ các luật
Các sự kiện được cung cấp có ý nghĩa rất lớn đối với hoạt động của hệ chuyên gia Các sự kiện này cho phép hệ thống hiểu trạng thái hiện tại của bài toán, trong quá trình giải bài toán hệ chuyên gia cần thêm các tri thức phụ, tri thức bổ sung có quan hệ với các sự kiện đã biết từ đó làm tăng thêm hệ thống tri thức, khi sử dụng thêm tri thức chính là bổ sung thêm các luật
- Luật:
Là cấu trúc tri thức dùng để liên kết thông tin đã biết với thông tin khác, các thông tin này có thể được suy luận để hiểu biết thêm
- Cấu trúc của luật:
Kết nối một hay nhiều già thiết trong câu IF với một hay nhiều kết luận trong câu của THEN
Trang 2920
Ví dụ: IF Nhiệt độ < 80
c THEN Trẻ em được nghỉ học
Đối với hệ thống dựa trên các luật người ta thu thập tri thức trong một tập và lưu vào một cơ sở tri thức của hệ thống, hệ thống này sử dụng các luật cùng với các thông tin trong bộ nhớ để giải các bài toán
- Các dạng tri thức luật
Các luật thể hiện tri thức có thể được phân theo loại tri thức luật
- Tri thức luật quan hệ
- Tri thức luật khuyến cáo
- Tri thức luật hướng dẫn
- Tri thức luật chiến lược
- Tri thức luật may rủi
* Biểu diễn tri thức trong các hệ chuyên gia
Tri thức của một hệ chuyên gia có thể được biểu diễn theo nhiều cách
khác nhau Thông thường người ta sử dụng các cách sau đây :
• Biểu diễn tri thức bởi các luật sản xuất
• Biểu diễn tri thức nhờ mệnh đề logic
• Biểu diễn tri thức nhờ mạng ngữ nghĩa
• Biểu diễn tri thức nhờ ngôn ngữ nhân tạo
Ngoài ra, người ta còn sử dụng cách biểu diễn tri thức nhờ các sự kiện không chắc chắn, nhờ bộ ba: đối tượng, thuộc tính và giá trị (O-A-V: Object-Attribute - Value), nhờ khung (frame), v.v Tuỳ theo từng hệ chuyên gia, người
ta có thể sử dụng một cách hoặc đồng thời cả nhiều cách
Trang 3021
* Biểu diễn tri thức nhờ các luật sản xuất
Hiện nay, hầu hết các hệ chuyên gia đều là các hệ thống dựa trên luật,
bới lý do như sau:
• Bản chất đơn thể (modular nature) Có thể đóng gói tri thức và mở
rộng hệ chuyên gia một cách dễ dàng
• Khả năng diễn giải dễ dàng (explanation facilities) Dễ dàng dùng luật
để diễn giải vấn đề nhờ các tiền đề đặc tả chính xác các yếu tố vận dụng luật, từ
đó rút ra được kết quả
• Tương tự quá trình nhận thức của con người Dựa trên các công trình
của Newell và Simon, các luật được xây dựng từ cách con người giải quyết vấn
đề Cách biểu diễn luật nhờ IF THEN đơn giản cho phép giải thích dễ dàng cấu trúc tri thức cần trích lọc Trong một hệ thống dựa trên luật, công cụ suy luận sẽ
xác định những luật nào là tiên đề thỏa mãn các sự việc
Các luật sản xuất thường được viết dưới dạng IF THEN Có hai dạng :
IF < điều kiện > THEN < hành động >
Hoặc
IF < điều kiện > THEN < kết luận > DO < hành động >
Tuỳ theo hệ chuyên gia cụ thể mà mỗi luật có thể được đặt tên Chẳng
hạn mỗi luật có dạng Rule: tên Sau phần tên là phần IF của luật
Phần giữa IF và THEN là phần trái luật (LHS: Left - Hand - Side), có
nội dung được gọi theo nhiều tên khác nhau, như tiền đề (antecedent), điều kiện (conditional part), mẫu so khớp (pattern part), phần sau THEN là kết luận hay
hậu quả (consequent) Một số hệ chuyên gia có thêm phần hành động (action)
được gọi là phần phải luật (RHS: Right - Hand - Side)
Trang 31cho uống thuốc Aspirin
* Bộ sinh của hệ chuyên gia
Bộ sinh của hệ chuyên gia (expert-system generator) là hợp của :
Một máy suy diễn,
Một ngôn ngữ thể hiện tri thức (bên ngoài)
Và một tập hợp các cấu trúc và các quy ước thể hiện các tri thức (bên trong)
Theo cách nào đó, các cấu trúc và các quy ước này xác định một cơ sở tri thức rỗng (hay rỗng bộ phận) Nhờ các tri thức chuyên môn để định nghĩa một
hệ chuyên gia, người ta đã tạo ra bộ sinh để làm đầy cơ sở tri thức
* Biểu diễn tri thức nhờ mệnh đề logic
Người ta sử dụng các ký hiệu để thể hiện tri thức và các phép toán lôgic tác động lên các ký hiệu để thể hiện suy luận logic Kỹ thuật chủ yếu thường
được sử dụng là logic vị từ (predicate logic)
Các ví dụ dưới đây minh hoạ cách thể hiện các phát biểu (cột bên trái) dưới dạng vị từ (cột bên phải) :
Trang 3223
Bảng 2.1 Bảng minh họa vị từ
Phát biểu Vị từ
Tom là đàn ông MAN(tom)
Tom là cha của Mary FATHER(tom, mary)
MAN(X) MORTAL(X) Với quy ước MAN(X) có nghĩa «X là một
người» và
MORTAL(X) có nghĩa «X chết» MAN và
MORTAL là các vị từ đối với biến X
Các vị từ thường có chứa hằng, biến hay hàm Người ta gọi các vị từ
không chứa biến (có thể chứa hằng) là các mệnh đề (preposition) Mỗi vị từ có thể là một sự kiện (fact) hay một luật Luật là vị từ gồm hai vế trái và phải được
nối nhau bởi một dấu mũi tên () Các vị từ còn lại (không chứa mũi tên) được gọi là các sự kiện Trong ví dụ trên đây, MAN và FATHER là các mệnh đề và là các sự kiện Còn MAN(X) MORTAL(X) là một luật