Tiểu luận môn Biểu diễn tri thức và ứng dụng MỘT SỐ MÔ HÌNH BIỂU DIỄN TRI THỨC

35 828 1
Tiểu luận môn Biểu diễn tri thức và ứng dụng MỘT SỐ MÔ HÌNH BIỂU DIỄN TRI THỨC

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN CHƯƠNG TRÌNH ĐÀO TẠC THẠC SĨ CNTT QUA MẠNG MỘT SỐ MÔ HÌNH BIỂU DIỄN TRI THỨC Bộ môn: Biểu diển tri thức và ứng dụng Giáo viên hướng dẫn: PGS.TS. Đỗ Văn Nhơn Sinh viên: Trần Hoài Phong MSSV: CH1101027 Niên khóa 2011 - 2013 Mục lục Lời mở đầu Mức độ phát triển của các hệ thống dựa trên tri thức của con người đã được mở rộng ngày một nhanh. Nó đã thoát khỏi lĩnh vực thông thường, nhu cầu cần có một mô hình để biểu diển tri thức cho các chương trình chuyên gia đã trở nên vô cùng cần thiết. Có một điều cần phải biết là lĩnh vực này đang ngày càng trở nên phức tạp vì tính đặc Niên khóa 2011 - 2013 2 thù của ngôn ngữ tự nhiên, do đó cần một hệ thống để có thể giao tiếp với các chuyên gia theo ngôn ngữ của họ là không thể bỏ qua. Ngoài ra các công việc như chuẩn đoán y khoa, phân tích kịch bản, hiểu được ngôn ngữ tự nhiên và chơi trò chơi, tất cả đã từng bước phát triển các mô hình để có thể biểu diển được một phần những tri thức chưa đầy đủ lên trên hệ thống máy tính. Chính vì tính chất phức tạp cùng với việc các mô hình hiện tại vẫn chưa thể biểu diễn đầy đủ tri thức của con người lên hệ máy tính. Do đó ngày càng nhiều công trình nghiên cứu về các mô hình và phương pháp để có thể biểu diễn tri thức để có thể đưa vào ứng dụng thực tế. Trong bài tiểu luận này em sẽ đưa ra một số mô hình để biểu diễn tri thức để giúp hiểu rõ hơn cách làm thế nào mà tri thức của con người có thể được biểu diễn trên một hệ thống ứng dụng thực tế cũng như hiểu rõ hơn được các đặc trưng cơ bản của từng mô hình. Vì thời gian và kiến thức có hạn nên bài tiểu luận vẫn còn nhiều hạn chế rất mong được sự đóng góp ý kiến từ thầy. Cuối cùng em xin cám ơn thầy đã rất nhiệt tình hướng dẫn trong quá trình giảng dạy. Thầy đã cung cấp cho em nhiều kiến thức quý báu qua đó giúp em có thể nghiên cứu sâu hơn trong lĩnh vực biểu diễn các tri thức phong phú trong thế giới thực vào trong tin học mà trước đây mình chưa từng nghĩ đến. 1. Biểu diển tri thức 1.1. Tri thức và biểu diễn tri thức “Tri thức là sức mạnh” Francis Bacon Như danh ngôn nổi tiếng của FrancisBacon, ta có thể thấy tri thức được xem như là một trong những tài sản lớn nhất của nhân loại, nhưng nó là một cái gì rất mong Niên khóa 2011 - 2013 3 manh và khó để ghi lại. Ghi lại và biểu diễn tri thức của con người với sự giúp đỡ của máy tính là một trong những lĩnh vực đã được nghiên cứu rất lâu của khoa học máy tính nhằm mục đích biểu diễn các kiến thức của con người thành một dạng mà máy tính có thể hiểu được. Đã có nhiều tiếp cận khác nhau về vấn đề này nhưng gặp thất bại trong quá khứ có thể vì đã không tập trung vào cái quan trọng nhất đó là cách mà tri thức con người được biểu diễn: theo ngôn ngữ tự nhiên. Các mô hình để phần nào có thể biểu diển tri thức con người dựa trên ngôn ngữ tự nhiên lần lượt được đưa ra để giúp con người có thể đưa ra các tri thức của họ theo cách tự nhiên sao cho máy tính có thể hiểu được. Các mô hình này đã được nghiên cứu bởi nhiều nhóm chuyên gia và nhiều mô hình lần lượt ra đời mặc dù không phải mô hình nào cũng đủ mạnh để có thể tạo ra ứng dựng thực tế có thể biểu diển được các tri thức trên nhiều lĩnh vực khác nhau. 1.2. Tầm quan trọng của biểu diễn tri thức lên máy tính: Chúng ta đang sống trong một thế giới mà máy tính ngày càng trở nên phổ biến hơn. Số lượng người phải làm việc với máy tính trong cuộc sống hàng ngày đã gia tăng một cách đáng kể trong thập kỷ qua. Sẽ không phải quá nếu nói rằng chúng ta không còn xa thời điểm mà hầu như tất cả mọi người đều phụ thuộc vào máy tính trong cả ngày và đêm. Tuy nhiên số lượng người được đào tạo về khoa học máy tính lại không theo kịp với đà phát triển. Tỷ lệ người có trình độ về khoa học máy tính chỉ chiếm tỷ lệ rất thấp trên dân số có việc làm. Nghĩa là trong khi càng ngày càng nhiều người phải làm việc với máy tính trong cuộc sống hàng ngày của họ, tỷ lệ người có trình độ cao trong khoa học máy tính lại duy trì với mức rất thấp. Kết quả là càng ngày càng nhiều người không có đủ kiến thức cụ thể cần thiết trong lĩnh vực khoa học máy tính để có thể giao tiếp được với máy tính. Tình trạng này làm tăng lên sự cần thiết của việc liên lạc với máy tính theo cách dễ dàng và trực quan nhất mà không cần phải yêu cầu kiến thức chuyên sâu từ người Niên khóa 2011 - 2013 4 dùng. Tuy nhiên trên thực tế con người và máy tính dùng các loại ngôn ngữ hoàn toàn khác biệt đó là một trong những trở ngại lớn nhất trong việc giao tiếp giữa con người với máy tính. Máy tính sử dụng các ngôn ngữ hình thức như ngôn ngữ lập trình hay ngôn ngữ logic trong khi con người thể hiện họ bằng ngôn ngữ tự nhiên. Giải pháp đơn giản nhất cho vấn đề này là viết các chương trình máy tính sao cho chúng có khả năng xử lý ngôn ngữ tự nhiên sao cho hợp lý nhất. Mặc dù đã có nhiều thành công bước đầu trong lĩnh vực nghiên cứu này, việc xử lý ngôn ngữ tự nhiên trở thành một vấn đề vô cùng khó khăn. Từ những cố gắng đầu tiên, một lượng lớn các nghiên cứu đã trực tiếp làm việc trên vấn đề này trong vài thập kỷ trở lại đây. Mặc dù thực tế là có những tiến triển trên một số khía cạnh, máy tính vẫn thất bại trong việc xử lý ngôn ngữ tự nhiên một cách tổng quát và đáng tin cậy nhất. Trong khi máy tính thất bại trong việc hiểu ngôn ngữ tự nhiên, thì con người được biết là gặp rất nhiều khó khăn trong việc học ngôn ngữ hình thức. Ví dụ rất nhiều người sử dụng web thất bại trong việc dùng chính xác các toán tử vô cùng đơn giản trong các công cụ tìm kiếm. Ngoài ra việc sử dụng các ngôn ngữ logic cũng gặp rất nhiều khó khăn. Nhìn chung, kết quả hiển nhiên là con người và máy tính có thể giao tiếp nhau nhưng không thể dùng ngôn ngữ của hai bên. Một số mô hình đã ra đời để giải quyết vấn đề này trên một số khía cạnh nhất định đó là có thể phần nào biểu diễn những tri thức quý giá của con người lên máy tính và có thể tự phân tích được dựa vào những tri thức đó. Chúng ta hãy cùng đi vào tìm hiểu một số mô hình biểu diễn tri thức phổ biến. 2. Một số mô hình biểu diễn tri thức 2.1. Hệ luật dẫn 1.1.1. Khái niệm Hệ luật dẫn bao gồm một tập hợp các quy tắc nếu-thì hợp với nhau tạo thành một mô hình xử lý thông tin cho một số công việc liên quan đến biểu diễn tri thức. Hệ luật dẫn có một số thuộc tính đặc biệt làm cho nó có tính phù hợp cao để có thể mô Niên khóa 2011 - 2013 5 hình được tri thức. Từ mô hình ban đầu chỉ dùng để giải quyết vấn đề, hệ luật dẫn đã phát triển lên trở thành một hình thức có thể mô hình các tri thức của con người và các khía cạnh trong máy học. Hệ luật dẫn là một mô hình xử lý tri thức, bao gồm một tập hợp các quy tắc (được gọi là luật dẫn). Mỗi luật gồm hai phần: phần điều kiện và phần hành động. Ý nghĩa của luật này là khi điều kiện đúng, thì một hành động sẽ được thực thi. Hãy xem xét một ví dụ đơn giản sau đây với hai luật dẫn để mô tả hành vi của một hệ thống làm ấm. Luật 1: nếu nhiệt độ < 20 C -> bật chế độ làm ấm. Luật 2: nếu nhiệt độ > 20 C -> tắt chế độ làm ấm. Khi nhiệt độ trong phòng nhỏ hơn 20 C, phần điều kiện của luật 1 đúng, vì thế máy điều hoà nhiệt độ thực hiện hành động cụ thể theo luật vào bật chế độ làm ấm. Khi nhiệt độ trên 20 C, luật 2 tương tự sẽ được thực thi và tắt chế độ làm ấm. Cùng với nhau, hai nguyên tắc này xác định một quá trình mô tả hành vi của một máy điều hoà nhiệt độ. Một hệ luật dẫn cho mô hình tri thức có nhiều hơn hai luật, thậm chí cả ngàn luật. Hệ thống hoạt động theo kiểu chu kỳ. Trước hết một luật có các điều kiện được thoả sẽ được xác định, khi đó luật này sẽ được thực thi. Thường hành động này sẽ thay đổi trạng thái hiện tại sang trạng thái khác do đó một luật khác với điều kiện của nó sẽ được thoả, và vòng quay lại được lặp lại. 1.1.2. Mô hình biểu diễn tri thức của hệ luật dẫn Mô hình biểu diễn tri thức của hệ luật dẫn gồm có hai thành phần chính (Facts, Rules). Trong đó Facts bao gồm các phát biểu chỉ các sự kiện hay các tác vụ nào đó, còn Rules gồm các luật dẫn có dạng “if…then….” Ví dụ: Một phần cơ sở tri thức của tam giác - Các yếu tố của tam giác ví dụ cạnh a, b, c; góc A, B, C, chu vi p, diện tích S, đường cao ha, hb, hc…. Niên khóa 2011 - 2013 6  Đưa vào Facts = {a, b, c, A, B, C, p, S, ha, hb, hc, …} - Các luật sinh ví dụ: nếu có góc A, góc B thì có góc C,…  Đưa vào Rules = { r1: {A, B} -> {C= pi – A – B} … } 1.1.3. Tổ chức lưu trữ Khi tiến hành lưu trữ tuỳ theo cấu trúc của Facts mà ta có thể sữ dụng các cấu trúc dữ liệu phổ biến như struct, frames, classes,… Ví dụ một tổ chức lưu trữ: hệ thống sẽ lưu hai tập tin dạng text có cấu trúc: Fact.txt và Rule.txt. Trong đó cấu trúc của mỗi tập tin như sau:  Fact.txt Begin a: cạnh a của tam giác b: cạnh b của tam giác … End  Rule.txt Begin {A, B} => {C = 180 - A - B} … End 1.1.4. Cơ chế suy luận trên luật dẫn Với một hệ luật dẫn K = {Facts, Rules} cho trước. Giả sử ta có một tập sự kiện GT đã xác định, ta xét một tập sự kiện mục tiêu KL. Có thể suy ra được KL từ tập GT không, và nếu được thì KL được suy ra từ các luật sinh nào?  Suy diễn tiến: Niên khóa 2011 - 2013 7 Là quá trình suy luận xuất phát từ một số sự kiện ban đầu, xác định các sự kiện có thể được sinh ra từ sự kiện này. Ví dụ: Trong ví dụ trên nếu ban đầu ta có các sự kiện A, B. Ta có thể suy ra C nhờ luật R1 Thuật giải suy diễn tiến: B1: Ghi nhận các sự kiện giải thiết và mục tiêu của bài toán B2: Khởi tạo lời giải là rỗng B3: Kiểm tra mục tiêu If mục tiêu đáp ứng then goto B8 B4: Nếu mục tiêu chưa nằm trong know tìm luật có thể phát sinh sự kiện mới B5: If không tìm được luật then Dừng không tìm được lời giải B6: If B4 thành công then Ghi nhận thông tin về luật vào lời giải và sự kiện mới vào giả thiết được phát sinh từ các luật. B7: Goto B4 B8: Tìm được lời giải trong danh sách luật solution  Suy diễn lùi: Là quá trình suy luận ngược xuất phát từ một số sự kiện ban đầu, ta tìm kiếm các sự kiện đã "sinh" ra sự kiện này. Ví dụ: Trong ví dụ trên nếu ban đầu ta cần tìm C. Ta xem trong các luật sinh ra C để tìm sự kiện nào đã có trong đề bài. Nếu tìm được thì kết thúc còn không tìm được thì lại truy ngược lên đối với các sự kiện đã sinh ra C. Ở đây nhờ luật R1 ta tìm ra được sự kiện A, B mà đề bài đã cho trước. Thuật giải suy diễn lùi: B1: Giả sử mục tiêu đúng B2: Phát sinh các mục tiêu con B3: Kiểm tra các mục tiêu con Niên khóa 2011 - 2013 8 If mục tiêu đáp ứng then goto B8 B4: Tìm luật có thể phát sinh sự kiện mới B5: If không tìm được luật then Dừng không tìm được lời giải B6: If B4 thành công then Ghi nhận thông tin về luật vào lời giải và sự kiện mới vào giả thiết được phát sinh từ các luật. B7: Goto B4 B8: Tìm được lời giải trong danh sách luật solution 1.1.5. Tối ưu luật Tập các luật trong một cơ sở tri thức rất có khả năng thừa, trùng lắp hoặc mâu thuẫn. Dĩ nhiên là hệ thống có thể đổ lỗi cho người dùng về việc đưa vào hệ thống những tri thức như vậy. Tuy việc tối ưu một cơ sở tri thức về mặt tổng quát là một thao tác khó (vì giữa các tri thức thường có quan hệ không tường minh), nhưng trong giới hạn cơ sở tri thức dưới dạng luật, ta vẫn có một số thuật toán đơn giản để loại bỏ các vấn đề này như  Rút gọn vế phải: A ∧ B  A ∧ C sẽ trở thành A ∧ B  C  Rút gọn vế trái (L1) A, B  C (L2) A  X (L3) X  C sẽ trở thành A  C do đó L1 bị dư thừa có thể loại bỏ  Phân rã và kết hợp luật A ∧ B  C sẽ trở thành A  C, B  C  Luật thừa Một luật là thừa nếu có thể suy ra từ luật khác ví dụ A  B, B  C, A  C thì luật thứ 3 bị thừa. Niên khóa 2011 - 2013 9 1.1.6. Ưu và khuyết điểm của hệ luật dẫn:  Ưu điểm: Các luật rất dễ hiểu nên có thể dễ dàng dùng để trao đổi với người dùng (vì nó là một trong những dạng tự nhiên của ngôn ngữ). Có thể dễ dàng xây dựng được cơ chế suy luận và giải thích từ các luật. Việc hiệu chỉnh và bảo trì hệ thống là tương đối dễ dàng. Có thể cải tiến dễ dàng để tích hợp các luật mờ. Các luật thường ít phụ thuộc vào nhau.  Khuyết điểm: Các tri thức phức tạp đôi lúc đòi hỏi quá nhiều (hàng ngàn) luật sinh. Điều này sẽ làm nảy sinh nhiều vấn đề liên quan đến tốc độ lẫn quản trị hệ thống. Thống kê cho thấy, người xây dựng hệ thống trí tuệ nhân tạo thích sử dụng luật sinh hơn tất cả phương pháp khác (dễ hiểu, dễ cài đặt) nên họ thường tìm mọi cách để biểu diễn tri thức bằng luật sinh cho dù có phương pháp khác thích hợp hơn! Đây là nhược điểm mang tính chủ quan của con người. Cơ sở tri thức luật sinh lớn sẽ làm giới hạn khả năng tìm kiếm của chương trình điều khiển. Nhiều hệ thống gặp khó khăn trong việc đánh giá các hệ dựa trên luật sinh cũng như gặp khó khăn khi suy luận trên luật sinh. 2.2. Mạng suy diễn tính toán: 1.1.7. Khái niệm Một mạng tính toán với các biến giá trị đơn giản là một cặp (M,F) trong đó M = {x1, x2, …,xn} là một tập các biến có giá trị đơn giản (hoặc giá trị không có cấu trúc) và F = {f1, f2, …., fm} là tập các quan hệ tính toán giữa các biến trọng tập M. Mỗi quan hệ tính toán f ∈ F có dạng như sau: + Một phương trình với một số biến trong M hoặc Niên khóa 2011 - 2013 10 [...]... quan tâm và được sử dụng trong nhiều ứng dụng Tuy nhiên các phương pháp này không đủ và không dễ dùng để khởi tạo các chương trình thông minh hoặc các hệ tri thức trong nhiều lĩnh vực tri thức khác nhau hoặc các hệ thống tri thức trong nhiều lĩnh vực tri thức khác nhau Mô hình được ra đời theo cách tiếp cận hướng đối tượng để biểu diễn tri thức cùng với kĩ thuật lập trình tính toán symbolic Mô hình... tạo một hệ cơ sở tri thức trong việc giải quyết một bài toán Cấu trúc của hệ thống Một hệ cơ sở tri thức, hỗ trợ tìm kiếm truy vấn và giải quyết các vấn đề có cấu trúc của một hệ chuyên gia Chúng ta có thể thiết kế hệ thống gồm có 6 thành phần:  Cơ sở tri thức  Công cụ suy diễn  Thành phần diễn giải  Bộ nhớ làm việc  Quản lý tri thức  Giao diện Hình sau sẽ mô tả cấu trúc của hệ thống Cơ sở tri thức. .. các sự kiện và luật trong quá trình tìm kiếm và suy luận Thành phần diễn giải (Explantion component) hỗ trợ việc giải thích các giai đoạn, các khái niệm trong quá trình giải quyết bài toán Quản lý tri thức nhằm hổ trợ việc cập nhật tri thức vào trong hệ cơ sở tri thức Nó cũng hổ trợ việc tìm kiếm tri thức và kiểm tra tính nhất quán của tri thức Thành phần giao diện của hệ thống yêu cầu có một ngôn ngữ... Kết luận Trong bài tiểu luận này em đã trình bày một số cái nhìn tổng quát của các mô hình biễu diển tri thức từ mạng ngữ nghĩa đến mô hình KBCO Các mô hình này đều có cấu trúc tường minh và đơn giản để có thể thực hiện nhiệm vụ mô hình hoá lại các tri thức lên máy tính Các mô hình cung cấp các bước từ thu nhập thông tin, phân loại thông tin đến các cách biểu diễn thông tin Mỗi mô hình có những ưu... dù việc biểu diễn tri thức vẫn chưa phải là tốt nhất nhưng những mô hình trên đã cho ta thấy được phần nào những nỗ lực nghiên cứu để giúp cho khoa học máy tính ngày một phát tri n rộng thêm Bài tiểu luận này chỉ đi vào một phần tương đối nhỏ, tổng quát nhất các mô hình biểu diễn thi thức cũng như cách làm sao để thực hiện các mô hình đó Các nghiên cứu này đã giúp cho em có được những kiến thức rất... toán tử của C Thành phần này biểu hiện một phần các tri thức về các toán tử trên các đối tượng Hầu hết lĩnh vực tri thức nào đều có một thành phần chứa các toán tử Trong hình học sẽ có một số toán tử như là cộng, nhân các vectơ, trong đại số tuyến tính có Niên khóa 2011 - 2013 23 các toán tử trên các ma trận Mô hình KBCO giúp tổ chức các tri thức này như là một phần của hệ tri thức của hệ thống thông minh... giao tiếp giữa hệ thống và người học, giữa hệ thống và giáo viên Kỹ thuật thiết kế Quá trình phân tích và thiết kế các thành phần của hệ thống bao gồm các bước sau B1: Tập hợp các tri thức thực tế dựa trên mô hình KBCO B2: Phân loại tri thức trong B1, tiến tới phân tích yêu cầu B3: Xây dựng tổ chức cơ sở tri thức cho hệ thống dựa trên mô hình KBCO và ngôn ngữ kĩ thuật của nó Tri thức có thể được tổ chức... của mô hình KBCO: Cấu trúc tường minh giúp dễ dàng thiết kế các mô un truy cập cơ sở tri thức Thích hợp cho việc thiết kế một cơ sở tri thức với các khái niệm có thể được biểu diễn bởi các đối tượng tính toán Tiện lợi cho việc thiết kế các mô un giải bài toán tự động Thích hợp cho việc định dạng ra một ngôn ngữ khai báo bài toán và đặc tả bài toán một cách tự nhiên Niên khóa 2011 - 2013 32 3 Kết luận. .. tri thức (Knowledge Base) chứa các tri thức để giải quyết vài bài toán trong các lĩnh vực tri thức cụ thể Động cơ suy diễn (Inference Engine) sẽ dùng tri thức lưu trong cơ sở tri thức để giải quyết các bài toán, để tìm kiếm hoặc để trả lời cho truy Niên khóa 2011 - 2013 29 vấn Nó phải xác định ra vấn đề và dùng các chiến lược suy luận thích hợp để tìm ra đúng luật và sự kiện để giải quyết bài toán Bộ... hàm số trên các đối tượng tính toán Tri thức về các hàm cũng là loại phổ biến của tri thức trong hầu hết các lĩnh vực tri thức trong thực tế, đặc biệt là trong các lĩnh vực khoa học tự nhiên như toán học hoặc vật lý Trong hình học chúng ta có các hàm: khoảng cách giữa hai điểm, khoảng cách từ điểm đến một đường thẳng, mặt phẳng, Rules: biểu diễn các luật Tập hợp các luật là một phần của cơ sở tri thức . tích được dựa vào những tri thức đó. Chúng ta hãy cùng đi vào tìm hiểu mô t số mô hình biểu diễn tri thức phổ biến. 2. Một số mô hình biểu diễn tri thức 2.1. Hệ luật dẫn 1.1.1 nghĩ đến. 1. Biểu diển tri thức 1.1. Tri thức và biểu diễn tri thức Tri thức là sức mạnh” Francis Bacon Như danh ngôn nổi tiếng của FrancisBacon, ta có thể thấy tri thức được. HỌC CÔNG NGHỆ THÔNG TIN CHƯƠNG TRÌNH ĐÀO TẠC THẠC SĨ CNTT QUA MẠNG MỘT SỐ MÔ HÌNH BIỂU DIỄN TRI THỨC Bộ môn: Biểu diển tri thức và ứng dụng Giáo viên hướng dẫn: PGS.TS. Đỗ Văn Nhơn Sinh

Ngày đăng: 10/04/2015, 08:50

Từ khóa liên quan

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan