Human is constantly learning new information about different stuffs and add them to his/her knowledge. Human being keeps updating his knowledge and his models for different task over time by experiencing different things. We read articles, watch news, hear stories from our friends. Our brains is constantly receiving all these information, process, and add them to our knowledge. Obviously, if our goal is to create an cognitive agent which is as good as human brain, our agent should be able to learn and adapt itself over time. Otherwise, it cannot improve its knowledge over time.
While imagining an agent that can learn is fascinating, it is very hard to implement such a learnability feature. How should an agent even collect new information from outside world? How should an agent decompose the collected information and find semantic meaning among them? How should an agent adapt itself based on the collected data? these are all valid question and worth thinking.
We currently have an agent that predicts results of a soccer match between two teams. Our agent does not learn from the prediction mades or from the outside world information. So I can think of two types of learning feature that can be added to our cognitive agent. I would describe these two ways of learning below.
- Learning completely new information from outside world: This type of learning can be caused by new information that we collect from outside world. This type of information can be anything that help us to learn a new knowledge. This information will be directly added to our model. For example, suppose a friend of our agent tells him that Germany is an amazing team. If our model currently does not know that Germany is an amazing team, it should add this new knowledge to its model.
- Learning from our own success or failure: This type of learning is the results of our successes and failures over time. So if our agent predicts one game wrongly it should be able to understand that its prediction was wrong and improve its predictions over time.
We hope to be able to add both learnings to our cognitive agent in this project.