Biểu diễn tri thức và suy luận
Tổng quan

Biểu diễn tri thức là một lĩnh vực của trí tuệ nhân tạo (AI) tập trung vào việc thiết kế các biểu diễn máy tính để nắm bắt thông tin về thế giới nhằm giải quyết các vấn đề phức tạp.
Lý do cho biểu diễn tri thức là vì mã lập trình thủ tục truyền thống không phải là hình thức tốt nhất để giải quyết các vấn đề phức tạp. Biểu diễn tri thức giúp phần mềm phức tạp dễ dàng định nghĩa và bảo trì hơn so với mã thủ tục, và có thể được sử dụng trong các hệ chuyên gia.
Ví dụ, khi nói chuyện với các chuyên gia về các quy tắc kinh doanh thay vì mã, nó giúp thu hẹp khoảng cách ngữ nghĩa giữa người dùng và nhà phát triển, làm cho việc phát triển các hệ thống phức tạp trở nên thực tế hơn.
Biểu diễn tri thức gắn liền với suy luận tự động vì một trong những mục đích chính của việc biểu diễn tri thức là có thể suy luận về tri thức đó, đưa ra suy luận, xác nhận tri thức mới, v.v. Hầu hết các ngôn ngữ biểu diễn tri thức đều có một công cụ suy luận hoặc máy suy luận trong hệ thống.
Một vấn đề quan trọng trong thiết kế các hình thức biểu diễn tri thức là sự cân bằng giữa khả năng biểu đạt và tính khả thi. Logic bậc nhất (FOL), với khả năng biểu đạt mạnh mẽ và khả năng hình thức hóa nhiều phần của toán học, được xem là tiêu chuẩn để so sánh khả năng biểu đạt của các ngôn ngữ biểu diễn tri thức.
Tuy nhiên, FOL có hai nhược điểm lớn là khó sử dụng và hiệu quả khi triển khai. Do tính biểu đạt mạnh, FOL cho phép nhiều cách diễn đạt cùng một thông tin, điều này khiến người dùng khó có thể hình thức hóa hoặc hiểu tri thức được biểu diễn bằng cách phức tạp, mang tính toán học. Ngoài ra, các thủ tục chứng minh phức tạp cũng khiến người dùng khó hiểu được các chứng minh và giải thích, và việc triển khai có thể không hiệu quả. Vì vậy, FOL không bị giới hạn thường tạo ra sự ngại ngần cho các nhà phát triển phần mềm.
Một phát hiện quan trọng trong nghiên cứu AI vào những năm 1970 là các ngôn ngữ không có đầy đủ khả năng biểu đạt của FOL vẫn có thể cung cấp khả năng biểu đạt tương đối gần với FOL, nhưng lại dễ dàng hơn cho cả người phát triển và máy tính để hiểu. Nhiều hình thức biểu diễn tri thức AI ban đầu, từ cơ sở dữ liệu đến mạng ngữ nghĩa cho đến các hệ thống sản xuất, có thể được xem như là các quyết định thiết kế khác nhau về cách cân bằng giữa khả năng biểu đạt với tính tự nhiên của biểu thức và hiệu quả. Sự cân bằng này là động lực chính cho sự phát triển các quy tắc IF-THEN trong các hệ thống chuyên gia dựa trên quy tắc.
Một động lực tương tự cũng là lý do phát triển của lập trình logic (LP) và ngôn ngữ lập trình logic Prolog. Các chương trình logic có cú pháp dựa trên quy tắc, dễ gây nhầm lẫn với cú pháp IF-THEN của hệ sinh (khoa học máy tính). Tuy nhiên, các chương trình logic có ngữ nghĩa logic rõ ràng, trong khi các hệ thống sản xuất thì không.
Hình thức lập trình logic sớm nhất dựa trên tập con Horn của logic bậc nhất. Nhưng các mở rộng sau đó của LP bao gồm quy tắc suy luận phủ định như thất bại (negation as failure), biến LP thành một logic không đơn điệu cho lập luận mặc định. Ngữ nghĩa mở rộng này của LP là một biến thể của ngữ nghĩa tiêu chuẩn của các mệnh đề Horn và FOL, và là một dạng ngữ nghĩa cơ sở dữ liệu,  bao gồm giả định tên duy nhất và một dạng giả định thế giới đóng. Các giả định này khó hơn để phát biểu và suy luận một cách rõ ràng bằng ngữ nghĩa tiêu chuẩn của FOL.
Trong một bài báo quan trọng năm 1993 về chủ đề này, Randall Davis của MIT đã trình bày năm vai trò khác nhau để phân tích một khung biểu diễn tri thức:
"Biểu diễn tri thức (KR) cơ bản nhất là một sự thay thế, một sự đại diện cho chính sự vật, được sử dụng để cho phép một thực thể xác định hậu quả bằng cách suy nghĩ thay vì hành động," tức là, "bằng cách suy luận về thế giới thay vì thực hiện hành động trong nó."
"Đó là một tập hợp các cam kết bản thể học", tức là, "một câu trả lời cho câu hỏi: Tôi nên suy nghĩ về thế giới bằng những thuật ngữ nào?"
"Nó là một lý thuyết phân đoạn của lập luận thông minh, được biểu hiện qua ba thành phần: (i) khái niệm cơ bản về lập luận thông minh của biểu diễn; (ii) tập hợp các suy luận mà biểu diễn phê duyệt; và (iii) tập hợp các suy luận mà nó đề xuất."
"Nó là một phương tiện tính toán hiệu quả thực tế", tức là, "môi trường tính toán trong đó quá trình suy nghĩ được thực hiện. Một đóng góp cho hiệu quả thực tế này là sự hướng dẫn mà biểu diễn cung cấp để tổ chức thông tin" để "tạo điều kiện cho các suy luận được đề xuất."
"Nó là một phương tiện biểu đạt của con người", tức là, "một ngôn ngữ mà chúng ta dùng để nói về thế giới."
Biểu diễn tri thức và suy luận là một công nghệ quan trọng hỗ trợ cho Mạng ngữ nghĩa. Các ngôn ngữ dựa trên mô hình Khung với phân loại tự động cung cấp một lớp ngữ nghĩa trên nền Internet hiện tại. Thay vì tìm kiếm qua các chuỗi văn bản như cách thông thường ngày nay, sẽ có thể định nghĩa các truy vấn logic và tìm các trang phù hợp với những truy vấn đó. Thành phần suy luận tự động trong các hệ thống này là một động cơ được gọi là bộ phân loại. Các bộ phân loại tập trung vào các mối quan hệ phân cấp trong một cơ sở tri thức thay vì các quy tắc. Một bộ phân loại có thể suy ra các lớp mới và thay đổi động các bản thể học khi có thông tin mới được cung cấp. Khả năng này rất lý tưởng cho không gian thông tin luôn thay đổi và phát triển như Internet.
Mạng ngữ nghĩa tích hợp các khái niệm từ biểu diễn tri thức và suy luận với các ngôn ngữ đánh dấu dựa trên XML. RDF cung cấp các khả năng cơ bản để định nghĩa các đối tượng dựa trên tri thức trên Internet với các tính năng cơ bản như quan hệ Is-A và các thuộc tính đối tượng. Ngôn ngữ Web Ontology (OWL) bổ sung thêm các ngữ nghĩa và tích hợp với các bộ phân loại tự động.