Posts tagged ‘Natural Language’
I stumbled over an interesting post on another site (http://www.ioremap.net/node/283) by zbr, a very bright guy which prompted a long comment. I wanted to repost it here to further expand upon later.
NLP based on a grammatical rules engine, while an interesting toy, is essentially a dead-end when it comes to developing an approach to cognition. Language is a complex system that has evolved over time and continues to evolve each and every day. Grammar is an artificial construct that we have developed as a vehicle to describe language but describing something doesn’t mean you understand it or that it can be used to extract knowledge or understanding from what it attempts to describe.
Take the example from Cyc (http://www.cyc.com/cyc/technology/whatiscyc_dir/whatsincyc):
* Fred saw the plane flying over Zurich.
* Fred saw the mountains flying over Zurich.
Grammar itself will help develop a weighted tree of the sentences and you’ll be able to describe the scene – but the system will lack enough reference to be able to respond. In such a situation what is the proper response?
To answer we need a reference model – which luckily we have all around us everyday – people. What do people do when they encounter a phrase and don’t have enough information to process it? They ask a question. What question would they ask? Who’s fred? What’s a plane? What’s Zurich? or would they laugh out loud as they exclaim (and picture) the mountains flying? (in itself a valid hypothesis)
Knowledge is obtained from the answer to the question – as it provided an addendum – a relationship between the phrase, the question and the answer. Additionally the question itself often gets corrected – providing a short-circuit feedback loop to the knowledge acquisition process. The description of the answer also provides information about the relationship of items in the phrase to other information stored within the system.
What’s Zurich? Zurich is the name of a city in a country called Switzerland.
(assuming that there is some information about what a plane is or that there is some relationship that interprets plans as machines like a car)
What color is the planes? Planes are all shapes and colors but this plane is bright green.
(note in this example the question indicates the singular but uses the plural – which is corrected in the answer)
The question provides insight into the internal state of the system we are interacting with (be it a computer program, a child we’re reading a story to or a colleague we are interacting with). Inherent in any interaction is feedback, correction, elucidation of terms and phrases to assist understanding with those we are interacting with. Often it happens in a subconscious way and tends to be in the style of continuous correcting feedback (the same approach we use when we reach down to pick up an object off of a surface).
A system needs to adapt & correct, to provide feedback (both to itself and with the other party it is interacting with) in a way that’s more than just updating state – but that also affects the very rules that make up the system itself. This, however, is where many people tend to start going wrong. A common pitfall is that the rules are considered to be the weightings between nodes of information or its relationships. This however means that the underlying reference system (often implemented as grammar rules) rarely changes – which in essence lobotomizes the system. It’s an indicator that you’ve put too much forward knowledge into the system.
Take how children learn – not the mechanic but the approach that’s used and not just for language or understanding (which is what we are trying to replicate when we implement the system) but with everything they do. Nature, bless her cotton socks, is frugal with how she expends energy – so she reuses as much as possible (in essence cutting things down to their most common denominator). You’ll see the same approach being uses for walking, talking, breathing, looking and following objects – in everything that we see, do or think. Over time the system specializes domains of knowledge – further compartmentalizing – but also reusing that which has been learned and found to be valid in the domain. Which in turn allows for further specialization and compartmentalization.