Your Federal Quarterly Tax Payments are due April 15th Get Help Now >>

전문가 시스템 Expert Systems by elfphabet3


									                            Modified from the slides
                            by SciTech Media

전문가 시스템 (Expert Systems)
(Lecture Note #15)

                2002년 2학기

            단국대학교 컴퓨터공학과
     Expert Systems
     전문가 시스템의 배경
     Basic Components of Expert Systems
     Expert System Building Tool
     Convectional Program vs. Expert Systems
     Application Areas
     구축 과정
     지식베이스 구성과 표현
     추론 기법
     지식 공유 모델

전문가 시스템 (Expert Systems)
    배경: 일반적인 문제 풀이 보다는 특정 문제 영역에
     집중하여 성능 개선
    특정의 문제를 해결하기 위해 특정의 전문적인 지식
     을 기반으로 실행되는 컴퓨터 시스템
    특정 문제 영역에서 그 영역의 인간 전문가가 의사
     결정을 내리는 것과 유사하게 동작하는 컴퓨터 시스
    인공지능 분야에서 상업적으로 성공한 대표적 분야
    기능적 측면에서 필요한 요소
       –   추론 엔진 (inference engine)
       –   사용자-시스템 간의 상호작용에 의한 데이터 획득
       –   결론의 정당화 (Justification)
       –   모듈 구조 (Modular architecture)
전문가 시스템의 배경
                 전문가 시스템의 배경

  high                                    매우 특화된 프로그램을
                                           생성하기 위해 좁은
                                         문제 영역에 대한 고수준의
                                           정제된 지식을 이용

                               표현 및 탐색 기능을
                             향상시키는 일반 방법론을
                              찾고, 특화된 프로그램을
                                 구축하고자 함

                    문제해결을 위한 일반
                   방법론을 찾고, 범용-목적
  low              프로그램을 구축하고자 함

                   1960           1970        1980
전문가 시스템
     Breakthrough
      – To make a program intelligent, provide it with lots of high-quality,
        specific knowledge about some problem area
     Building Expert Systems
      – Knowledge Engineering: The process of building an expert system
      – Knowledge Engineer: Expert-system builder
      – Need the interaction between the KE and human experts
          • The KE extracts procedures, strategies, and rules of thumb for problem solving
          • The KE builds this knowledge into the expert system
      – Result: a program that solves problems like the human experts

                Queries, Problems

       Domain                       Knowledge                              Expert
       Expert                        Engineer         Strategies,          System
                                                     Domain rules
                Answers, Solutions
Basic Components of Expert System (ES)
     Experts/Knowledge Engineer
     Knowledge Base
     Inference Engine
     User Interface

Basic Concepts of Expert Systems
       Experts
         – Recognizing and formulating the problem
         – Solving the problem quickly and properly
         – Explaining the solution
         – Learning from experience
         – Restructuring knowledge
         – Determining relevance
       Expertise is the extensive, task-specific knowledge
        acquired from training, reading, and experience
         – Theories about the problem area
         – Hard-and-fast rules and procedures
         – Rules (heuristics)
         – Global strategies
         – Meta-knowledge (knowledge about knowledge)
         – Facts

Basic Concepts of Expert Systems (2)
       Transferring Expertise
        – Objective of an expert system
           • To transfer expertise from an expert to a computer system
           • Then on to other humans (non-experts)
        – Activities
           •   Knowledge   acquisition
           •   Knowledge   representation
           •   Knowledge   inference
           •   Knowledge   transfer to the user
        – Knowledge is stored in a knowledge base
        – Two knowledge types
           • Fact / Procedures (rules)

The Knowledge Engineer
       Helps the expert(s) structure the problem area
        by interpreting and integrating human
        answers to questions, drawing analogies,
        posing counterexamples, and bringing to light
        conceptual difficulties
       Knowledge Acquisition Subsystem
        – Knowledge acquisition is the accumulation, transfer
          and transformation of problem-solving expertise
          from experts and/or documented knowledge sources
          to a computer program for constructing or expanding
          the knowledge base
       Usually also the System Builder

The User
       Possible Classes of Users
        – A non-expert client seeking direct advice - the ES
          acts as a Consultant or Advisor
        – A student who wants to learn - an Instructor
        – An ES builder improving or increasing the knowledge
          base - a Partner
        – An expert - a Colleague or Assistant
       The Expert and the Knowledge Engineer
        Should Anticipate Users' Needs and Limitations
        When Designing ES

Knowledge Base
      The knowledge base contains the knowledge
       necessary for understanding, formulating, and
       solving problems
      Two Basic Knowledge Base Elements
       – Facts
       – Special heuristics, or rules that direct the use of
       – Knowledge is the primary raw material of ES
       – Incorporated knowledge representation

Inference Engine
     The brain of the ES
     The control structure or the rule interpreter
     Provides a methodology for reasoning
     The computer is programmed so that it can
      make inferences
     Major Element
        – Interpreter
        – Scheduler
        – Consistency Enforcer

User Interface
     Language processor for friendly, problem-
      oriented communication
     NLP, or menus and graphics
     Explanation subsystem
        – Traces responsibility and explains the ES behavior by
          interactively answering questions
           •   Why?
           •   How?
           •   What?
           •   (Where? When? Who?)
        – Knowledge Refining System
           • Learning for improving performance

Expert System Building Tool
       Expert System Building Tool (not the expert
          Expert System
          Building Tool

           Expert System
         Building Language


What Good Are Expert Systems
       What Good Are Expert Systems
        – Why not use real Experts?
        – Why do we develop expert systems
       Comparing human and artificial expertise: the
        good news

                             The Good News
            Human Expertise           Artificial Expertise
                Perishable                Permanent
            Difficult to transfer      Easy to transfer
           Difficult to document      Easy to document
              Unpredictable               Consistent
                Expensive                 Affordable

Why keep a human in the loop
       Why keep a human in the loop?
        – Why not eliminate human expert replacing them with
          expert systems?
       Comparing human and artificial expertise: the
        bad news
                            The Bad News
             Human Expertise          Artificial Expertise
                 Creative                  Uninspired
                Adaptive              Needs to be told
            Sensory experience         Symbolic input
               Broad focus              Narrow focus
              Commonsense            Technical knowledge

How Are Expert Systems Organized
       How Are Expert Systems Organized?
        – Organizing Knowledge
           • Knowledge: The information a computer program needs with
             which it can behave intelligently
           • take the form of facts and rules
           • sometimes considers uncertainty
        – Many of rules in expert systems are heuristics
           • Comparing Algorithmic with Heuristic methods

The structure of an Expert System
       The structure of an Expert System

                 Expert System

                Knowledge Base            Knowledge
              (Domain Knowledge)        Representations


                 Inference Engine
             (General Problem-Solving

Knowledge-Based Systems
      Knowledge-Based Systems

           Artificial               Exhibit intelligent
         Intelligence              behavior by skillful
          Programs               application of heuristics

                                 Make domain knowledge
       Knowledge-based           explicit and separate from
          Systems                  the rest of the system

           Expert                Apply expert knowledge
          Systems                 to difficult, real world

How Do Expert Systems Differ from
Conventional Programs

       How Do Expert Systems Differ from
        Conventional Programs
        – Comparison of data processing and knowledge

            Date Processing         Knowledge Engineering
        Representations and use     Representation and use
                of data                 of knowledge
              Algorithmic                   Heuristic
           Repetitive Process          Inferential process
        Effective manipulation of   Effective manipulation of
            large data bases         large knowledge bases

Basic Characteristics of an Expert
       Basic Characteristics of an Expert Systems
        – Characteristics of an expert system that distinguish it from
          a conventional program

    Expert System

                                         Exhibit expert performance
               Expertise                 Have high level of skill
                                         Have adequate robustness
                                         Represent knowledge symbolically
               Symbolic reasoning
                                         Reformulate symbolic knowledge
                                         Handle difficult problem domains
                                         Use complex rules
                                         Examine its own reasoning
                                         Explain its operation

            • Expert Systems sometimes make mistakes

What Have Expert Systems Been
Used For
    What      Have Expert Systems Been Used For?
     – Basic Activities of Expert Systems

     Category         Problem Addressed
     Interpretation   Inferring situation descriptions from sensor data
     Prediction       Inferring likely consequences of given situations
     Diagnosis        Inferring system malfunctions from observables

     Design           Configuring objects under constraints
     Planning         Designing actions
     Monitoring       Comparing observations to expected outcomes
     Debugging        Prescribing remedies for malfunctions
     Repair           Executing plans to administer prescribed
     Instruction      Diagnosing, debugging, and repairing user
     Control          Governing overall system behavior
    Expert Systems
    전문가 시스템의 배경
    Basic Components of Expert Systems
    Expert System Building Tool
    Convectional Program vs. Expert Systems
    Application Areas
    구축 과정
    지식베이스 구성과 표현
    추론 기법
    지식 공유 모델


To top