Sign in to follow this  
Aphalin

AI chatbot. List of common sence truths.

Recommended Posts

Hi all. I am currently writing artificial intellegence that can answer non-preprogrammed question (like what is the meaning of life for example: answer-suffering :) or what is your favorite pet, the answer is...women :D ) well i am desperatly looking for more simple texts from which ai can easily learn word relationships. The best text whould be something like a list of the simple truths: if you drink poison you will die. square has four angles. birds has two wings. etc. if anyone know where to get it... P.S. here are some other Q/A whats is the mystery of universe-fiction color of an apple-red favorite movie -Gabby favorite color -pink (well i guess it will be a girl AI)

Share this post


Link to post
Share on other sites
Guest Anonymous Poster
Sounds like you are looking for training data....

What about an internet matchmaking service? they gauge compatiblity for people by having them answer hundreds of random multiple choice questions...(typically questions generated by other users)
If you could somehow write a script that logs into an account and downloads the Q/A for a large sample of people... that might be useful training data...
OkCupid is a good example...

Share this post


Link to post
Share on other sites
Quote:
Original post by Anonymous Poster
Sounds like you are looking for training data....

No. It sounds like he's looking for a database of common-sense facts. Google gives several good results. In particular, look for "Cyc".

Share this post


Link to post
Share on other sites
Hmmm. I've worked on a couple of chatbots.

What your making seems to be something near joan (one of my popular bots), and sembot (which was a giant semantic net).

If you haven't seen a semantic net, heres the gist.

You have nodes, these have properties (in my model, just makes it simpler).
For example an nodes "name" property might be "bob", its weight might be "12kg".

Nodes are linked by links (simple enough), which have "type" if you will.
links can also have a set of "modifyers".

For example

Bob (the object with the name property of bob) "eats" "Ice-cream"
Planes "have" (number- 2) wings. (number-2 simply states that have is modified by the fact that there are a number of wings, and that number is 2).

You also have things like inheritence, where since "wings" are made of "aluminium", they are shiny. (you can have conditional or temporal links, but they are very hard to process. ie. "The apple is green today, the apple is red tomorrow".)

Some of the parsing is a bit off, and sometimes it gets tripped up on the grammer of english, but otherwise its pretty nice.

And then you have joan and her maximatch algorithm. Its surprisingly effective.
Have a look at it in action Here and see if you can puzzle it out :D

Something to think about? (Alphalin, do you have msn?)

Share this post


Link to post
Share on other sites
As Alvaro said, you're looking for Cyc, or OpenCyc.

However, converting these "truths" into a good chatbot is something of a holy grail for chatbot enthusiasts. For example, consider how difficult it would be to chain together all the common sense truths you need to parse this exchange: You: "I've found someone new" Chatbot: "Have you told your girlfriend yet?"

Share this post


Link to post
Share on other sites
Well... I'm also looking for a good way to have fun but yet smart chatbot into my game. So far I implemented something similar to ALICE AIML:
http://www.alicebot.org/
But without the storage of the previous context. It is not too bad but I would love to have something better.
I did it in PHP, so if you are interrested in it, let me know, and of course if you found a solution, please let us know!

Share this post


Link to post
Share on other sites
Quote:
Original post by a_bertrand
Well... I'm also looking for a good way to have fun but yet smart chatbot into my game. So far I implemented something similar to ALICE AIML:
http://www.alicebot.org/
But without the storage of the previous context. It is not too bad but I would love to have something better.
I did it in PHP, so if you are interrested in it, let me know, and of course if you found a solution, please let us know!


you should have a look at Joan See how you like her :)

Share this post


Link to post
Share on other sites
Just tested. It's not bad. But it doesn't have any context and tries to work with couples of "sentence" -> "answer"... now it could be a problem if one sentence is similar to another.

Share this post


Link to post
Share on other sites
Quote:
Original post by a_bertrand
Just tested. It's not bad. But it doesn't have any context and tries to work with couples of "sentence" -> "answer"... now it could be a problem if one sentence is similar to another.


She does couple sentence-> Answer, but she works fuzzily. She picks the "closest" sentence to answer with. (ie. number of words that correspond, those that are in the right spots, ect. She also has pattern matching inbuilt.)

iirc, that version also incorperates learning from input, its been awhile since i made her.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this