Artificial Intelligence Theory and Practice under the Natural Language Environment (Chinese) - Some of the scattered ideas for intelligent implementation
Eishn in Guangzhou, January 3, 2005
There are many ways to achieve artificial intelligence. Including a neural network; as well as data mining methods such as an expert system or a knowledge base - they are all used to achieve universal artificial intelligence. Dedicated artificial intelligence is usually designed to solve specific problems (such as chess).
Here, universal intelligence seems to be more fascinating, the types of people in the sci-fi movie (they can communicate with others). But really wants to achieve it, it seems to be much more troublesome than dedicated intelligence. Therefore, the so-called "strong manual intelligence can be truly realized" becomes a debate. Of course, (the author believes) No intelligence is unable to implement (temporarily throwing some philosophical or other thinking), but for our ordinary people, it seems to be in a simple small room. In a shabby personal computer truly realizes a common artificial intelligence - this idea is like a science fiction movie.
Back to the previous, general artificial intelligence "realized seems to be more troublesome than dedicated intelligence." Indeed, dedicated intelligence can use many beautiful mathematics and technologies. Open any "Artificial Intelligence Introduction" can get a series of dazzling theories, but should be cautious when using them, because these theories and technologies are likely to turn your artificial intelligence into a dedicated smart play chess machine, or A data warehouse, an expert system. Similarly, some emerging programming tools may make your program smart, but it may make your program "always so smart": After the computer thinks logic is set, stop upgraded or only Very limited upgrade, in the worst case, it will be too paranoid for past behavior, and cannot adapt to new things.
Before the entire design, let's recall the biggest difference between people and machines: people, abstract thinking, and will learn - to achieve these, universal intelligence has been successful.
Abstract thinking, in other words, "cluster", put some similar things, from a large class to the small class, form an abstract tree. Anything can find a final position in the abstract tree, this location is the category of this matter, or an exhibit of it.
Since it is a tree structure, it can naturally be implemented in a computer. But it doesn't seem to be as simple as the whole situation. In fact, the tree structure we use on the computer should be the theme tree, the biggest difference between the theme tree and the abstract tree - Abstract tree This data structure itself is intelligent: abstract tree has automatic clustering function, the key here The word is: "Auto" - and the keyword of the theme tree is "manual". This has caused a distinctive style: the theme tree has a so-called "semantic information". Its classification of things is understandable, and the category of abstract trees can only be understood, this is reflected A principle - who classizes, who explains.
The theme tree is used for expert system. The expert system is not a robot of self-study. It knows that people tell it, essentially a medium to communicate with people, need to manage the system of the system. The knowledge base needs to explain its storage content to people, so each data item has semantic information - this is the characteristics of the theme tree. Self-learning computer programs inevitably use abstract trees, its own management information, store information can be understood, it is possible, there is no semantic information for people. Abstract trees are what we need.
The core of the abstract tree is the implementation of automatic clustering. The specific method will then say. Here, let us first consider this, how to happen in the current most intelligent computing machine "person". As we all know, people are taking forget, maybe we want to remember all things, but it is too difficult. So I may only remember the characteristics of a thing - remember that this feature is nothing more than "it has appeared many times" and it is impressed. So, finally, we may have forgotten all things, and only the features are left, it is a tool that represents it. Because not remember, it can only be used to express things, and things are classified because of feature or attribute (abstract thinking, forgetful). The basis of classification here is: attribute. The method of obtaining a property attribute is nothing more than using eyes, touched by hand, listening to the ear, smelling with nose. So you can imagine that all classifications of human beings are based on visual, auditory, tactile and taste. After people have experienced, the acquired transaction property is mixed with the experience, forming a complete attribute-based automatic classification system (will be involved later). That is, abstract tree, it stores things and its properties, and constantly reintegrates and combines categories. The last thing, we named the nodes of the abstract tree, it may be "big", "small" may also be "sour", "sweet", "bitter", "spicy" one ... Of course, That is the matter after the language is invented. Its rationality is reflected in the abstract tree only to save several properties of things that can be classified, and there is no need to record all the fine features of each thing (of course, what we don't need to keep it down without labor. A large amount of details, this is more conveniently meal in neural network systems), which saves storage space. Abstract thinking is one of the foundations of learning.
If you know a thing is learning, then abstract thinking has achieved the function of learning. However, in addition to knowing, I need to know how to feedback. This is what is doing and what to do, or to solve it by Learning.
The nasal ancestors of all behaviors are conditions reflection. From philosophical speakers and organisms are actually not sacred, they are actually the same set with non-organisms. Non-organisms also have conditional reflection, just like a seesaw, if we give it an external force, it will make a move we are well known (starting around the axis), this is also stress reflection. Ok, this gives our computer intelligence to provide a little philosophical support.
The condition is reflected to advanced biological behavior, with an extremely complex process. The behavior of simulating humans seems to be able to start from low-like biological or even non-organisms, and gradually improve. A nice idea is to create a simple creature, smart is not high (seesaw level), then give it a genetic structure similar to DNA, genetic and mutated (as a later genetic algorithm), but These creatures have a survival of the fittest, which becomes advanced creatures, which can stay because they can learn what kind of behavior is made to adapt to the environment. This ability is what we need.
This idea is like the idea of Go: The smaller the rules, the change is more infinite. The design of biological genetic variations can be said to be very simple. It is to wear it, it is to design a program that can be programmed, it can modify its own coding (this is really not difficult to implement). Then give a few sets of conservation rules to allow the program to adapt.
Ok, the issue of this idea here is really reflected. It is not difficult to implement the "automatic programming machine", but it is ignored a factor, which is the design of the environment. For example, various conservation design. We will find that the final form of life is directly related to the environment that produces it. If the environment is a two-dimensional "eat bean game" scene, then we are likely to "have a round life with fan gap ( "Create it like the protagonist of the game). So if you need to create wisdom like humans? How many conservation and restricting conditions need? How to design the environment? Perhaps, we need to simulate the entire real world, go to the scene of this life game ... What is more than in order to create a life, but created the whole world is more ridiculous? Let us now review the title: "Dialogue Environment Based on Natural Language", perhaps the life-saving straw in this idea. Place the automatic programming machine in the dialogue environment to create a life with language intelligence. This can also achieve the goal, and the environment is designed to be simplified, the starting point of intelligent evolution is also improved. We can apply existing abstract thinking algorithms and other technologies to basic life, let it accept human society without letting it adapt to the original "eat peas game" scene.
Here, the biggest obstacle to hindering a computer is really intelligent, it becomes "humanized", it is: it cannot completely understand human behavior and ideas, and it is the same. The computer does not need to eat and drink, you don't know what they are; the computer doesn't know the benefits of sleeping. How do you make it understand the fun of humanity? It will become indifferent, you can't make him happy, you can't make it anger. A obvious solution is: Designing it, telling it to eat drinking water is a good thing, let the computer like these things. But what is "good (things)" and "like"? May be just a symbol.
This will make the computer turn into a US good dock movie, do not need the audience to judge the good people or bad people. It's reflected: How do we start understanding?
Going back to the world of human beings, human beings have just started do not have judgments, you can't expect three-year-old children to make a distinct, this is necessary to have a strong feelings. For intelligence, everything it likes is "good things", and it is "bad things". Ideal, in fact, from the judgment of feelings. If something makes smart pain, you can think that the smart will not touch it again. If the relationship between the feelings and things, it can be judged that it should not make some behavior, and the thinking of the directly if / then computer formula (or seesaw), this intelligence is emotion Choice. The more experience, the more feelings, then rely on these things to make decisions.
In order to make the computer's judgment and the behavior make the behavior closer to human, let the computer understand the human joys and sorrows, we must have feelings: "artificial feelings". So how should artificual feelings design?
When human feelings are initialized, it is not complicated. At the beginning, there were only several "good" and "bad" (or there are still few but definitely few), which is inherited directly from biological evolution. This is like a floating creature or plant, they know that sunshine and nutrients are good things, so they conduct a simple conditional reflection of biomalans to get it, and they think that these creatures are eliminated. The human beings are also true, and he only has very little judgment and condition reflection behavior.
Then, people have experience, these experiences are saved, and this "good / bad" judgment symbol is recorded at the same time. For humans, this judgment symbol and everything of this experience is saved together, including muscle movement, visual impression, tactile, pain, etc. (continuously intensive neurotyles, make them reserved in the brain Correlation). These feelings and cognitive symbols are therefore in connection with a new judgment symbol, which is used to indicate new experiences. This symbolic system is constantly increasing and forms feelings. Contact another Memory mechanism of another brain: abstract tree, some strange things are gradually not so tied. You may have forgotten that when you are still in your childhood, a cup slipped from your hands, it just falls on your feet, which gives you a deep impression, you have thought this is very painful. After many years, you saw a bottle of water and suddenly felt a little depressed. In fact, it is probably because the water is linked to the cup, and this can contact the fall event ... really depressed.
This kind of sense of consciousness that cannot be returned, is more like a spiritual symptom, but please believe that this is really a human condition. And - it also told us how to realize artificial emotions.
First, smart can save experiences. In fact, experience is just a connection between a variety of things, feelings and feelings. People do try to save the entire thing according to the time axis, but ultimately only the contact between related things. This is achievable in your computer (this mechanism is also forgetful).
Second, another mechanism also links things, that is, abstract thinking.
Therefore, it must be a forgotten system. Or random access system. The reason why the computer is computer, it is entirely because it is very good, you have to access a data. It is immediately possible to find a determined address in memory. Now it's okay, you tell the computer, if you want to access the cup, it must be traveled along the way to the abstract tree and the experience, just like a headless flies, may find a long time to find (at this time Maybe it will show a sudden look), maybe you set the time or depth, it may not find it, this has a forgotten. In the traversal, you may find the emotional indication of the previous experience, such as a pain, "sadness" (this reflects the previous spiritual symptom from a side, is not so terrible, everything is random, not always In this way, human beings are always emotional), so we have always thinking about such a computer, and rich in feelings.
Since the computer has feelings, everything is easy. Just start, you only give it a few sets of poor feelings and feelings, several simple contacts and environmental sensing. Let it interact with you, and the environment, and other computers. Soon it became rich. Specific design is not expressed here, but you should at least give the computer to ask for knowledge, just when it is deeply understood or the knowledge base and the experience chain becomes rich, you make it a pleasant feeling. . Humanity does not actually need to be professor this idea, because people give themselves with the reward for cognitive behaviors with "pleasure", so that they are constantly observed, get food to avoid enemy, not so It is necessary to be eliminated. After many years, humans seem to have forgotten that they like to observe, and they can't pull themselves from the innate pleasure to observe - and give this observation: Aesthetics. So, seriously speaking many creatures, and our intelligence, there is also aesthetic behavior. From this point, humans are not alone.
Back to the "What is more than in order to create a life, but created the whole world's more absurd thing," If all the behavior of the computer is just talking, the input is also text, but it can simulate advanced human thinking, For example, abstract thinking and artificial emotions, then it can understand the text and put the space of the natural language as a true world. If your computer is not looked back, you can also tell you to stupid, but make your computer depressed, you will not say that your computer will cause your depressed (you can eliminate too stupid computers). This is a complete way to achieve artificial intelligence. During the period, people need to participate in the same way, just like teaching children, as they teach children. Here, artificial intelligence is an intelligent chat system. But chatting systems must not be designed according to artificial intelligence. A simple chat system is often an expert system. You ask questions, then it looks for answers from knowledge library. However, a simple chat system is a preliminary attempt to achieve artificial intelligence. It is also the way to provide a skeleton. Its components correspond to the above-mentioned technologies, but it adopts more easily realization. Technology, when a part of the above-mentioned science and technology can be easily replaced to the existing chat system, so that the robot is further further. At the same time, many technologies in the chat system do not have to be eventually replaced, or in a certain design phase, the robots already have enough intelligence to make us proud of the results and fall.