Our Project


Modern Conversational AIs focus on providing a "smooth" conversation - sophisticated pattern-matching algorithms make machine-generated sentences sound congenial and, well, human. More interesting, however, is how Artificial Intelligences like Jabberwacky "learn" new vocabulary.


Our project focuses on this kind of machine learning - a simple example of how a computer can associate meaning with the words of a sentence. Although what exactly constitutes an "intellect" is a matter of philosophy, the ability to learn blurs the line between appearing intelligent and being intelligent

The Problem


Imagine trying to teach someone the definition of a word they didn't know. How could you tell them what it meant? There are really only two ways:

  1. You could physically show it to them - if they don't know what a "tree" is, take them to one.
  2. You could describe it to them - although they would have to be pretty slow, even for a fictitious character in a mental exercise, to not know what a "tree" is you could describe it to them using words they did know.

Now, imagine this person is a not really a person at all, but a computer. Imagine that you were so possesed as to enlighten this computer, to show it a whole new world of biology. Which method would you pick? Any machine, personal computers amongst them, lack the cognitive mind for method #1; I could lead my Windows box to a tree, but I would look pretty silly defying a soulless automaton to comprehend. Simply put, there is no way to "show" a computer anything.


This leaves method #2. On the surface, this seems equally impossible - how do you describe a word to a computer in terms of other words, when a computer knows no words to begin with? You can tell a person that a tree is like some object x, y, or z because they already know what these things are. Remember, however, that our problem is that a computer knows absolutely nothing. Can you say "a tree is a plant" to someone who doesn't know what a plant is, or "a plant is a green, leafy thing" to a person who knows nothing of colors and has never heard of leaves? Can you describe anything at all to a machine that lacks even the simplest nucleus to start from?


Short answer: yes, if you cheat a little.

Our Approach


The "cheat" is simple: a computer need not know what a "plant" is to know that a tree is one. Does the computer know what a tree is? Or a plant? No, but it knows that whatever they are, this "tree" is an example of this "plant" thing. It's like telling the computer just trust me on this one.


Now, repeat this a few more times. Tell it that a "plant" "grows" in the "ground." Tell it about certain types of trees, that a "maple" is a tree, that trees have "leaves," that some trees grow "fruit."


At the end of this process, our computer will still not know what a tree is. Nor will it know what ground is. But, it knows that a tree grows in the ground - and that's enough for most purposes.


Our AI would never know what anything actually is - but with enough circular definitions, it could come imperceptibly close.

Our Implementation


Our project is implementing a basic version of a circularly-defined vocabulary, where a word's "meaning" is simply its relationship to other words.


This vocabulary is represented by an "Indexed Web" (actually a form of a graph), an aggregate of a multitude of individual "word" nodes linked to other nodes by their associations. A tree is a plant; in our structure, the tree node would have an "always is" link to the "plant" node. Trees have bark, necessitating an "always have" link to the "bark" node, and a tree "can have" (but doesn't have to have) "fruit".


Words are stored with their spelling, a hint of their usage type ("bark" the verb vs. "bark" the noun), and any number of the following types of links:


The "intelligence" of an AI using our structure comes from its ability to draw conclusions through simple list traversal. It can examine our graph structure and find that:


and conclude that (despite the awkward phrasing) that a tree grows. It teaches vocabulary in terms of "if p then q."

< Return Home