Trong nội dung bài thu hoạch nhỏ này, em xin trình bày khái quát về các hệ cơ sở tri thức, các phương pháp suy diễn và lập luận, các hệ chuyên gia đồng thời ápdụng những phương pháp đó đ
Trang 1ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH
CHƯƠNG TRÌNH ĐÀO TẠO THẠC SỸ CNTT QUA MẠNG
_ _
BÀI THU HOẠCH MÔN HỌC
CÔNG NGHỆ TRI THỨC VÀ ỨNG DỤNG
Đề tài:
Xây dựng hệ chuyên gia về định hướng phát
triển kỹ năng cho trẻ em
Giảng viên hướng dẫn: GS.TSKH.Hoàng Kiếm Sinh viên thực hiện: Tôn Thất Hoàng Minh
Mã số: CH1101103
TP HCM, năm 2012
Trang 2Mục lục
Lời nói đầu 2
I Tổng quan về công nghệ tri thức và ứng dụng 3
1 Tri thức: 3
2 Cơ sở tri thức: 4
3 Động cơ suy diễn 4
4 Hệ cơ sở tri thức 4
5 Các hệ chuyên gia 4
6 Hệ hỗ trợ ra quyết định 5
7 Hệ giải bài toán 6
8 Tiếp thu tri thức 6
9 Tích hợp các hệ CSTT và các hệ quản trị CSDL 6
10 Hệ thống điều khiển mờ 6
II Các kỹ thuật suy diễn và lập luận 7
1 Mở đầu 7
2 Suy lý 7
3 Suy diễn 8
III Hệ chuyên gia 12
1 Khái niệm hệ chuyên gia 12
2 Hệ chuyên gia hoạt động như thế nào 12
3 Các đặc trưng của hệ chuyên gia 13
4 Biểu diễn tri thức trong các hệ chuyên gia 13
IV Ứng dụng các phương pháp suy diễn để xây dựng hệ chuyên gia định hướng phát triển kỹ năng cho trẻ em 16
1 Mô tả chương trình: 16
2 Demo hệ chuyên gia về định hướng phát triển kỹ năng cho trẻ em 17
V Kết luận 19
VI Tài liệu tham khảo 20
Trang 3TÔN THẤT HOÀNG MINH – CH1101103 2/23
Trang 4Lời nói đầu
Ngày nay, cùng với sự phát triển không ngừng của các nền kinh tế, một lượnglớn dữ liệu và thông tin được cập nhật hàng ngày Để phục vụ cho đời sống conngười ngày một tốt đẹp, hoàn thiện hơn, chúng ta đã phân tích những dữ liệu,thông tin đó để tìm ra các quy luật, chuyển thành các mô hình tính toán phục vụ chocác nhu cầu cần thiết, ứng dụng chúng trong đời sống hằng ngày Việc phân tíchnghiên cứu đó gọi là công nghệ tri thức
Trong nội dung bài thu hoạch nhỏ này, em xin trình bày khái quát về các hệ cơ
sở tri thức, các phương pháp suy diễn và lập luận, các hệ chuyên gia đồng thời ápdụng những phương pháp đó để xây dựng hệ chuyên gia về định hướng phát triển
kỹ năng cho trẻ em
Chúng em xin chân thành cám ơn GS TSKH Hoàng Kiếm, giảng viên môn học
Công nghệ tri thức và ứng dụng, người đã truyền đạt cho chúng em những kiếnthức vô giá về các hệ cơ sở tri thức cũng như những ứng dụng trong thực tiễn đờisống, giúp chúng em hiểu rõ hơn về cách giải quyết các vấn đề dựa vào những dữliệu khổng lồ mà chỉ có thể khai phá bằng cách tìm ra các luật ẩn sâu bên trong nó.Bên cạnh đó, là sự giúp đỡ nhiệt tình của các thầy cô trong trường Đại học CNTT-ĐHQG TP HCM cùng các bạn bè đã giúp chúng em hoàn thành tốt môn học này
Trang 5I Tổng quan về công nghệ tri thức và ứng dụng
1 Tri thức:
Tri thức được định nghĩa trong từ điển Oxford là:
i Sự tinh thông và các kỹ năng mà con người thu được thông qua
kinh nghiệm hoặc giáo dục
ii Những gì được biết đến trong một lĩnh vực cụ thể hoặc tổng thể,
các sự kiện và thông tin
iii Nhận thức hoặc sự hiểu biết thu được bằng kinh nghiệm của
một sự kiện hay tình huống
Tri thức có hai loại chính đó là dạng tri thức ẩn và tri thức hiện:
i Tri thức ẩn: là những tri thức được con người tiếp nhận từ
những trải nghiệm thực tế, dạng tri thức này thường tồn tại ẩntrong mỗi người và rất khó mã hóa hay chuyển giao cho ngườikhác Ví dụ như khả năng hội họa của các họa sỹ tài ba, hay cảnăng sáng tác nhạc của các nhạc sỹ lừng danh Những tri thứcnày không thể mã hóa thành sách vở mà chỉ có thể hình thành
từ tiềm năng và quá trình luyện tập của mỗi người
ii Tri thức hiện: là những tri thức có thể được giải thích, mã hóa
dưới dạng văn bản, âm thanh, hình ảnh, phim … thông quangôn ngữ có lời hoặc không lời, nguyên tắc hệ thống, chươngtrình máy tính, chuẩn mực hay các phương tiện khác Đây lànhững tri thức đã được thể hiện ra ngoài và có thể chuyển giao,tiếp nhận thông qua các hệ thống giáo dục hoặc sách báo
Dựa vào cách phân loại tri thức, các hình thức chia sẻ tri thức đượcphân làm 4 loại:
i Ẩn - Ẩn: Khi người chia sẻ và người tiếp nhận giao tiếp trực tiếp
với nhau (ví dụ: giảng bài, chia sẻ kinh nghiệm…), thì việc làmnhư vậy là tiếp nhận từ tri thức ẩn thành tri thức ẩn
ii Ẩn – Hiện: Khi một người mã hóa tri thức của mình ra thành văn
bản hay các hình thức hiện hữu khác thì đó là quá trình tri thức
từ ẩn ( trong đầu người đó) thành tri thức hiện( văn bản, phim,ảnh …)
iii Hiện - Ẩn: Tri thức từ dạng hiện trở thành dạng ẩn Ví dụ cho
quá trình này là việc đọc sách, xem phim giáo dục …Tri thứchiện từ sách báo, phim ảnh trở thành tri thức ẩn trong đầu ngườitiếp nhận nó
Trang 6iv Hiện – Hiện: Tập hợp các tri thức hiện để tạo thành những tri
thức hiện khác Các ví dụ cho quá trình này là việc sao lưu sách
3 Động cơ suy diễn
Động cơ suy diễn là các phương pháp phân tích lập luận dựa trên các
cơ sở tri thức có sẵn trong hệ thống, các tri thức bên ngoài để đưa ra các tri thức mới
Động cơ suy diễn thường thay đổi theo độ phức tạp của cơ sở tri thức
Có hai kiểu suy diễn chính trong động cơ suy diễn là suy diễn tiến và suy diễn lùi
4 Hệ cơ sở tri thức
Hệ cơ sở tri thức là hệ thống hoạt động dựa vào hai khối chính Khối trithức hay còn gọi là cơ sở tri thức và khối điều khiển hay còn gọi là động cơsuy diễn
Với các hệ thống phức tạp, bản thân động cơ suy diễn cũng có thể làmột hệ cơ sở tri thức chứa các siêu tri thức ( tri thức về việc sử dụng các trithức khác)
Việc tách biệt khối tri thức ra khỏi các cơ chế điều khiển giúp ta dễdàng thêm vào các tri thức mới trong quá trình phát triển một chương trình.Đây là điểm tương tự của động cơ suy diễn trong một hệ cơ sở tri thức vànão bộ của con người, là không đổi cho dù hành vi của cá nhân có thay đổitheo kinh nghiệm và kiến thức mới nhận được
5 Các hệ chuyên gia
Hệ chuyên gia là một loại hệ cơ sở tri thức được thiết kế cho một lĩnhvực ứng dụng cụ thể Dạng phổ biến nhất của hệ chuyên gia là một chươngtrình gồm một tập luật phân tích thông tin ( thường được cung cấp bởingười sử dụng hệ thống) về một lớp vấn đề cụ thể, cũng như đưa ra cácphân tích về các vấn đề đó, tùy theo thiết kế chương trình mà đưa ra lờikhuyên về trình tự các hành động cần được thực hiện để giải quyết vấn đề.Đây là một hệ thống sử dụng các khả năng lập luận để đạt tới kết luận
Hệ chuyên gia là các ứng dụng máy tính nhằm cụ thể hóa chuyên mônkhông giải quyết bằng thuật toán để giải quyết một loại vấn đề Ví dụ, hệ
Trang 7thống chuyên gia được sử dụng trong các ứng dụng chuẩn đoán phục vụ cảngười và máy móc Ví dụ như máy tính chơi cờ vua, ra các quyết định về tàichính, các hệ thống giám sát thời gian thực, các chính sách bảo hiểm vànhiều dịch vụ khác mà trước đó yêu cầu chuyên môn của con người.
Hệ chuyên gia là một hệ thống tin học có thể mô phỏng năng lực quyếtđoán và hành động của một chuyên gia Hệ chuyên gia sử dụng các tri thứccủa các chuyên gia để giải quyết vấn đề thuộc lĩnh vực cụ thể
Hệ chuyên gia gồm các thành phần cơ bản sau:
i Bộ giao tiếp ngôn ngữ tự nhiên
ii Động cơ suy diễniii Cơ sở tri thức
iv Cơ chế giải thích WHY-HOW
v Bộ nhớ làm việc
vi Tiếp nhận tri thức
Bộ phận giải thích sẽ trả lời hai câu hỏi WHY và HOW Câu hỏi WHYnhằm mục đích cung cấp các lý lẽ để thuyết phục người sử dụng đi theo conđường suy diễn của hệ chuyên gia Câu hỏi HOW nhằm cung cấp các giảithích về con đường mà hệ chuyên gia sử dụng để mang lại kết quả
6 Hệ hỗ trợ ra quyết định
Khái niệm hệ hỗ trợ ra quyết định được đề xuất bởi Michael ScottMorton vào những năm 1970 Hệ hỗ trợ ra quyết định có:
i Phần mềm máy tính
ii Chức năng hỗ trợ ra quyết định
iii Làm việc với các bài toán có cấu trúc yếu
iv Hoạt động theo cách tương tác với người dùng
v Được trang bị nhiều mô hình phân tích và mô hình dữ liệu
Hệ hỗ trợ quyết định có các tính chất:
i Hướng đến các quyết định cấp cao của các nhà lãnh đạo
ii Tính uyển chuyển, thích ứng với hoàn cảnh và phản ứng nhanhiii Do người dùng khởi động vào kiểm soát
iv Ngoài việc cung cấp các dạng hỗ trợ quyết định thường gặp, hệ
quyết định còn được trang bị khả năng trả lời các câu hỏi để giảiquyết các tình huống dưới dạng câu hỏi “if-then”
7 Hệ giải bài toán
Mạng tính toán là một dạng biểu diễn tri thức, mỗi mạng tính toán là một mạng ngữ nghĩa chứa các biến và những quan hệ có thể cài đặt và sử
Trang 8dụng được cho việc tính toán Mạng tính toán gồm một tập hợp các biến cùng với một tập các quan hệ ( chẳng hạn các công thức) tính toán giữa các biến Trong ứng dụng cụ thể mỗi biến và giá trị của nó thường gắn liền với một khái niệm cụ thể về sự vật, mỗi quan hệ thể hiện một sự tri thức về sự vật Nhờ mạng tính toán có thể biểu diễn tri thức tính toán dưới dạng các đốitượng một cách tự nhiên và gần gũi đối với cách nhìn và nghĩ của con ngườikhi giải quyết các vấn đề tính toán liên quan đến một số khái niệm về các đốitượng, chẳng hạn như tam giác, tứ giác, hình bình hành, hình chữ nhật… Sau đó phát triển các thuật giải trên mạng tính toán để hỗ trở tiến trình giải các bài toán.
8 Tiếp thu tri thức
Nhu cầu tìm kiếm các tri thức từ dữ liệu của một lĩnh vực cụ thể là một nhu cầu bắt buộc khi xây dựng các hệ cơ sở tri thức Một số bài toán đã có sẵn tri thức tuy vậy có nhiều lĩnh vực rất khó phát hiện tri thức Do vậy cần phải phát triển các kỹ thuật cho phép tiếp nhận tri thức từ dữ liệu Máy học làmột trong những phương pháp nghiên cứu giúp tạo ra tri thức từ dữ liệu
9 Tích hợp các hệ CSTT và các hệ quản trị CSDL
Có thể áp dụng cơ chế cơ sở tri thức và cơ chế lập luận để nâng cao các khả năng cung cấp thông tin của các cơ sở dữ liệu hiện có Một ví dụ tiêu biểu là trong cơ sở dữ liệu về hành trình của các máy bay xuất phát từ sân bay Dựa vào các thông tin lưu trữ trong cơ sở dữ liệu về ngày giờ xuất phát, các quy luật khí động học cùng hệ thống dự báo thời tiết, ta có thể rút
ra được vị trí của máy bay khi nó gặp nạn Điều này rõ ràng không thể làm được bằng các câu lệnh SQL truyền thống Nhờ đó, khi đưa thêm các luật suy diễn vào cơ sở dữ liệu, có thể dễ dàng tạo sinh thêm thông tin dựa trên các sự kiện cung cấp, các dữ liệu đang được lưu trữ trong cơ sở dữ liệu và các luật, cơ chế suy diễn trong cơ sở tri thức
10 Hệ thống điều khiển mờ
Các chuyên gia sử dụng các lập luận một các tự nhiên để giải quyết các bài toán Các tri thức này thường là các tri thức không rõ ràng và rất khódiễn tả bằng các hệ thống logic truyền thống
Từ năm 1920, Lukasiewicz đã nghiên cứu các diễn đạt toán học khái niệm mờ Năm 1965, Lotfi Zadeh đã phát triển lý thuyết khả năng và đề xuất
hệ thống logic mờ (fuzzy logic) Hiện nay, logic mờ đang được ứng dụng rộng rãi trong rất nhiều lĩnh vực, đặc biệt là các hệ thống điều khiển mờ Ví
dụ như máy giặt tự động, máy bơm nước tự động…
Trang 9II Các kỹ thuật suy diễn và lập luận.
1 Mở đầu
Để giải bài toán trong trí tuệ nhân tạo, tối thiểu cần thiết việc thể hiệntri thức, rồi cần có hệ thống suy lý trên các tri thức Trong hệ thống như hệchuyên gia, việc suy lý thể hiện thông qua kỹ thuật suy diễn và các chiếnlược điều khiển Các kỹ thuật suy diễn hướng dẫn hệ thống theo cách tổnghợp tri thức từ các tri thức đã có trong cơ sở tri thức và từ sự kiện ghi lạitrong 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ý
2 Suy lý
Con người giải bài toán bằng cách kết hợp các sự kiện với các trithức Họ dùng các sự kiện riêng về bài toán và dùng chúng trong ngữ cảnhhiểu tổng thể về lĩnh vực của bài toán để rút ra các kết luận logic Quá trìnhnày gọi là suy lý Như vậy suy lý là quá trình 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
Hiểu cách con người suy lý và cách họ làm việc với thông tin về loạibài toán đã cho, cộng với kiến thức của họ về lĩnh vực này sẽ đảm bảo hiểu
rõ các bước đi trong quá trình xử lý tri thức trong hệ thống tri thức nhân tạo
2.1 Suy lý theo cách suy diễn
Con người suy lý suy diễn để rút ra thông tin mới từ các thông tin đãbiết Các thông tin này có quan hệ logic với nhau Suy lỹ suy diễn dùng các
sự kiện của bài toán gọi là các tiên đề và các kiến thức chung có liên quan ởdạng các luật gọi là các kéo theo
Suy lý suy diễn là một trong các kỹ thuật phổ biến nhất Suy diễn làdùng modus ponens là loại cơ bản của suy lỹ suy diễn Khi có A B và Ađúng thì rút ra được B đúng
và c thì tính chất này đúng với tất cả X
2.3 Suy lý giả định
Suy diễn là suy lý chính xác từ các sự kiện và thông tin đã biết Suy lýgiả định (abductive) là một loại suy diễn có vẻ hợp lý Điều này có nghĩa câukết luận có thể đúng, nhưng cũng có thể không đúng
Trang 102.4 Suy lý tương tự, loại suy
Người ta tạo ra một mô hình của một vài khái niệm thông qua kinhnghiệm của họ Họ dùng mô hình này để hiểu một vài hoàn cảnh và đốitượng tương tự, họ vạch ra điểm tương tự giữa hai vật đem ra so sánh, rút
ra sự giống nhau và khác nhau nhằm hướng dẫn việc suy lý của họ
2.5 Suy lý theo lẽ thường
Nhờ kinh nghiệm, con người có thể giải quyết vấn đề một cách cóhiệu quả Họ sử dụng lẽ thông thường (common sense) để nhanh chóng rút
ra kết luật Suy hướng theo lẽ thường có khuynh hướng thiên về phán xét sựđúng đắn hơn là suy lý chính xác về logic
2.6 Suy lý không đơn điệu
Đối với nhiều trường hợp, người ta suy lý trên các thông tin tĩnh Cácthông tin này không thay đổi trạng thái trong quá trình giải bài toán Loại suy
lý này được gọi là suy lý đơn điệu
Do việc theo dõi sự thay đổi của thông tin không mấy khó khăn, khi có
sự kiện nào thay đổi người ta có thể đưa vào nhiều sự kiện phụ thuộc khác
để thu được kết luận như mong muốn Loại suy lý như vậy gọi là suy lýkhông đơn điệu
Hệ thống có thể suy lý không đơn điệu nếu nó có hệ thống quản lý giátrị chân lý Hệ thống này quản lý dữ liệu về “nguyên nhân” để sự kiện đượckhẳng định Do vậy, khi nguyên nhân thay đổi, sự kiện cũng thay đổi theo
3 Suy diễn
Hệ thống trí tuệ nhân tạo mô hình hóa quá trình suy lý của con ngườinhờ kỹ thuật gọi là “suy diễn” Việc suy diễn là quen thuộc trong hệ chuyêngia Như vậy: “Quá trình dùng trong hệ chuyên gia để rút ra thông tin mới từcác thông tin cũ được gọi là suy diễn”
Người ta quan tâm về một số khía cạnh của suy diễn, cũng như cáchthức thực hiện của mô tơ suy diễn Trong hệ thống, phần mô tơ suy diễnthường được coi là kín, ít thấy tường minh Tuy nhiên cần biết:
i Câu hỏi nào sẽ được chọn để người sử dụng trả lời?
ii Cách tìm kiếm trong cơ sở tri thức?
iii Làm sao chọn được luật thực hiện trong số các luật có thể?Các vấn đề này sẽ được làm rõ khi ta xem xét kỹ thuật suy diễn tiến
và lùi
3.1 Modus ponens
Suy lý logic đã được giới thiệu qua các luật suy diễn đơn giản gọi là
“modus ponens”
Trang 11Luật logic khẳng định rằng nếu biết A là đúng và A kéo theo B thì có thể cho B là đúng” Modus ponens làm việc với các tiên đề (các câu đúng)
để suy ra các sự kiện mới Chẳng hạn có tiên đề với dạng E1 E2, và các tiên đề khác E1 thì về logic suy ra E2, tức E2 đúng Các tiên đề này có thể
dịch thành danh sách, trong đó tiên đề 3 có được do tiên đề 1 và tiên đề 2
là cơ sở của suy diễn dữ liệu hay của hệ chuyên gia suy diễn tiến
3.2 Suy diễn tiến
Suy diễn tiến là chiến lược giải bài toán xử lý dữ kiện hay dữ liệu; nóthiên về quá trình suy diễn lặp đi lặp lại từ tiên đề hay giả thuyết di chuyển vềphía trước, từ giả thuyết về phía kết luận
Suy diễn tiến có mặt trái của nó là khi các dữ liệu thừa cứ sinh ra cóthể càng tiếp tục suy diễn càng không đi tới trạng thái đích mong muốn
Quá trình giải đối với vài vấn đề bắt đầu bằng việc thu thập thông tin.Thông tin này suy lý để suy ra kết luận Điều này cũng như bác sĩ bắt đầuchuẩn đoán bằng một loạt các câu hỏi về triệu chứng của bệnh nhân Loạisuy diễn này được mô hình hóa trong hệ chuyên gia có tìm kiếm dữ liệu vớitên “suy diễn tiến” Suy diễn tương tự như modus ponens
Chiến lược suy diễn bắt đầu bằng tập sự kiện đã biết, rút ra các sựkiện mới nhờ dùng các luật mà phần giả thuyết khớp với sự kiện đã biết, vàtiếp tục quá trình này cho đến khi thấy trạng thái đích, hoặc cho đến khikhông còn luật nào khớp được các sự kiện đã biết hay được sự kiện suydiễn
Ứng dụng đơn giản nhất của hệ thống suy diễn tiến hoạt động nhưsau:
- Trước tiên hệ thống này lấy các thông tin về bài toán từ người sửdụng và đặt chung vào bộ nhớ làm việc
- Suy diễn quét các luật theo dãy xác định trước; xem phần giả thiết
có trùng khớp với nội dung trong bộ nhớ