Teaching an AI? Rather than programming it?

Status
Not open for further replies.

Calle E

Registered Member
If you program an AI program to chat for you while you ain't there, what would be the best to make it ultimate?

Would you rather program it with zero cases in the database and then let it observe your conversation and make it auotomatically add the different cases that comes up and notice what you answer, next time it know that the proper way to answer "Hello" is to say "Hi". Maybe program it to read old chat logs and write questions and answers into the database that way, so years of experience from you could be transformed into the AI on one sec.

Or would you program all different cases and tell it what to answer? That would take a long time...

What would you do? Also think of the use, would you use a chat AI you knew could answer something that is weird, because you sometimes says weird things, or would you rather like it to be programmed so that you know what the AI will answer at different questions.

What do you think?

Best Regards,
Calle Ekdahl
 
You'd still have to program it to "learn" everything, and even then it wouldn't really be comparable to human intelligence, as all its actions are statistically based.
 
It would not match human intiligence but a good one could probably trick the others that it's actually a human thats talking. To program a AI to "learn" is not easier than the other way, but wouldn't it be better? When it got some experience it would probabably cover the common phrases.
 
Calle E said:
Would you rather program it with zero cases in the database and then let it observe your conversation and make it auotomatically add the different cases that comes up and notice what you answer, next time it know that the proper way to answer "Hello" is to say "Hi".

One of the tricky things of human communication is that it is based on context and comprehension, rather than on a simple stimulus-response combination . Take the question "How many hours before dawn?". It clearly requires an answer based on the current (local) time. You need to be able to understand the question before you can give a valid answer.

Maybe program it to read old chat logs and write questions and answers into the database that way, so years of experience from you could be transformed into the AI on one sec.

Above question "How many hours before dawn?" seems quite trivial, but in fact it only gets presently two hits in Google. The flexibility and richness of human language does not fit into a simple relational database, there are just too many combinations of words possible that can make up a meaningfull sentence.

It would not match human intiligence but a good one could probably trick the others that it's actually a human thats talking.

How to trick a human when your AI is not able to understand simple questions? It's even quite difficult for me to trick my fellow human, and to trick my girlfriend doubly so.
 
Yes, you got a point. Some questions have to be programmed like if it get a special question if will respons with the right time. Didn't think about that, but I still think it can manage to trick people.

Take this for instance:
You: Hello
AI: Hi (Since I use to response with 'hi')
You: How r you doing? ("You" always uses r instead of are and my AI recognise it and understans it, it knows what I use to answer too).
AI: Fine thx.
... Heres the conversation use to end if we don't have anything to say, if so the AI probably tricked him. Let's think of a possible continue.

You: How are your latest project going? (This is a question, my AI don't recognise the phrase but it looks for hints what to answer and see 'going?' it knows that I use to answer 'fine' to 'going?' and so it does.)
AI: Fine
... Ok, heres your question.
You: How many hours before dawn? (Here, my AI cannot recognise 'dawn?' but since it can see in my chat log I use to answer with a number it knows that it can't know it because I rarely answer the same number at a question that demans numbers. Then it answers 'I don't know' because it know that as it is a question and 'You' don't know I am not supposed to know it either, in most cases)

AI: I don't know.

This doesn't work in all cases, but in most. Or what do you think?
 
du kan inte ta för givet att någon kommer att säga "How r you doing", men detta går ju att lösa genom att använda en väl sammanlänkad relationsdatabas.

men sedan så är det stora problem för om jag skriver "Ho wr you doing", då kommer den inte att förstå någonting. Du bör inte tro att du kan göra en chatbot som kan ersätta dig i MSN/ICQ konversationer eller liknande eftersom att AI:n läser och känner igen ord, vi människor ser helheten och sedan relaterar till vår egna kunskap. Så om du ska få din AI att verkligen fungera så bör du då få den att läsa igenom en mening eller en godtycklig längd, och sedan läsa "Ho wr you doing" som helhet istället för Ho, wr, you, doing. Och sedan gör den vad datorer gör bäst, den räknar ut procenten för hur troligt det är att det står "How r you doing" istället för "Ho wr you doing" och sedan så testar den alla andra möjligheter.
Det är lite svårt för den måste se varje bokstav som en bokstav och se det som en byggsten och orden är inte lika viktiga (förutom om de är rätt), sedan så måste du kolla på hela meningen och kunna rätta till ord enligt en databas för hur troligt det är med ett ord i en mening, samt vilken "position" den har i konversation.

hmm, gör det så kanske om 1 år så kan den ersätta dig. ;)

And if you do not understand Swedish then tell me and ill translate it for you.
 
I am from Sweden, as well. And if I understood right you want to write all in one like howareyoudoing but it will arise problems when trying to distinguish words out of that. I do not take for sure that the other will write how r you doing but since I had talked a lot to this guy my AI knew this was an option, and he knew that it was an option. And it wouldn't take a year to teach the AI alll experience it needs, it could observe old chat logs. Maybe it will take a year to make it if I start, but I think this project is to big for me...

Best Regards,
Calle Ekdahl
 
not for it to write it "howryoudoing", it could see that "you" and "doing" are allready correct and then it would try the combinations of h, o, w, r to see what is most likely.
 
Calle E said:
This doesn't work in all cases, but in most. Or what do you think?
I think that it works in a few cases, not in most. In your example I am likely to ask something similar as "Why do you not know how many hours it is before dawn?". How would your AI look up an answer for that?

If it returns with "I don't know" once again, my suspicion would grow that we are either dealing with one dim human or a chatbot.
 
Alice already does this. It only works well because most IM chats are between fairly uneducated people. If you write a program that says 'asl?' and then can respond, you'll fool most people.

If that's all you want, alice is the answer... but most people talking to it will simply think that you are being a jerk.
 
Calle: Forget the AIML junk. It's time for the real AI development. The system needs to understand the input. NL is often hard to get a meaning from but nothing prevents you from using alternative (cleaner) communication formats. Get the AGI working and then put some thoughts on adding the NL layer.
 
Calle: Forget the AIML junk. It's time for the real AI development. The system needs to understand the input. NL is often hard to get a meaning from but nothing prevents you from using alternative (cleaner) communication formats. Get the AGI working and then put some thoughts on adding the NL layer.

How would you do that?

If it returns with "I don't know" once again, my suspicion would grow that we are either dealing with one dim human or a chatbot.

Yes, it would certainly response I don't know again, but what's the matter? They will think the real lperson is trying to be funny, not a chatbot is dumb...

Best Regards,
Calle Ekdahl
 
I think that however smart you make a bot at understanding mangled words or sentences, you still have one sucker bot: it will keep up the conversation no matter what, while a human faced with too much unintelligible crap will say: seeya later weirdo and move on. As a person.

Even a much simpler bot - languagewise - would be a lot more convincing if they bothered to program some spunk into it.
 
Calle E said:
Yes, it would certainly response I don't know again, but what's the matter?
When building an AI, usually the aim is to imitate a feature of human intelligence. If your hypothetical bot fails in imitating one such feature, it is hard to categorize it as AI.
 
Maybe. I found what Mercurio said very intresting.

Even a much simpler bot - languagewise - would be a lot more convincing if they bothered to program some spunk into it.

That gave me an idea. If you had right phrases, then you could convince others that you were busy, but not absent. Heres an example of that:
You:Hi
Me:Hello
You: What's you doing?
Me: Nothing at moment. Can we talk later, I'm busy.
You: Ok.

See, that is one that would probably work. "You" would think that "Me" was on the computer but to busy to answer.

But this misses the point of having an AI a little. Because why would you like to trick you friends like that? More fun would be if you could trick your friends to a longer talk. But that seems impossible, or at least complicated.

Best Regards,
Calle Ekdahl
 
Calle: From my point of view, there is nothing cool in fooling people.

Calle E said:
How would you do that?

I don't think I can explain it well briefly.
Do you know the Novamente system? It's an AGI project. AFAIK there is no publicly available demo yet but the system is under active development for several years now and there is a lot of public info. It supports NL. I have my doubts about the quality of the NL support, but it also has a lower level language called "KNOW" which can be used to communicate with the system. The NL input gets converted to KNOW before it's used by the system. The KNOW is one of those clear formats I was talking about. You should be able to find some details about that if you are interested. I'm working on my own AI system. It's not gonna support NL any time soon. NL is just a mess. I designed a form-based format for my AI-AI and User-AI communication. For now, I call it ARSL (ARTEX Scripting Language). ARTEX = name of the system (Artificial Reality Explorer). The module which handles communication is called ARTCOM. The following paragraph is from the ARTCOM documentation:

<i>"A typical ARSL script (kind of “story”) is a collection of statements (kind of “sentences”) of various types. During the communication, users are typically selecting statement types from the Statement Type tree, then filling associated forms in the Statement Form area and finally inserting the generated statement into the Script area or Chat area (Figure 2-1). For some of the new concepts (especially for Action concepts), forms can be partly designed by users. Using the form-based communication, users can script complex stories and pass it to the system as a source of experience (“Complete Scripts”). Users can also pass scripts which contain one or more “?” parameter values or the “?” statement(s). Such script is understood as a “Script to Solve”. When requested, ARTEX tries to solve it by replacing the “?”s with real parameter values and/or statements."</i>

ARSL has about 25 types of statements and 10 types of parameters. If I simplify a bit, I can say that a statement is a partly predefined sentence with some parameters to fill. ARTCOM also contains several "special editors" for some concepts (like concepts of relative positions; action concept editor; formula editor.. etc). I'm trying to keep ARSL very intuitive. It's a lot more user friendly than the KNOW (which is AFAIK not intended to be used by regular users). I cannot go into details now. And generally, I prefer to go into details with developers who might be able to contribute to the project. If you think you are one of those then let me know. It's not gonna be very informative but, just in case, here is the high level architecture of my AI:

ArtexHighLevel.PNG


BTW I have done lots of coding in various computer languages, but not much in .NET which I decided to use for this project. So I'm learning on the fly. I'm currently the only developer on this project. Things go slowly because I keep working on a bunch of other interesting private projects and the family stuff is also pretty time-consuming in my case. I wish I could get some enthusiastic & experienced .NET developers for this project. BTW while I'm writing this, I'm listening to the domain registration agreement from the GoDaddy.com where I'm about to register some domain names (I'm using a text-to-speech convertor). The "Go Daddy" name is of course heavily used in the agreement. I would be interested to see how well would a NL-Supporting-AI-system (like Novamente) get the meaning from such document.
 
Calle E said:
Maybe. I found what Mercurio said very intresting.

But this misses the point of having an AI a little. Because why would you like to trick you friends like that? More fun would be if you could trick your friends to a longer talk. But that seems impossible, or at least complicated.

Best Regards,
Calle Ekdahl

Hi Calle,

I think that a very honest appraisal, but remember that people do it all the time: if I'm a businessman I'll pretend to be very occupied (with customers) ESPECIALLY when I still had to lure them in. Telling them I've got all the time in the world for them might be more honest, but guess what: it would put them off, because they expect, no DEMAND you're a busy man, if you're any good.

Same with banks and money, remember? If you have, you can borrow. Or if they THINK you have, more exactly.

So filling in expectancies is what we do, and sometimes it's pretend, sometimes outright lying, but in all cases it works...

:)
 
Ok, thx for the replies everybody. AI is hard to do, especially if it are meant to communicate with people. Your opinions have been a help. Even though I will put the project on hold.
 
OK, but on a parting note, you might want to check out Edward de Bono's Six Thinking Hats stuff. It may seem strange at first, but think how a chatbot with different possible viewpoints (whole outlook on life really) would make a more interesting conversational partner:

http://www.mindtools.com/pages/article/newTED_07.htm

Not trying to sell anything here, it's just a very informative peek into the taking of positions in discussions. ;)
 
Status
Not open for further replies.
Back
Top