What is Artificial Intelligence?

A Blog Dedicated to Artificial Intelligence Technology & News.

Archive for the ‘Brain Science’ Category

From BCI to B2B Communication

Posted by William On November - 5 - 2009
An actual B2B communication conducted by Dr. Chris James

An actual B2B communication conducted by Dr. Chris James

Communication is a very powerful way in understanding human intentions and decisions. While there are many tools for humans to communicate from different locations, there are only a few which can help disabled individuals to say what's on their minds. Paralytics and stroke patients can benefit mostly from technologies that will enable them to communicate.

Following the research of BCI or Brain-Computer-Interface, now comes another breakthrough in brain science. B2B or short for Brain-to-Brain communication is presented recently by Dr. Chris James from the University of Southampton, in response to the need of people with severe debilitating muscle wasting diseases, or with the so-called 'locked-in' syndrome, to communicate.

It works with the use of an Electroencephalogram (EEG) amplifier worn on the head of the patient. EEG captures and sends digital brain signals via the computer.

'His experiment had one person using BCI to transmit thoughts, translated as a series of binary digits, over the internet to another person whose computer receives the digits and transmits them to the second user's brain through flashing a LED lamp', sciencedaily.com.

Click here to read more about this story.

5 Easy Ways to Use Artificial Intelligence in Your Java Programs

Posted by William On October - 24 - 2009
Artificial-Intelligence-JAVA

Most of the electronic stuffs we use everyday are products of artificial intelligence in collaboration with electrical, mechanical and computer engineering. These things include cell phones in general, digital radios, digital clocks, car stereo or t.v., microwave ovens and more you can add to the list.

Artificial Intelligence is also responsible in making your social network sites like twitter, easy to use, even on iPhones or Droids. It is also the core concept in web research engines like google and yahoo. Added to the list are data mining technologies, and text classification and filtering.

AI is just the theory or the concept. In order for this concept to work, we need a tool to implement a systematic program that will create its interface. And this is where Java comes in. Java is a one of the most portable and easiest to write programming language. It is in fact the widely used platform of most software applications today.

So, in this article, we will discuss the 5 easy ways to use artificial intelligence with Java.

Customer Recommender System

Most often, customers depend on recommendations to make decisions. Having a large volume of information in your site, not to mention the competitor's solutions, it is important to employ collaborative filtering in your recommender system.

Collaborative filtering strains out historical search items for a specific user and then correlates them to available information in your site, thus the process predicts the user's future interests and recommends the best given option. An example implementation for this is shown here.

Intelligent Search Applications

Intelligent Search Applications

Intelligent Search Applications

Intelligent search is a process of finding relevant information from an enormous set of non-relevant information. Finding the best results from a given search keyword is a task of a full-featured text search engine library such as Apache Lucenel

The Apache Lucene is the 800 pound gorilla in the realm of open source search. It's written in 100% JAVA however it's been ported to many other languages. Here is a short example of how to use the library.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
Analyzer analyzer = new StandardAnalyzer(Version.LUCENE_CURRENT);
 
// Store the index in memory:
Directory directory = new RAMDirectory();
// To store an index on disk, use this instead:
//Directory directory = FSDirectory.open("/tmp/testindex");
IndexWriter iwriter = new IndexWriter(directory, analyzer, true,
    new IndexWriter.MaxFieldLength(25000));
Document doc = new Document();
String text = "This is the text to be indexed.";
doc.add(new Field("fieldname", text, Field.Store.YES,
    Field.Index.ANALYZED));
iwriter.addDocument(doc);
iwriter.close();
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
// Now search the index:
// read-only=true
IndexSearcher isearcher = new IndexSearcher(directory, true);
// Parse a simple query that searches for "text":
QueryParser parser = new QueryParser("fieldname", analyzer);
Query query = parser.parse("text");
ScoreDoc[] hits = isearcher.search(query, null, 1000).scoreDocs;
assertEquals(1, hits.length);
// Iterate through the results:
for (int i = 0; i < hits.length; i++) {
  Document hitDoc = isearcher.doc(hits[i].doc);
  assertEquals("This is text to be indexed.", hitDoc.get("fieldname"));
}
isearcher.close();
directory.close();

Text Processing

Probably the most widely used computer application is text processing. Text processing is the manipulation of letters, words or phrases and even sentences and paragraphs. This process is performed by text processors such as your Microsoft Word, Lotus Notes etc. We do text editing of all sorts which may come handy depending on the type of document we are working on.

Text Document Classification

Text Document Classification

Text processing is enabled by text editor programs developed in JavaScript/ECMAScript,which is higly customizable. An example of a text editor program is JTextPro. A Java-based Text Processing tool that includes sentence boundary detection (using maximum entropy classifier), word tokenization (following Penn conventions), part-of-speech tagging (using CRFTagger), and phrase chunking (using CRFChunker).

A desirable feature of a word processing application is to change the case of a word, sentence or entire document. This sample application shows you, how to implement the different cases known from Microsoft Word in TX Text Control ActiveX. We are going to implement the following case changes:

* UPPER CASE

* lower case

* Title Case

* tOgGlE cAsE

* Sentence case.

Click here to see a snippet code for this implementation.

Text Document Classification

Document classification is the partitioning of unstructured sets of documents into groups that describe the contents of the documents. There are two main variants of document classification: text clustering and text categorization. The first is concerned with finding a static group structure in the set of documents, while the second (also known as text classification) can be seen as the task of structuring the repository of documents according to a group structure that is known in advance. For our discussion, let's focus on text classification.

Data can be classified according to any criteria, not only relative importance or frequency of use. For example, data can be broken down according to its topical content, file type, operating platform, average file size in megabytes or gigabytes etc. A well-constructed data classification system makes essential data easy to find.

Naive Bayesian Network is one best way to implement text classification. A naive Bayes classifier is a simple probabilistic classifier based on applying Bayes' theorem (from Bayesian statistics) with strong (naive) independence assumptions. In simple terms, a naive Bayes classifier assumes that the presence (or absence) of a particular feature of a class is unrelated to the presence (or absence) of any other feature. Here is a worked example of naive Bayesian classification to the document classification problem.

If you find this interesting, here is a sample code for the naive bayes classifier using Lucene.

Data Mining

Data mining "is a process for finding patterns and relationships in the data". This process is then used to classify users text or document into an information relevant to profiling practices, such as marketing, surveillance, fraud detection and scientific discovery.

Data mining commonly involves four classes of task, classification, clustering, regression and association rule learning. Please refer to "Text Classification" section for Classification and clustering. Regression attempts to find a function which models the data with the least error. A common method is to use Genetic Programming. Finally, association rule learning searches for relationships between variables. For example a supermarket might gather data of what each customer buys. Using association rule learning, the supermarket can work out what products are frequently bought together, which is useful for marketing purposes. This is sometimes referred to as "market basket analysis".

Refer to this link for in-depth discussion on this topic.

The brain and the Memory-prediction framework theory

Posted by William On September - 4 - 2009

The full memory-prediction framework theory was first introduced by Jeff Hawkins in the book On Intelligence. The theory says that the physical arrangement of brain cortex tissue is uniform and means that there is a single principle that defines all brain and memory processing. It also notes that the brain's intelligence comes from the ability to predict future events by relying on past data.
 
Memory-prediction framework theory
Memory-prediction framework theory The memory-prediction framework gives a unified theory about complex behaviors and allows us to better understand what intelligence is.
 
This theory focuses on the cortex because we're only concerned about what makes us intelligent and not how our entire body works. After all we're trying to create intelligent software, not recreate human beings.

The Central Concept

Memory-prediction framework posits that inputs coming from the bottom of the hierarchy to the top are analyzed and ranked in a hierarchy of recognition. This then invokes a list of expectations ranked in order of potential. The framework comes into play when the brain has to compare and match up these inputs and expectations. The memory-prediction framework means that the brain does not have to consider every option at every level of the process because it uses past sequences as a guide to predict likely future sequences.

"Memory-prediction framework posits that inputs coming from the bottom of the hierarchy to the top are analyzed and ranked in a hierarchy of recognition."

The further up the framework, the longer the past sequences are and consequently the fewer options there are to finish them so the process actually accelerates as it nears the end. For example in looking at a scene, the brain first recognizes lines, then shapes and colors and finally recognizes them as objects. At the same time in the same framework, predictions about what to expect from these objects flows down to speed up our interpretation of the scene.

The framework changes as we age because we add new memories to the system. Since we start with none, as babies we truly see things for the first time. But as we age, we collect memories and this bank of expectations about the way things are and the way things work. This helps us to understand the world around us and to process external information and stimuli more rapidly, but it helps explains how different people can interpret the same situation differently because they bring different memory structures to the experience.

The Pioneer of the Memory-prediction framework theory

Jeff Hawkins originally trained as an electrical engineer and perhaps this gives us a bit of insight on how he approached the problems of brain theory and discovered the memory prediction framework theory. His theory is one of the brain as an organ capable of future predicting and error correction. The brain predicts future events by relying on past data.

"His theory is one of the brain as an organ capable of future predicting and error correction."

The system is a hierarchy so the steps of the analysis are performed in order and if the current even deviates from past experience at any level then a new string of events, or memory, is created. This string can then be used in the analysis of future situations. In this way, the system itself learns and evolves.

It continuously grows more complex and better at making predictions. Just as the theory describes a brain that is constantly adding details and sequences of understanding, the theory itself needs to grow and be fleshed out with details before it will be fully accepted.

How Your Brain Works… Sort Of

Posted by William On September - 4 - 2009

The human brain. Amazing. It processes information and is felt through the senses of our touch, our smell, our taste, our vision and our hearing. It allows us to reason and lets us dream. It handles our processes of emotions, such as anger, sadness and joy. It controls our internal bodily functions, such as our heart, our breathing, and our blood pressure.
 
How the brain worksHow the brain works The brain has several parts to it. One of the parts in our complex brain is the cerebral cortex, and when it come to artificial intelligence this is the section we really care about. Your cortex is divided into four lobes or sections.
 
These sections are the frontal lobe, the occipital lobe, the temporal lobe and the parietal lobe. This part of the brain helps us to pay attention and allows us to remember things. It is also responsible for our thoughts, our language processes, our conscious, awareness and most importantly our intelligence. It is a grey color and is made up of neurons.

One of the things that the cerebral cortex allows to function in the human brain is our senses. The cerebral cortex receives this message through our thalamus, which is then transmitted to what is known as our primary sensory area. It is the visual cortex, the auditory cortex, and the somatosensory cortex that allows us to see, hear and experience touch.

This all comes together with the use of the opposite sides of the brain. This means that when you are touched on the right side of your body, the left side of your brain is the side that is responsible for the transmission of this.

The part of your brain that controls your motor skills is located in the cerebral cortex as well. Within the cerebral cortex you have your primary motor cortex and your supplementary motor cortex. The primary motor cortex is responsible for carrying out your voluntary movements.

"The cortex... It is also responsible for our thoughts, our language processes, our conscious, awareness and most importantly our intelligence."

The supplementary motor cortex is responsible for choosing which voluntary movement that we will use. Like the portion of your cerebral cortex that controls your senses, the part that controls your motor skills is also controlled by the opposite side of your brain. If you are moving something with your left hand the right side of your brain is working to process your movements.

Another one of these components is the neurons, which are nerve cells. There are billions of these in your brain. They all work to transmit a signal to your brain, which is unique because they are electrochemical signals. The neurons are made up of a cell body, which is the main portion of the cell. If the cell body expires the neuron will not survive.

The second part of a neuron is an axon, which carries the signal to its destination. Lastly, there are the dendrites, which make it possible for the neuron to make their connections to the other cells.

The brain is present in every living creature in this world, but there is none as remarkably unique as the brain of a human.

What is Artificial Intelligence?

Posted by William On August - 28 - 2009

So you may be wondering just what is artificial intelligence? Many people think of AI and relate it to movies about robots traveling through time, killing people, or other outlandish tales.

What is Artificial Intelligence

What is Artificial Intelligence?

One of the best movies that perhaps relates to AI, especially in the relatively near future would have to be the actual movie A.I. This describes a whole generation of androids that think for themselves, and some not even knowing they were robots in the first place.

If you type 'what is artificial intelligence' into a search engine on the computer you will be bombarded with so much scientific information you may have your own system overload. There is talk about the brain, and intelligence, and computers. It is greatly overwhelming and hard to understand most of it. It takes time and creative thinking to find information that you can relate too.

What is artificial intelligence?

Put simply it's the study of programming software to make computers and other items smarter. It also means that programming software to learn from mistakes, or errors and fix them automatically.

Making computers learn on their own is much less time consuming than having to reprogram it all the time. Robots too have learning capabilities as well. Using censers, cameras, and other kinds of information gathering, they can perform a wide range of different motions, including being able to walk up stairs, dance, and interact with people.

"Put simply it's the study of programming software to make computers and other items smarter."

What is artificial intelligence? Well you can see it in action every day. It started out teaching strategy games to computers, like chess. The basic principles of the game were programmed in, as well as what each pieces movements were. As people play against the computer, it learns from your techniques and using that knowledge calculates the best way to beat you.

It can also use what it learns to predict what possible moves you may make, and adjusts strategies accordingly, often calculating many moves ahead. With the human factor, sometimes we do things that are unpredictable, and so if you make a move that wasn't predicted by the computer, it will extrapolate accordingly.

When we play on gaming stations against the computer, this is a form of artificial intelligence as well. With the newer gaming platforms the computer brain uses knowledge programmed into it to act accordingly to your moves, and tries different ways to defeat you, or to help you out. Signals sent from the controller are relayed to the gaming brain and is translated into movement, shooting, etc.

What is artificial intelligence? Making computers and other devices smarter, faster and using your input to do things that make life easier.

You see artificial intelligence in a variety of applications, from smart appliances that will automatically save electricity, to a whole house wired to turn lights on automatically when you enter a room, and turning them off when you leave. Refrigerators than can sense when you are getting low on something and reminds you using a monitor and key pad on the outside of the door.

"You see artificial intelligence in a variety of applications..."

Coffee makers and other small appliances often have small computers in them that can turn on automatically at a certain time, and have your coffee ready for you when you get up.

The field of artificial intelligence is growing by leaps and bounds. If you have the skills and knowledge, it is possible to get into one of these exciting careers.

You will have a hand at new breakthroughs in robotic sciences, for consumer or military applications, as well as medical and manufacturing technologies. There is a wide array of opportunities that can await you, but will not wait for you.

You can find out more information through the internet, but as I said before, make sure you type in exactly what you're looking for, or you may get more than you bargained for.

You can find out what is artificial intelligence and how it works for you, find a job in this field, and even buy 'smart' products the make daily activities easier to do. There are assortments of robots that you can buy, from small figures that can interact with you, to smart vacuums that can pick up around the house by themselves.

About Me

I am a computer programmer that loves technology, gadgets, making & learning new stuff. I love to read & basically to figure crap out.

Twitter

    Photos

    BrainNuronFormulaBulbBulbsBeachComputerBrainCollaborative-filtering-and-AIBinaryOrangeBinaryBlueBrainNetworkBinaryBlueBrainBinaryFunnel