Cognitive Approach to NLP

    

Introduction to Procedural Semantics

    

    

teaching.dessalles.fr/CANLP

Many sentences make sense out of context, or within a reasonable "average" context.

This is why machine translation seems so efficient.

La vanille est une épice constituée par le fruit de certaines orchidées lianescentes tropicales

➜    Vanilla is a spice made from the fruit of certain tropical vine orchids.

However, on many occasions, interpretation requires genuine intelligence, which presupposes the ability to interpret in context.

  • Desk.png"Can you get the little red book on the right stack on my desk?"
    ➜    which book?
However, on many occasions, interpretation requires genuine intelligence.

    
  • Galaxy.jpgMolecule.jpg"A small galaxy" vs. "A small molecule"definitely
    not the intersection with the set of small objects

  • Trees.pngKeys.png"I lost my keys to the right of the tree."
    how far away from the tree? 1cm, 1km?


However, on many occasions, interpretation requires genuine intelligence.

    
  • Footsteps.jpg"He felt so lonely in this desert that he used to walk backwards sometimes to see footsteps in front of him."
    (after Hortence Vlou)
    whose footsteps are we talking about?

Procedural semantics computes meaning in context.

One crude way to achieve meaning construction is to translate phrases into Prolog predicates,
and then to execute the resulting Prolog program using a knowledge base.
Background knowledge
book('Kritik der reinen Vernunft’, yellow, left)
book('Des intelligences TRES artificielles’, white, right)
book('On the origin of species’, beige, right)
book('La serpe d'or’, white, left)
book('The geometry of meaning’, white, right)
book('Metaphors we live by’, red, right)

For example:
"the little red book on the right stack on my desk"




?- book(T, red, right).
    T = 'Metaphors we live by'.


This Prolog-based solution is great, as it achieves interpretation in context.

However, it only works if we have convenient predicates that match words.
The Prolog-based solution won’t work when

  • the evaluation of predicates isn’t purely logical, but requires analog computation
    (e.g. "small", or "to the right of the tree")
  • undertanding requires visualizing the scene
    ("walk backwards to see footsteps")
  • interpretation depends on semantic constraints
    (binding, aspect...)
The present lab deals with the Prolog-based interpretation.

    
Echecs.jpg We will be able to interpret     
"the pawn to the right of the white knight"
as meaning:
pawn(black,(2,5))
(the black pawn at location (2,5))


In subsequent lectures and labs,
we will consider

  • the contrast operation and
  • the rules of Aspect.