Knowledge Engineering (IT4362) Quang Nhat NGUYEN (quang.nguyennhat@hust.edu.vn) Hanoi University of Science and Technology School of Information and Communication Technology Academic year 2020-2021
Content ◼ Introduction • Knowledge engineering • Knowledge-based systems • Social impact ◼ First-order logic ◼ Knowledge representation ◼ Logic programming ◼ Expert systems ◼ Uncertain reasoning ◼ Knowledge discovery by Machine learning ◼ Knowledge discovery by Data mining Knowledge Engineering 2
Definition of Data ◼ Data (the plural of datum) are just raw facts (Long and Long, 1998) ◼ Data . . . are streams of raw facts representing events . . . before they have been arranged into a form that people can understand and use (Laudon and Laudon, 1998) ◼ Data is comprised of facts (Hayes, 1992) ◼ Recorded symbols (McNurlin and Sprague, 1998) → Data is often defined as facts or symbols Knowledge Engineering 3
Definition of Information ◼ That property of data which represents and measures effects of processing them (Hayes, 1992) ◼ Data that have been shaped into a form that is meaningful and useful to human beings (Laudon and Laudon, 1998) ◼ Data that have been collected and processed into a meaningful form. Simply, information is the meaning we give to accumulated facts (data) (Long and Long, 1998) ◼ Data in context (McNurlin and Sprague, 1998) → Information is often defined as data processed or transformed into a form or structure suitable for use by human beings → Information comes after (does not appear before) data Knowledge Engineering 4
Definition of Knowledge ◼ The result of the understanding of information (Hayes, 1992) ◼ The result of internalizing information (Hayes, 1992) ◼ Collected information about an area of concern (Senn, 1990) ◼ Information with direction or intent – it facilitates a decision or an action (Zachman, 1987) → Knowledge is often defined as understanding of information Knowledge Engineering 5
Pyramid of Data/Information/Knowledge Knowledge on knowledge (e.g., how/when to apply) Knowledge- based Meta- Understanding of a systems domain. Can be applied to Knowledge solve problems Knowledge Lower volume. Higher Information value. With context and Management associated meanings information Databases, systems transaction Data systems Large volume. Low value. Usually no meaning/ context (Adapted from “Knowledge Engineering course (CM3016), by K. Hui 2008 - 2009”) Knowledge Engineering 6
Example of Data/Information/Knowledge ◼ Data ❑ The temperature outside is 5 degree Celsius ◼ Information ❑ It is cold outside ◼ Knowledge ❑ If it is cold outside then you should wear a warm coat → The perceived value of data increases as it is transferred into knowledge → Knowledge enables useful decisions to be made Knowledge Engineering 7
Definition of Knowledge Engineering ◼ Knowledge Engineering (KE) ❑ An engineering discipline ❑ To integrate knowledge into computer systems (in order to solve complex problems normally requiring a high level of human expertise) ◼ KE enables computer systems ❑ To build knowledge bases ❑ To maintain knowledge bases ❑ To exploit knowledge bases to provide solutions to real-world problems Knowledge Engineering 8
Main activities of KE ◼ Knowledge representation ❑ To represent (encode) knowledge in the knowledge base ◼ Knowledge acquisition ❑ To obtain knowledge from various sources (e.g., human experts, computer sources of data, books, etc.) ◼ Knowledge validation ❑ Knowledge is checked using test cases for adequate quality ◼ Inferring (reasoning) ❑ To form inferences in the knowledge so that the system can make a decision or provide advice to the user ◼ Explanation and justification ❑ To explain how a conclusion was reached using knowledge in the knowledge base Knowledge Engineering 9
Knowledge-based systems ◼ Knowledge-based systems (KBSs) are those systems that maintain and exploit knowledge to solve real-world (often complex) problems ◼ KBS = Knowledge + Inference (Reasoning) ◼ Knowledge in a KBS ❑ Specific to a domain (application area) ❑ Represented and stored in the system’s knowledge base ◼ Inference (reasoning) in a KBS ❑ Apply domain-specific knowledge to search for a solution (if any) ❑ Simulate a logical reasoning process ◼ E.g., Simulate the reasoning process of experts in the given domain Knowledge Engineering 10
Main features of KBSs ◼ The separation of the knowledge from how it is used ◼ The use of specific-domain knowledge ◼ The heuristic (experience) rather than algorithmic nature of the knowledge employed ❑ Solve problems by heuristic methods , not just only by algorithms ◼ Simulate human reasoning about a problem domain ❑ Perform reasoning over representations of knowledge Knowledge Engineering 11
Architecture of a KBS (1) Knowledge-based system User Inference User interface engine Working memory Knowledge base Knowledge Engineering 12
Architecture of a KBS (2) ◼ Knowledge Base (KB) ❑ Representation of knowledge ❑ Contains expertise (domain-specific knowledge), such as relationships/association between objects/concepts, problem- solving strategies, etc. ◼ Inference Engine ❑ Use of knowledge ❑ Applies knowledge in the KB in order to find a solution to the current problem Knowledge Engineering 13
Architecture of a KBS (3) ◼ Working Memory ❑ To temporarily store status of the current problem solving session ◼ facts about the current situation ◼ any (intermediate) conclusions drawn ◼ hypothesis (goals) ◼ User Interface ❑ Allows the KBS to interact with the user ❑ User provides facts (i.e., describes the problem) and queries the KBS to get a solution ❑ The KBS returns solution(s) Knowledge Engineering 14
Main steps of development of a KBS ◼ Problem identification and analysis ❑ Elicit requirements (e.g., organizational needs and constraints) ◼ Knowledge engineering ❑ Represent knowledge, acquire knowledge, transfer acquired knowledge to the knowledge base, construct inference engine ◼ System modeling and design ◼ System implementation ❑ Develop system prototype ◼ System evaluation ❑ Test the knowledge, test the reasoning, and test the system ◼ System maintenance Knowledge Engineering 15
Knowledge acquisition ◼ To acquire (elicit) knowledge from sources of expertise, and transfer it to the knowledge base ◼ Sources of expertise: human experts, books, magazines, databases, the Internet, etc. ◼ Methods of knowledge acquisition ❑ Manually: interviewing, or observing and tracking the reasoning process ❑ Automatically: using computer programs to discover knowledge ❑ Semi-automatically: interviewing human experts, with the aid (support) of computer programs/tools Knowledge Engineering 16
Knowledge representation ◼ A number of knowledge representation methods ❑ Production rules, Frames, Semantic networks, Ontology, Probabilistic models, etc. ◼ Completeness ❑ Support the acquisition of all aspects of knowledge ◼ Conciseness ❑ Efficient acquisition, Easy storage and access ◼ Computational efficiency ◼ Transparency ❑ Enable understanding of the system’s behaviour and conclusions Knowledge Engineering 17
Typical types of KBSs ◼ Expert systems ❑ To mimic the decision-making process of human experts in a specific domain ◼ Machine learning-based systems ❑ To learn from experience (i.e., examples) to discover knowledge ❑ E.g., Neural networks, case-based reasoning, decision tree, etc. ◼ Data mining-based systems ❑ To identify relationships in data (in large datasets) ❑ E.g., To identify products/services often purchased at the same time ◼ Intelligent agent-based systems ❑ To learn and make increasingly complex decisions on behalf of their users, in order to reach (achieve) their predefined goal(s) Knowledge Engineering 18
Typical tasks of KBSs (1) ◼ Decision making support (e.g., decisions of product selection) ◼ Interpretation of data (e.g., sonar signals, vocal signals) ◼ Diagnosis of malfunctions (e.g., diseases, machine fails) ◼ Structural analysis of complex objects (e.g., chemical compounds, DNA sequences) ◼ Configuration of complex objects (e.g., computer systems) ◼ Recognition of objects (e.g., faces, hand-written words) Knowledge Engineering 19
Typical tasks of KBSs (2) ◼ Classification of concepts (e.g., animals, web pages’ categories) ◼ Prediction of consequences of situations (e.g., storm forecasting) ◼ Scheduling activities (e.g., schedule of courses) ◼ Planning sequence of actions (e.g., robot’s motion and actions) ◼ Natural language understanding (e.g., language translation of a text) Knowledge Engineering 20
Advantages of KBSs ◼ Distribution and availability of knowledge (expertise) ❑ KBSs enables knowledge to be exploited in any time , and in anywhere ◼ Consistent results ❑ Given a problem, results returned by different persons (or the same person at different moments) may be inconsistent ◼ Retaining of knowledge ❑ To store obtained knowledge for reuse in the future ◼ Able to solve problems with incomplete/uncertain data and knowledge ◼ Able to explain the system’s produced solutions Knowledge Engineering 21
Recommend
More recommend