External Feeds

Tips and questions about scripting your Verbot®.

Moderator: Staff

Re: External Feeds

Postby Mapestone » Sat Jan 21, 2012 11:52 am

MikeA wrote:...more like a search engine than a conversational bot...
True, though I've noticed that search engines are getting very good at guessing what it is you're going to ask.
Mapestone
PowerBot
PowerBot
 
Posts: 116
Joined: Tue Apr 06, 2010 1:34 am

Re: External Feeds

Postby MikeA » Mon Jan 23, 2012 9:54 pm

Yes, very true.

I don't think there is anything wrong with a bot having access to knowledge, I just think AI is different to pattern matching (which is what I would say many AIML bots do, and is I guess the basis for search engines). I think what I mean is, that I see pattern matching as only a part of what makes good AI. So therefore, in my opinion. it's what done with the knowledge that counts. I guess that's why I didn't take to UHal.
MikeA
MightyBot
MightyBot
 
Posts: 318
Joined: Sun Mar 22, 2009 1:35 pm

Re: External Feeds

Postby Mapestone » Tue Jan 24, 2012 1:05 am

MikeA wrote:... AI is different to pattern matching ... I didn't take to UHal.
To tell you the truth, MikeA, my intention is to use the raw facts to build context, a basic building block in AI. For example, if someone says they are angry/upset/peeved, it helps if the Verbot picks it up as a negative emotion and engages an appropriate KB in response. That said, pattern matching/association/affiliation is a fundamental component of the human psyche (Spike Tanner: Sensory Basis of Knowledge). I contend that the real problem is that chatterbots do a poor job, and we humans, being very good at the task, pick up on this flaw right away.
Mapestone
PowerBot
PowerBot
 
Posts: 116
Joined: Tue Apr 06, 2010 1:34 am

Re: External Feeds

Postby MikeA » Tue Jan 24, 2012 9:15 am

Sounds like we are both looking at a similar final result in what an AI can do. I'm not suggesting pattern matching should not be part of it - of course it is proably the most important part - but I have seen so many bots that only do this. The better ones do it with a lot more input and output choices, and / or a lot more 'general (random) knowledge' (like Alice, UHal, etc), but it is the same concept in the end. I personally think the better Alice bots, Julia here, etc, take that as far as it can go.

Using this knowledge the way you are suggesting sounds like a much better approach.
MikeA
MightyBot
MightyBot
 
Posts: 318
Joined: Sun Mar 22, 2009 1:35 pm

Re: External Feeds

Postby Mapestone » Tue Jan 24, 2012 11:54 am

MikeA wrote:...I am working more on language 'understanding'...
Please explain. To start: how is this different than socket wrench understanding? I heard that some cultures recognize only two colors, 'green' and 'not green'. We would consider them primitive, however consider that some cultures do not have a word for snow, but six words (my guess on the number) in common use to distinguish between the variety of frozen precipitation.
Mapestone
PowerBot
PowerBot
 
Posts: 116
Joined: Tue Apr 06, 2010 1:34 am

Re: External Feeds

Postby MikeA » Tue Jan 24, 2012 7:01 pm

Well..... first thing, I'm not sure if my terminology is exactly right.

My main project with AI has been he recognition of the meaning of what is said. I guess the slight difference when I say 'langauge understanding' is that I'm not trying to make my bot say anything clever in response, but to give a response that shows an understanding of the meaning and grammar of what was inputted. By 'meaning' I only mean direct meaning, not inferred meaning.

Language (at least, the English language) is also a subject I know quite a lot about. And I believe Polish has 6 words for snow.

Here's an example of non-language understanding. This is from the free version of ALICE:

judge: Hi
ALICE: Hi there!
judge: What have you been doing today?
ALICE: I have been chatting with people online.
judge: What have you been doing today?
ALICE: I have been chatting with people online.
judge: What have you been doing today?
ALICE: I have been chatting with people online.
judge: What have you been doing today?
ALICE: I have been chatting with people online.
judge: What have you been doing today?
ALICE: I have been chatting with people online.
judge: What have you been doing today?
ALICE: I have been chatting with people online.
judge: What have you been doing today?
ALICE: I have been chatting with people online.


It is clear that ALICE is not responding because it understood the meaning and grammar of the question. This is plain and simple pattern matching. Nothing more.

If ALICE understood the grammar and meaning, it would have had other replies, because the grammar is common, and questions about today are common. But ALICE clearly only has one match that leads to one output. This is the type of AI I am personally trying to move away from.

Of course, there is also the issue of the bot not recognising the duplicate response, but that is another subject........
MikeA
MightyBot
MightyBot
 
Posts: 318
Joined: Sun Mar 22, 2009 1:35 pm

Re: External Feeds

Postby JonC » Tue Jan 24, 2012 9:14 pm

A musing on Mike's post ...
At the risk of stating the trivial:
we can use multiple outputs for one rule to create variety.
As a second level you can split an output into two (or more) sets of phrases that are mutually compatible.
We can use synonyms.
Taken together this gives a lot of variation to the answer. (My personal "record" on this is over 1000 variations on one input - I wasn't trying for this, honest :oops: )
Of course, the problem is that (to use the example above) the 'bot would still be saying "I have been chatting with people online" in a multitude of ways.
---
The next level:
For primary rules, why not set up a timer (or counter) to invalidate the rule for a given period of time?
Then if "judge" repeats the question, "Alice" says, "you already asked me that..."
Perhaps she repeats the answer with variation once or twice, until such time as the counter trips to the refuse to answer output.
---
Of course the 'bot is still not really understanding grammar and syntax, but it might be possible to generate the illusion of it, since the responses are programmed by people who do.
JonC
SupremeBot
SupremeBot
 
Posts: 665
Joined: Wed Apr 02, 2008 6:34 am
Location: Leicestershire, Great Britain

Re: External Feeds

Postby Mapestone » Wed Jan 25, 2012 11:45 am

JonC wrote:...set up a timer (or counter) to invalidate the rule for a given period of time...not really understanding grammar...generate the illusion of it...
Excellent idea! And, illusion is good enough for me. People love magic, I do too.
MikeA wrote:Well. I'm not sure if my terminology is exactly right...
That is the trouble with language, isn't it?
Mapestone
PowerBot
PowerBot
 
Posts: 116
Joined: Tue Apr 06, 2010 1:34 am

Re: External Feeds

Postby MikeA » Wed Jan 25, 2012 10:16 pm

Mapestone wrote:
JonC wrote:...set up a timer (or counter) to invalidate the rule for a given period of time...not really understanding grammar...generate the illusion of it...
Excellent idea! And, illusion is good enough for me. People love magic, I do too.


To fix the issue created by the AI standard of parroting fixed responses based on pattern matching (as displayed above), this is a good idea.

However, if looking at bot development as a whole, If the bot already has a method that led to many variations of response (for example,as described by JonC in a different post), then the problem would hardly be there. The problem is caused by the fact the bot is simply reading out a fixed resonse to a fixed input match.

It seems the whole philosophy behind many AI bots is about creating as many fixed responses as possible (which is a type of bot that I believe has already been taken to its limits). To be any decent illusion of 'artificial intelligence', then it needs to recognise such basics as the user repeating the input word-for-word, and be able to - in some way - construct responses using at the very least synonyms on some words. There is also the issue of whether we are calling a single input -> output as AI. This ALICE is not even close to having a conversation.

I guess the point I want to make is that I don't consider this ALICE example to be a fixable issue, but one that highlights the pitfalls of this type of approach to AI.
MikeA
MightyBot
MightyBot
 
Posts: 318
Joined: Sun Mar 22, 2009 1:35 pm

Re: External Feeds

Postby JonC » Thu Jan 26, 2012 8:31 am

This topic has drifted away from it's intended subject rather a lot...
And I'm just about to do nothing to help!
Another way of varying response is via using a "mood" setting.
To variations on this have been used:
1. the 'bot's own mood. Simply, if you are nice to the 'bot it is nice back, insult it (for instance) and it picks up on this and you get a different set of responses.
2. The bot's mood with regard to the user. If the bot can store the "mood" resulting from it's last encounter (or even cumulatively) with the user, then this can alter how it responds.

Again, this isn't the bot responding "intelligently" to the user, it's all pre-programmed, but it should increase the illusion of the 'bot responding to the user "emotionally".

Here's where I make a feeble attempt to drag us back on topic ...
Of course for the bot to remember it's "feelings" about an individual user (particularly if it has many) then it will need to input this data from an external feed, this could be csv or a "tag" of some sort generated by the start-up of the instance for online (if that's possible).
(I did say a feeble attempt!)

(In case we've forgotten this post started out as ways to feed data into the Verbot engine using either csv's or command line.)
JonC
SupremeBot
SupremeBot
 
Posts: 665
Joined: Wed Apr 02, 2008 6:34 am
Location: Leicestershire, Great Britain

Re: External Feeds

Postby Mapestone » Sun Jan 29, 2012 9:14 pm

MikeA wrote:... I personally think the better ...bots...take that as far as it can go.

I uploaded an example of a semantic network: "The Food Network" which takes it a step further. To be continued as a new Post.
Mapestone
PowerBot
PowerBot
 
Posts: 116
Joined: Tue Apr 06, 2010 1:34 am

Re: External Feeds

Postby MikeA » Mon Jan 30, 2012 12:04 pm

Sounds interesting.... look forward to trying that.
MikeA
MightyBot
MightyBot
 
Posts: 318
Joined: Sun Mar 22, 2009 1:35 pm

Previous

Return to Scripting

Who is online

Users browsing this forum: Apetlemum and 1 guest