Wednesday, July 7, 2010

Consciousness, language and my dictionary software

Previously, I had written some articles in Bulgarian on the Hierarchical Temporal Memory (HTM) model introduced by Jeff Hawkins. I really liked the idea of Hawkins to mimic the function of the neocortex and its aptitude for cause inference so I wanted to present it in my native language.

Currently, I'm designing my next version of the dictionary software (AEnglish Dictionary) that I have developed some years ago. At first there might not be an obvious link between the two subjects but whenever I think on how to store and use a dictionary database in a good way, I always end up with questions on how do we, humans, do it. In general I'm inclining to try to mimic some function of the neocortex.

If I'm allowed to cite Wikipedia's article on the neocortex:
"It is involved in higher functions such as sensory perception, generation of motor commands, spatial reasoning, conscious thought and language."
When I first got introduced with HTM, I instantly found that it should be capable of doing "sensory perception", "generation of motor commands" and "spatial reasoning". However, when I considered it as a model for my computer dictionary, I didn't find it that attractive. I started looking at graph databases and ditched Hawkins' model without paying attention to why my intuition said that I can't use it for "conscious thought and language".

Recently I was thinking about my dictionary graphs and language, and neocortex, and when I got to HTM, I realized that I understood how the model is supposed to do the cause inference but what I didn't see it do is thought (language). That voice mumbling in your head was not in the model. HTM's tree showed me how to create an idea or object that exists in our minds but besides observing and reacting, we have another function in our neocortex that in my opinions is like a separate impulse. It's not a neocortex input or output impulse to the other parts of the brain. It's an inner impulse. It's maybe a long running impulse that's overseeing a large part of the inputs and outputs, and is also the source of some of those.
Side note: I'm talking of course about the normal case, so for a better understanding of the subject, it's always good to refer to pathologies. I'm not a specialist but I consider that schizophrenia and dissociative identity disorder are the right starting point to look for thought disorder cases.
To come to the matter, I would like to return to the observable part of consciousness, thought and language: speaking and writing.
Side note (sorry ^^): It's interesting to mention that speaking and writing follow their own history. In all humans' history, people developed some language and then began to write. In an individual's history, a human starts to speak and then learns to write. I guess once we form our view of the world, we start to form our consciousness by speaking (a language). Although writing is the same as speaking, we learn it afterwards. That subject is interesting and maybe I should create another post. The case of speech-impaired people should also be covered.
So in the case of my dictionary software, I'm interested in language and its ability to encode and decode the information stored in our neocortex. Our consciousness helps in observing our thoughts' use of language. Here is what my consciousness found out:

Somebody once said: "I think, therefore I am". If I hear the sound, my neocortex (modeled by an HTM) can create a language representation of the words "I think" in my mind. I can also learn to say those words myself or to write them on a sheet of paper. What if I don't want to use an HTM to create, store and output a language? Let's mimic the whole "language thing"... What model or interface can I use to have people encode and decode language that is better than dictionaries, thesauri, etc.? We live in the digital age so I hope I can come up with something :)

Maybe I should become more conscious (aware) on the relation between HTM's top nodes and the following phrase from Wikipedia:
A language is a system of signs (indices, icons, symbols) for encoding and decoding information.

No comments:

Post a Comment