Welcome to our series of programming Aileen. Aileen is a Chatbot augemented with Expert-Knowledge in the field of Color-Psychology. At first we introduce some basic principles behind Chatbots, what they were made for and what the difference between a Chatbot and an Expertbot is. Chatbots have been an interesting research area for years and they still are. Language-Understanding is seen as one key part of artificial intelligence. Therefore it is not surpising to see many people trying to build more advanced Chatbots.
However we have to distinguish between Chatbots and Expertbots. Chatbots aim to provide the user a feeling of talking to a real human. In general Chatbots must acquire knowledge in subjects, which we humans feel very comfortable with. These subjects are in general very unspecific. That is why there is an enourmos amount of possible questions, which seem obvious to us but are really hard to answer by a general AI.
We just collected a few examples:
- What was the most influential event of your life and how do you feel this event affects you today?
- What was the last thing you wished to do on your own?
- How can we be sure that air actually exists?
- Checking how well an AI understands ambiguous sentences based on context like: Flying planes can be dangerous
These questions involve really big challenges for AIs, because they need some kind of “self-awareness” or/and context-understanding. Both things are still extremely hard to solve by AI. That is why current Chatbots still seem quite stupid even though they get more intelligent year for year.
Expertbots on the other side do not aim for imitating humans as good as possible. Instead they try to give advices based on written text of a potential customer. So the subject of an Expertbot is very limited (e.g. “Computers”, “Traveling”, …). On this way giving intelligent advices is not too hard, because the amount of context needed is very limited and so are the questions.
Intelligent chatbots are overall the more intelligent systems. But Expertbots are more common, due to their ease of use and construction. That is why we will implement a small Expertbot, called Aileen, which helps you to answer some questions about Color-Psychology.
As always we will start small with a very simple bot, which answers questions by exact match. So in Pseudo-Code something like this:
if(userQuestion.toLowercase()=="is black a color?")
// else if ...
return "Sorry I do not know the answer";
This Expertbot seems very dumb and indeed it is. I do not want to disappoint you, but in reality almost any modern Expertbot is based on an cascade of answer/questions pairs. Of course there are several methods to improve the intelligence by many order of magnitudes. But in the end it still is only a big database of question/answer-pairs (at least for 95% of all Expert-Bots).
Next time we have a closer look at some more advanced techniques than just checking for exact match. We also appended a small example of the first very simple version of Aileen.