Introduction to AI
AI (Artificial Intelligence) is the study and design of intelligent agents. AI programs are called Intelligent Agent. Here is how it works:
The Intelligent Agent (on the left) interacts with an Environment (on the right). The Agent perceives the state of the Environment through its sensors and at the same time it affects its state through its actuators.
The real challenge about AI is the function that maps sensors to actuators: that is called Control Policy for the Agent.
Based on the data received from sensors, the agent makes decisions and pass them over to its actuators. These decisions take place several times and the loop of environment, feedback from sensors, agent’s decision and actuators interaction with the environment is called Perception-Action-Cycle.
AI is used in many fields, among which:
- Finance
- Robotics
- Games
- Medicine
- And of course: the Web
AI and uncertainty
AI is all about uncertainty management. In other words, we use AI if we want to know what to do when we don’t know what to do. There could be many reasons for uncertainty in a computer program:
- Sensor limits
- Adversaries that make it hard for you to understand what’s happening
- Stochastic environment (where behaviors are intrinsically non-deterministic)
- Laziness
- Plain ignorance (many people that don’t know what’s going on, could easily learn it, but they just don’t care)
All of the above are possible causes for uncertainty and AI.
Example of AI in practice
One of the many key applications of AI techniques is Machine Translation. How does Machine Translation work?
Machine Translation generates translations using AI techniques based on bilingual text corpora. Where such corpora are available, impressive results can be achieved translating texts of a very similar kind. Unfortunately, such corpora of bilingual texts are still very rare and the size of the available corpora varies significantly from one language combination to the other.
So what does Machine Translation looks like? On a large scale Machine Translation system, examples are found on the web. On a small scale, they can be found anywhere. This example was found in a Chinese restaurant in Cupertino:
In these type of text a line in Chinese corresponds to a line in English. To learn from this text, we need to find out the correspondence between words in Chinese and words in English. For example, we can highlight the word “wonton” in English. It appears 3 times throughout the text. In each of those lines there is also one Chinese character that appears: 雲. So it seems that there is a high probability that this ideogram in Chinese corresponds to the word “wonton” in English. Please note that we are talking about probabilities here. As a matter of fact “wonton” in Chinese is 雲吞 and not just 雲. For some reason the ideogram 雲吞 on line 65 is abbreviated to just 雲. And it’s not a common abbreviation.
You can go further, and try to find out what ideogram in Chinese correspond to the word “chicken” in English:
Please note that we aren’t 100% sure that 雞 is the ideogram for “chicken” in Chinese but we do know that there is a good chance because each time the word “chicken” appears in English this ideogram appears in Chinese.
Now let’s see if we can find a correspondence for the word Soup:
As you can see the word “soup” occurs in most these phrases but not in all of them. In the English side of the menu is missing in 1 place (65. Egg Drop Wonton Mix). Equivalently, on the Chinese side of the menu is missing in 1 difference place (廣東雲吞 60).
The correspondence doesn’t have to be 100% to tell us that there is still a good chance of a correlation.
In Machine Translation these type of alignment is used to create probability tables. Hence the name Statistical Machine Translation. In other words, the probability of one phrase in one language to correspond to another phrase in another language.
More on Machine Translation in future posts. Stay tuned.
Francesco Pugliano