Knowledge Representation

					Knowledge Representation

        Praveen Paritosh
    CogSci 207: Fall 2003: Week 1
         Thu, Sep 30, 2004
          Elements of a Representation
•   Represented world: about what?
•   Representing world: using what?
•   Representing rules: how to map?
•   Process that uses the representation: conventions
    and systems that use the representations resulting
    from above.

• Analog versus Symbolic
         Marr’s levels of description
• Computational: What is the goal of the
  computation, why is it appropriate, and what is the
  logic of the strategy by which it can be carried
• Algorithmic: How can this computational theory
  be implemented? In particular, what is the
  representation for the input and output, and what
  is the algorithm for the transformation?
• Implementation: How can the representation and
  algorithm be realized physically?
       Marr’s levels of description – 2
• Computational: a lot of cognitive psychology
• Algorithmic: a lot of cognitive science
• Implementation: neuroscience
A closer look
• How knowledge representation works
   – Basics of logic (connectives, model theory, meaning)
• Basics of knowledge representation
   – Why use logic instead of natural language?
   – Quantifiers
   – Organizing large knowledge bases
      • Ontology
      • Microtheories
• Resource: OpenCyc tutorial materials
    How Knowledge Representation
• Intelligence requires knowledge
• Computational models of intelligence require
  models of knowledge
• Use formalisms to write down knowledge
   – Expressive enough to capture human knowledge
   – Precise enough to be understood by machines
• Separate knowledge from computational
  mechanisms that process it
   – Important part of cognitive model is what the organism
  How knowledge representations are used in
             cognitive models
                  Questions,   Answers,    Examples,
• Contents of     requests     analyses    Statements

  KB is part of
  model            Inference               Learning
• Some models                             Mechanism(s)
  knowledge                          Base
        What’s in the knowledge base?
• Facts about the specifics of the world
   – Northwestern is a private university
   – The first thing I did at the party was talk to John.
• Rules (aka axioms) that describe ways to infer new
  facts from existing facts
   – All triangles have three sides
   – All elephants are grey
• Facts and rules are stated in a formal language
   – Generally some form of logic (aka predicate calculus)
                 Propositional logic
• A step towards understanding predicate calculus
• Statements are just atomic propositions, with no
   – Propositions can be true or false
• Statements can be made into larger statements via
  logical connectives.
• Examples:
   – C = “It’s cold outside” ; C is a proposition
   – O = “It’s October” ; O is a proposition
   – If O then C ;if it’s October then it’s cold outside
         Symbols for logical connectives
• Negation: not, , ~
• Conjunction: and, 
• Disjunction: or, 
• Implication: implies, ,
• Biconditional: iff, 
• Universal quantifier: forall, 
• Existential quantifier: exists, 
           Semantics of connectives
• For propositional logic, can define in terms of
  truth tables

    A      B     AB           A       B    AB
    F      F      F             F      F
    F      T      F             F      T
    T      F      F             T      F
    T      T      T             T      T
    Implication and biconditional

A    B   AB          A    B    AB
F    F    T           F    F
F    T    T           F    T
T    F       F        T     F
T    T       T        T     T

AB  AB         AB  (AB)(BA)
                 Rules of inference
• There are many rules that enable new propositions
  to be derived from existing propositions
   – Modus Ponens: PQ, P, derive Q
   – deMorgan’s law: (AB), derive AB
• Some properties of inference rules
   – Soundness: An inference rule is sound if it always
     produces valid results given valid premises
   – Completeness: A system of inference rules is complete
     if it derives everything that logically follows from the
                     Predicate calculus
• Same connectives
• Propositions have structure: Predicate/Function +
   –   R, 2 ; Terms. Terms are not individuals, not propositions
   –   Red(R), (Red R) ; A proposition, written in two ways
   –   (southOf UnicornCafe UniHall) ;a proposition
   –   (+ 2 2) ; Term, since the function + ranges over numbers
• Quantifiers enable general axioms to be written
   – (forall ?x
       (iff (Triangle ?x) (and (polygon ?x)
                               (numberOfSides ?x 3)))
                   Model Theory
• Meaning of a theory = set of models that satisfy it.
   – Model = set of objects and relationships
   – If statement is true in KB, then the corresponding
     relationship(s) hold between the corresponding objects
     in the modeled world
   – The objects and relationships in a model can be formal
     constructs, or pieces of the physical world, or whatever
• Meaning of a predicate = set of things in the
  models for that theory which correspond to it.
   – E.g., above means “above”, sort of
  Caution: Meaning pertains to simplest
• There is usually an intended model, i.e., what one
  is representing.
• A sparse set of axioms can be satisfied by
  dramatically simpler worlds than those intended
   – Example: Classic blocks world axioms have ordered
     pairs of integers as a model
      • (<position on table> <height>)  block
      • (on A B)  p(A) = p(B) & h(A) = h(B)+1
      • (above A B)  p(A) = p(B) & h(A) > h(B)
• Moral: Use dense, rich set of axioms
       Misconceptions about meaning
• “Predicates have definitions”
   – Most don’t. Their meaning is constrained by the sum
     total of axioms that mention them.
• “Logic is too discrete to capture the dynamic
  fluidity of how our concepts change as we learn”
   – If you think of the set of axioms that constrain the
     meaning of a predicate as large, then adding (and
     removing) elements of that set leads to changes in its
   – Sometimes small changes in the set of axioms can lead
     to large changes in the set of models. This is the logical
     version of a discontinuity.
        Representations as Sculptures
• How does one make a statue of an elephant?
   – Start with a marble block. Carve away everything that
     does not look like an elephant.
• How does one represent a concept?
   – Start with a vocabulary of predicates and other axioms.
     Add axioms involving the new predicate until it fits
     your intended model well.
• Knowledge representation is an evolutionary
   – It isn’t quick, but incremental additions lead to
     incremental progress
   – All representations are by their nature imperfect
      Introduction to Cyc’s KR system
• These materials are based on tutorial materials
  developed by Cycorp, for training knowledge
  entry people and ontological engineers
• For this class, we have simplified them somewhat.
• In examinations, you will only be responsible for
  the simplified versions
             NL vs. Logic: Expressiveness

Jim’s injury resulted from his falling.             NL: Write the
Jim’s falling caused his injury.                    rule for every
Jim’s injury was a consequence of his falling.      expression?
Jim’s falling occurred before his injury.

Logic: identify the common concepts, e.g.
                  the relation: x caused y
Write rules about the common concepts, e.g.
                  x caused y  x temporally precedes y
                 NL vs. Logic:
             Ambiguity and Precision

                 •x is at the bank.            •x is running.
NL:                  •river bank?                  •changing location?
                     •financial institution?       •operating?
                                                   •a candidate for office?

Logic:          x is running-InMotion  x is changing location
                x is running-DeviceOperating x is operating
                x is running-AsCandidate  x is a candidate

   Reasoning: Figuring out what must be true, given what is
           known. Requires precision of meaning.
        NL vs. Logic:Calculus of Meaning

   Logic: Well-understood operators enable reasoning:
     Logical constants: not, and, or, all, some

Not (All men are taller than all women).
All men are taller than 12”.
Some women are taller than 12”.

                               Not (All A are F than all B).
                               All A are F than x.
                               Some B are F than x.
          Syntax: Terms (aka Constants)
Terms denote specific individuals or collections
   (relations, people, computer programs, types of cars . . . )

Each Terms is a character string prefixed by
• A sampling of some constants:
   – Dog, SnowSkiing,                             These denote collections
   – BillClinton,Rover, DisneyLand-               These denote individuals :
     TouristAttraction                            •Partially Tangible
   – likesAsFriend, bordersOn,                    Individuals
     objectHasColor, and, not, implies,
     forAll                                       •Relations

   – RedColor, Soil-Sandy
                                                  •Attribute Values
              Syntax: Propositions

Propositions: a relation applied to some
  arguments, enclosed in parentheses
  – Also called formulas, sentences…

• Examples:
  – (isa GeorgeWBush Person)
  – (likesAsFriend GeorgeWBush AlGore)
  – (BirthFn JacquelineKennedyOnassis)
            Syntax: Non-Atomic Terms
• New terms can be made by applying functions to other
    – In the Cyc system, functions typically end in “Fn”
• Examples of functions:
    – BirthFn, GovernmentFn, BorderBetweenFn

• Examples of Non-Atomic Terms:
    – (GovernmentFn France)
    – (BorderBetweenFn France Switzerland)
    – (BirthFn JacquelineKennedyOnassis)

Non-atomic Terms can be used in statements like any other term
• (residenceOfOrganization (GovernmentFn France)
                  Why Use NATs?
• Uniformity
   – All kinds of fruits, nuts, etc., are represented in the
     same, compositional way:
     (FruitFn PLANT) *

• Inferential Efficiency
   – Forward rules can automatically conclude many useful
     assertions about NATs as soon as they are created,
     based on the function and arguments used to create the
      • what kind of thing that NAT represents
      • how to refer to the NAT in English
                    Well-formedness: Arity
• Arity constraints are represented in CycL with the predicate
   • (arity performedBy 2)
   Represents the fact that performedBy takes two arguments, e.g.:
     (performedBy AssassinationOfPresidentLincoln

   • (arity BirthFn 1)
   Represents the fact that BirthFn takes one arguments, e.g.:
   (BirthFn JacquelineKennedyOnassis)
         Well-Formedness: Argument Type
Argument type constraints are represented in CycL with the following
  2 predicates:

    1 argIsa
        (argIsa performedBy 1 Action) means that the first argument
          of performedBy must be an individual Action, such as the assassination
          of Lincoln in:
        (performedBy AssassinationOfPresidentLincoln

    2 argGenl
        (argGenl penaltyForInfraction 2 Event) means that the
          second argument of penaltyForInfraction must be a type of Event, such
          as the collection of illegal equipment use events in:
        (penaltyForInfraction SportsEvent
          IllegalEquipmentUse Disqualification)
       Why constraints are important
• They guide reasoning
   – (performedBy PaintingTheHouse Brick2)
   – (performedBy MarthaStewart CookingAPie)
• They constrain learning
              Compound propositions
   • Connectives from propositional logic can be used
     to make more complex statements
(and (performedBy GettysburgAddress Lincoln)
       (objectHasColor Rover TanColor))
(or (objectHasColor Rover TanColor)
       (objectHasColor Rover BlackColor))
(implies (mainColorOfObject Rover TanColor)
       (not (mainColorOfObject Rover RedColor)))
(not (performedBy GettysburgAddress BillClinton))
              Variables and Quantifiers
• General statements can be made by using variables and quantifiers
    – Variables in logic are like variables in algebra
• Sentences involving concepts like “everybody,” “something,” and
  “nothing” require variables and quantifiers:
                        Everybody loves somebody.
                            Nobody likes spinach.
 Some people like spinach and some people like broccoli, but no one
                           likes them both.
• Adding variables and quantifiers, we can represent more
  general knowledge.
• Two main quantifiers:
   1. Universal Quantifer -- forAll
       Used to represent very general facts, like:
          All dogs are mammals
          Everyone loves dogs
   2. Existential Quantifier -- thereExists
       Used to assert that something exists, to state facts like:
           Someone is bored
           Some people like dogs
• Universal Quantifier
    (forAll ?THING
                                          Everything is a thing.
       (isa ?THING Thing))
• Existential Quantifier:
    (thereExists ?JOE
      (isa ?JOE Poodle))                  Something is a poodle.

• Others defined in CycL:
    (thereExistsExactly 12 ?ZOS (isa
      ?ZOS ZodiacSign))                   There are exactly
                                          12 zodiac signs
    (thereExistsAtLeast 9 ?PLNT (isa
      ?PLNT Planet))
                                          There are at least
                                          9 planets
      Implicit Universal Quantification
All variables occurring “free” in a formula are understood by
  Cyc to be implicitly universally quantified.
So, to CYC, the following two formulas represent the same
   (forAll ?X
       (isa ?X Dog)
       (isa ?X Animal))

     (isa ?X Dog)
     (isa ?X Animal))
                  Pop Quiz #1

• What does this formula mean?

  (thereExists ?PLANET
            (isa ?PLANET Planet)
            (orbits ?PLANET Sun)))
                    Pop Quiz #1

• What does this formula mean?

   (thereExists ?PLANET
             (isa ?PLANET Planet)
             (orbits ?PLANET Sun)))

“There is at least one planet orbiting the Sun.”
                  Pop Quiz #2

• What does this formula mean?

  (forAll ?PERSON1
      (isa ?PERSON1 Person)
      (thereExists ?PERSON2
            (isa ?PERSON2 Person)
            (loves ?PERSON1 ?PERSON2)))
                  Pop Quiz #2

• What does this formula mean?

  (forAll ?PERSON1
      (isa ?PERSON1 Person)
      (thereExists ?PERSON2
            (isa ?PERSON2 Person)
            (loves ?PERSON1 ?PERSON2)))

“Everybody loves somebody.”
                Pop Quiz #3

• How about this one?

        (isa ?PERSON1 Person)
        (thereExists ?PERSON2
            (isa ?PERSON2 Person)
            (loves ?PERSON2 ?PERSON1))))
                   Pop Quiz #3

• How about this one?

          (isa ?PERSON1 Person)
          (thereExists ?PERSON2
              (isa ?PERSON2 Person)
              (loves ?PERSON2 ?PERSON1))))

“Everyone is loved by someone.”
                 Pop Quiz #4

And this?

      (isa ?PRSN Person)
      (loves ?PRSN ?PRSN))
                     Pop Quiz #4

And this?

       (isa ?PRSN Person)
       (loves ?PRSN ?PRSN))

“Everyone loves his (or her) self.”