AI Zone Admin Forum Add your forum

NEWS: Chatbots.org survey on 3000 US and UK consumers shows it is time for chatbot integration in customer service!read more..

My Solution/Project For a Full Learning Machine Chatbot
 
 

Hey everyone.  I am new to this community.  I am a full time game developer who has always had a huge interest in AI. 

The other day I decided to look around for the latest chatbots and see if they had improved over the years.  I was pretty disappointing that not only was there a small amount of new chat bots, but also that they haven’t changed much over the past 10 years.  So I decided to pursue this as a side project and see what I could come up with.

The main problem with most current chat bots, is that they are mostly made with a great deal of preset inputs and outputs.  I decided this needs to be addressed..  I have only been working on this an hour or 2 a day for the past 2 weeks but I think I came up with a solution that has great potential.  My main focus is a chat bot that can learn and actually apply the knowledge learned, in turn making him better at learning exponentially.  Now obviously, to anyone who has any experience making AI or chatbots knows this is much easier said than done, but I will share what i have come up with so far..  I have been developing this chat bot in C# in Unity. 

The first problem I recognized is in standard code compiling itself.  Sure, it’s easy for a program to ‘remember’ something, but to actually change the way it behaves based on a memory is something that is difficult to achieve in programming.  So this is what I came up with.  I designed my own simple code that can be generated and stored in strings.  Basically once the AI chat bot figures out all the word categories in the sentence(This is done by simply matching up words stored into the categories, no stored code is needed yet), then it needs to figure out what type of sentence it is.  This is where the AI scans all dynamic ‘Sentence Categories’ where my own language of code is stored in order to get a broad idea of what the user is actually trying to say.  With this approach, the potential is very great.  For example, learning to learn while talking to someone.  Being able to input an entire novel into his brain and by the end of his reading being many times more intelligent after reading that book. 

Let me know your thoughts on this everyone.  smile 

Edit:  I will have a demo for you guys to play around with soon.  smile

 

 
  [ # 1 ]

Welcome! Sounds like what you could use is some form of database, I imagine unity must have mechanism to talk to one?

 

 
  [ # 2 ]

Well I am doing everything locally, and currently want to keep it that way.  Though I am not sure how slow things may get when it has generated tens of thousands of lines of code.  Not focused on that at the moment cause that won’t be a problem for a very long time.  When it comes to lists and arrays in Unity, I’ve noticed memory problems don’t seem to happen until the array is in the millions.  Which is plenty to work with.

 

 
  [ # 3 ]

In the attachment I have a screenshot of the public interface for the chatbots ‘brain interface’.  All of the functions that happen within the brain are stored and generated here.  Keep in mind only a small amount of hours have gone into this so far. 

The first list you see opened is the ‘Word Categorys’ list.  Here the category is named and words within its vocabulary are referenced.  And example:  ‘Question Starters’, question starters would be words that questions start with like, ‘What’, ‘Who’, ‘How’, ect..

Below ‘Word Categories’ is where things get interesting.  ‘Sentence Categories’ is the attempt to figure out in a broad sense, what type of sentence we are dealing with.  This is where my own simple coding language comes in.  You will see the first item in the ‘Sentence Categorys’ list says “question,wordcat,2,isfirst”  This is an if statement.  Basically it means, ” If the word category “2(question starters)” is the first word in the sentence, then this is a question”

Let me know what you think of this so far.  The whole point of having my own simple language is so that the bot can generate code and functions based on what he learns.  In turn functions can activate and generate new sentence categories based on what the user is teaching him and hopefully exponentially increasing his learning abilities.

Image Attachments
LearningBrainInterface.png
 

 
  [ # 4 ]

Hi Robert,

I just wanted to know how the Chatbot was coming along, I’m very interested in this approach and wanted to pick your brain on how you are going about doing all of this.

 

 
  login or register to react