вторник, 16 июня 2009 г.

Why and when computer search fails?

Why search fails sometimes (or even often)? When search fails often?

Do you notice that the more specific you request the more probable a search will fail? Do you notice that in some cases you would prefer to use not search engine but encyclopedia (as a variant: a portal)? Do you think why is that? The answer is nowadays any search is a word finding. And the more general is term, the more it coincides with meaning of this word. When a request becomes more specific than all depends on what words are used for it. If you use words which can be found in the text and are in the same order, then a search will be successfull. As soon as words vary, you will receive nonsense, though maybe with millions pages in result.

Words are not meaning, words express meaning. Therefore, nowadays any search is just a guess. Some search engines guess better, some do not. And let's say it explicitly and precise: not search but word search. What people really want to search is meaning. There is not a meaning search today.

How a search works today? Realize, you go to a library and ask books on some topic. A librarian leads you in a room with thousands books and propose to search here a little more. There is an alternative: to look in a catalogue and find corresponding topic, which contains books strictly on theme you are interested with. But, in fact, there is still quite many books with thousands of pages. It is easy task if you want to know something about stars and find a book on astronomy. But it is harder task to find a book about Andromeda galaxy. Even harder is to find specifics on what planets found in Andromeda galaxy, etc, etc.

The main difficulty in finding information is any text is just a stream of words. The main alleviation here is this stream is ordered by specific rules. Additional points to overcome: a context which could change meaning of words, a different understanding of the same words, terms, etc, etc. How contemporary search is working in general? It collects words from texts, creates a way to easy and fast find them again, as an option it could create some associations between them. Each search engine, in fact, is a creature which knows words but does not understand what they mean.

But information is not just words. Any piece of information is description of some space-time configuration. There's some objects (real or abstract) with some properties and attributes which introduced, they do something (in reality or in imagination), they linked with some associations, their time entities (like actions, events, etc) linked with another associations. So, meaning of each word, phrase, sentence, paragraph, or text leads us to a space-time construction. Which, could be linked with the whole space-time building which exist in our mind. When we search for something, we search not for words, but for some part of a space-time construction. If we search for "Andromeda", then we imply it is either a galaxy or a music band, or a constellation, or related to mythology, etc, etc. And search engine should know about variants. But not in million pages but in dozens of objects (or actions). If we give more defined words, like "Andromeda planets", it should give us pages or even paragraphs (for example, in an interview of an astronomer) about namely Andromeda planets.

пятница, 22 мая 2009 г.

Can computer solve logical tasks, puzzles, etc?

Is computer able to solve quite simple tasks which are evident for us? By this or that reason, it is not possible nowadays. The matter is there is no algorithms for transforming words in meaning. But let's realize what is needed for that.

We had 8 apples, then we ate 5, how much apples we have now?

1. "we" is a noun.
2. "had" expresses a relation of belonging.
3. "8 apples" is what belongs to "we". Where "8" is a number and "apple" is a unit of calculation.
4. "then" is a sign that consequent events take place after an event of belonging.
5. "ate" corresponds to arithmentic operation of subtracting relating to belonging
6. "how much" means we should apply some unknown arithmetic operation

Basing on this information it is easily to form an equation 8 - 5 = z, which is the description of our task in time. In fact, solution is to identify 3 time points, and what links them (in this case, it is a relation between "we" and "apples").

Example 2.
A man has a wolf, a goat, and a cabbage. He must cross a river with the two animals and the cabbage. There is a rowing boat, in which he can take only one thing with him at a time. If, however, the wolf and the goat are left alone, the wolf will eat the goat. If the goat and the cabbage are left alone, the goat will eat the cabbage. How can the man get across the river with the two animals and the cabbage?

1. "man" is a noun.
2. "has" expresses belonging.
3. "wolf", "goat", and "cabbage" belongs to "man"
4. "he" indicates "man"
5. "cross" means passing something entirely
6. "river" means place
7. "cross a river" means passing from one bank to another
8. "with two animals and the cabbage" indicates what he has
9. "a rowing boat" could cross a river
10. "in which he can take only one thing with him at a time" means there is two place, for him and one thing.
10a. "a rowing boat, in which he can take" means a belonging inside a boat.
10b. "at a time" means one time point.
11. "If, however, the wolf and the goat are left alone, the wolf will eat the goat" refers to a rule
11a. The man, the wolf, the goat, and the cabbage could take place either on one of river banks, or inside a boat.
11b. "are left alone" means participants take place in one of these places.
11c. "the wolf eat the goat" means destructing of the goat
11d. "however" is only for accentuating
11e. "if " means linking of two situations in two time points, which only could happen
12. "If the goat and the cabbage are left alone, the goat will eat the cabbage" refers to another rule (see explanation of the previous item).
13. "How can the man get across the river" means at the beginning the man with all stuff is located at one bank, and in the end he should be at another.

Solution is, in fact, is just trying imaginably to move a man with one thing in a boat from one bank to another bank, and judge what will happen according to rules. If one of rule is applied, as soon as we moved the man with something to the boat, we roll back and try another variant.

This is quite simple examples. You can see that to solve any such example computer need to know a lot of implicit information which seems "evident" for us.

среда, 20 мая 2009 г.

How recognition works?

Try to realize how do you recognize some faces. First, you grasp the entire picture at once. Second, you recognize not specific face but rather difference between faces. Think about why we think all people of other race than you are "similar". Think about why if even we don't know what we see we try to classify it and get answer "what it is". Third, we recognize not images but some "letters" which is present on an image. Then we collect these "letters" to form some "words", etc, etc.

How letter "A" could be recognized? Its description is "two lines which join in one point or go very close in one point, and which crossed by the third line". "line", "join", "point", "cross", etc are "words" or image recognition.

пятница, 8 мая 2009 г.

Why computers do not understand us?

Why computers do not understand us and why they are still not really smart? Why computers still could barely recognize faces and speech? One of explanations sound as "human brain are too optimized for these tasks, whereas computers are not". So, answer to our question is: (a) either computers are not powerful enough to be smart, (b) or they are not constructed appropriately to handle "more intelligent" tasks. There's doubts in plausibility of (a) because computers outsmart human beings as for mechanical calculation and information storing and processing. So, more possibly the problem is in the way how we build computers or how we use them. 

And problem is again the same. Meaning. To understand us computers should handle meaning. Are they ready for it? Sooner no, than yes. There is reasons:
1. There is no ways (at this moment) to translate language or other form of meaning (like images, speech, etc) into meaning.
2. Computer architecture is not optimized for handling meaning.

What solution could look like? 
1. Language could be translated into space-time structures like today it is done by humans "manually" (but, in fact, mentally). All information inside computer (data, metadata, metametadata) should be linked in one meaning space. 
2. Computer architecture must be parallel. Real intellect works rather in massive parallel fashion. It does not focus at one point and then scans the entire picture. It handles information in thousands recognition points in parallel. And after, each point lives own life.
  a. Real intellect works similarly to thousands (or even more) processors. 
  b. These processor should be less powerful (say, not 10K MIPS but even 1-10). 
  c. We need parallel memory and hard-drives which could be more easily shared between thousands of processors.
c1. Multi-entry memory. Each entry is responsible for own segment. Thus, processors could read memory from different segments simultaneously.
c2. Redundant memory. Memory could multiplicated in several places. Thus, writing will be slower, but reading is faster, because we can read from alternative sources.
  d. We could avoid memory usage at all. If each processor would own 1-10Mb of memory it would cover all needs.
  e. We could have dedicated to processor hard-drive (of course, by less capacity, say, 16-128Mb).
  f. We need the concept of processor/memory load balancing and/or clustering (which, for example, would use "adjacent" processors to minimize communication cost).

Such concept of computer architecture could exist in parallel with commonly-used one. In fact, they solve different tasks: one of cognition, another one of information storing/processing.

четверг, 7 мая 2009 г.

What is meaning?

What is meaning? Meaning usually defined as something which is conveyed with language. Then, what is language? It is a form of communicating for conveying meaning. Seems at all we think in the language we speak. Is it true? Partly, yes. At least, we use the jargon specific for our profession. At most, we often interpret facts according with our inner world. But there is something what ties us all together. And many things we understand the same way: in skyscrapers or in jungle. Moreover, we understand animals and animals understand us. With or without language. But not only animals, also we understand stones and planets. If you call it language then the entire Universe is such language. And this is very good point.

There is the only source of our knowledge. Space-time. And this is all what meaning is about. Period. It seems like very evident point. But namely so no one does not proceed further. There is a lot of theories which tried to interpret a language and a thinking. But they all lack a basis which they all ground on. There is only one source of meaning. Meaning is a direct descendant of space-time and consists of: 
(a) nouns, objects, anything which corresponds to space, 
(b) verbs, actions, anything which corresponds to time, 
(c) noun relations, adjectives, anything which links space entities, 
(d) verb relations, adjectives, adverbs, modality, anything which links time entities.

Why these four? There is space-time and two constituents. Because intellect (which is a producer of meaning) could not (and should not) to keep the entire space-time which was lived through, it reduce information and stores not objects and actions but only relations between them. All the rest is only derivatives of these four entities.

вторник, 5 мая 2009 г.

On meaning...

What is meaning? There is a lot of definitions: this and that. But could meaning be defined more precisely?