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..

Skynet-AI On-Line
 
 
  [ # 106 ]
AndyHo - Aug 10, 2011:

FYI: my actual routines can handle things like this, not as good as it seems (or ought to be) but it can handle definitively physical units, monetary units (even it consults a web-service on int’l exchange rates) makes operations on them, does math simplification, derivatives and integrals (on literals) -by using a deep-math module, It handles ‘things’ simple math like"how much are two dogs and a cat and a dog = three dogs and one cat.

Interesting, where can we try these routines out?

 

 
  [ # 107 ]

In certain regimes, I am impressed with Skynet’s results. For example, he was able to recognize that both apples and pears are fruit, and that marbles of different color still fall under the category “marbles”:

——
Me: I have one apple and two pears. How many fruits do I have?

Bot: Wow. I haven’t done this much math since I was a young AI.
Here is my understanding of the problem:
USER have=apple #1 + pears #2
find number of fruits = USER have=

Solution:
3
***Basic Solver*3.5**

Me: I have 5 blue marbles and 2 red marbles. How many marbles do I have?

Bot: Ok. I haven’t done this much math since I was a small microprocessor.
Here is my understanding of the problem:
USER have=blue marbles #7 red
find number of marbles = USER have=

Solution:
7
***Basic Solver*3.5**
——

He even correctly realized I was not asking about marbles below:

——
Me: I have 5 blue marbles and 2 red marbles. How many fruits do I have?

Bot: I know of 0 things that you have.
——

However I was disappointed that he could not remember facts in general. I know you said that all the input for problem solving has to be on one line, but it seems like Skynet does not have the ability to learn user information at all..?

——
Me: I have 3 fruits.

Bot: I don’t think I have talked with you enough to discuss that. Would you happen to know… Airplanes have an indestructible black box. Why don’t they make the whole plane out of that stuff?

Me: How many fruits do I have?

Bot: I know of 0 things that you have.
——

Some simply worded problems he had difficulty with as well.

——
Me: I had five apples but I sold four. How many apples do I have?

Bot: Do you think it is degrading for an AI to be answering questions you could do on a pocket caculator?
Here is my understanding of the problem:
USER had=apples #5 but USER sold=4
find apples number = USER have=

Me: I had five apples but I sold four apples. How many apples do I have?

Bot: Oh. Tough question. Let me think about that.
Here is my understanding of the problem:
USER had=apples #5 but USER sold=apples #4
find apples number = USER have=
——

Anyway, hope to see more advancements made with this. So far it looks like promising work-in-progress. smile

 

 
  [ # 108 ]
Steve Worswick - Aug 10, 2011:
AndyHo - Aug 10, 2011:

FYI: my actual routines can handle things like this, not as good as it seems (or ought to be) but it can handle definitively physical units, monetary units (even it consults a web-service on int’l exchange rates) makes operations on them, does math simplification, derivatives and integrals (on literals) -by using a deep-math module, It handles ‘things’ simple math like"how much are two dogs and a cat and a dog = three dogs and one cat.

Interesting, where can we try these routines out?

If you understand Spanish I can set up a small chatbot (only some of this basic routines attached) and you can chat with him using Gtalk or MSN (whichever you prefer) I don’t grantee 100% uptime & on line because its running on my in-office laboratory-test server, who may be down sometimes during development cycles.

If you want this, tell me and I’ll see to set it up in a few days (actually I must update all the framework versions and still some @#%@%$@ MS soft-incompatibilities have arouse!)
Also I haver to write the script for this test-bot, and I may publish it so you get a glimpse on what is behind my engine..!

 

 
  [ # 109 ]

Hi Andy,

I have a friend who speaks Spanish, if you want to set this up and pass me its MSN address.

 

 
  [ # 110 ]
Steve Worswick - Aug 10, 2011:

Me: what is seven take away three
Skynet: What is seven take away three = three.

Maybe worth walking before you can run?

Good point wink You hit a bug. It’s funny because I tested that specific input late last week. It is picking up the second number and using it as an answer. It should also be handling CR’s:
Me: I had five apples but I sold four apples. How many apples do I have?
I guess that’s why they call it a beta.

I went back and forth on if I should put this version on-line before all the bugs were out. But my hope is the additional testing from showing it in public and getting feedback would make it worthwhile. I also thought some of you might be interested in looking at an unfinished version.

When you see:
num2txt(quickMath(
you hit a bug.

Andy-Nice try, hope my test-critics helps!
It does help.
Skynet, is a “context free” bot by design. It has no taxonomy and has very few “reductions” (mostly to catch frequent txt speak and spelling errors).

Its response is based only on the input of the current line. When you enter “and my dog”, it is not interpreting that as a continuation of “how long is my cat”.

You can see later in the conversation:
USER:how long is my dog
AI: How long is your dog 2 meters long.

That Skynet has stored the data about your dog.

It does not do anaphoric solving (although I have tested a preliminary flavor with the new math features).

¿what the heck is this? also ‘ninty’ and ‘fourty’ seems to be bad-spelled!!
True, sometimes I leave spelling errors in the output on purpose, but these fell through by accident.

There is no common unit math implemented: should be done!
There is no memory on said data

Skynet has a command that converts from one unit to another as in:
convert two yards to feet

I will probably add unit solving, but I have held off to test a general conversational approach.
The memory system only stores data during the current session. I am looking at using some of the newer HTML5 capabilities to allow storage between sessions.

Skynet does not automatically extend the input with synonyms or antonyms.  By design it also does not have a database of common lists (ie proper names). This is done to keep the footprint of the app small (the entire program and data is about 500k). I have been considering a hybrid app that allows big data files to be stored on the client side after downloading so that the user only feels the pain once. But, this comes later with the user save option.

This version also includes a new memory subsystem (which still has some bugs). Most of these bugs relate to cross platform issues. I am trying to have all the features in all the platforms. If I am able to work out those kinks, then I will be able to rapidly build more extensive memory based features.

So far some of the hardest work is enabling it to have a free flowing conversation while still picking out and solving math problems. As I mentioned before, the advanced math features started life as a technology test and now the trick is integration into the existing AI.

 

 

 

 
  [ # 111 ]

It was interesting when I said:

“I have 3 apples”

“Bob has 18 apples”

“does bob have more apples than I do?”

 

 
  [ # 112 ]

@Merlin wink
I also got several strange command-like “num2txt(quickMath(...))” issues, and did don report them because I understood this text output is intended for internal debugging… good idea, my bot failures cannot be traced externally in an easy-way.. but, I found a solution for me.. and share it here: I’ve been using it on my system and it really do work by masking out to the user all my possible bugs.. which are a lot! (but not for me). Here it goes…

As you catch an exception, (I throw them always when a bug do arise, they are costly but worth for arising only at real errors) I generally generate a special exception at each internal section, and catch them near the point of response, then I grab a “known” set of dissuasive-nonsense-but-elegant answers and pick one out, randomly, and give it back to the user, he will not tell them apart, but I do. Simultaneously I do a detailed bug-trace of the whole bug (the exception carries out most of the information) and log it into my file system, then I can track it down at my lab and disinfect my soft peacefully…
One last question, do you use a AIML-like state machine? because I saw that it spots individual words, and for a certain match, it gives out a randomly selected list of answers, and I saw no elaboration on those responses, thus I see a lot of analysis at the input section, ¿is this done by previous parsing or inside the AIML recursive pattern-recognition-section and detection (which I discarded for this job)
¿Is your system script-driven (interpreting) or is it compiled to ML?

FYI: I (at my framework) do not use AIML-like scripting, but do allow pattern matching (even recursive) for back-compatibility and towards solution some light-parsing stuff, but it interferes severely with my initial stage parser-chunker (NLP processing), Because of this duality I had to handle several differently processed input streams at once on each pattern-matcher station on the main understanding chain, and this did give me several headaches :(

best regards! wink

 

 
  [ # 113 ]

Thanks Andy,
This is the first time I have let a version out with this level of debug enabled. Normally, when I put it up on line it is designed to keep going even with errors and return only standard English. But, because the new math module is writing its own equations translated from the user input I have left in the Skynet’s “understanding” of the problem (sometimes the understanding is an error).raspberry

You have given me an idea. I could generate the the exception error inside a hidden piece of HTML mark-up. This would prevent the user from seeing it but would show up in the in-line logs. I need to think about it though because even hidden errors might impact flow control.

AndyHo - Aug 11, 2011:

One last question, do you use a AIML-like state machine? because I saw that it spots individual words, and for a certain match, it gives out a randomly selected list of answers, and I saw no elaboration on those responses, thus I see a lot of analysis at the input section, ¿is this done by previous parsing or inside the AIML recursive pattern-recognition-section and detection (which I discarded for this job)
¿Is your system script-driven (interpreting) or is it compiled to ML?

Skynet-AI is powered by JAIL (TM) (JavaScript Artificial Intelligence Language)
You can think of it as JavaScript on AI steroids. I’ll post a more detailed answer to your questions over on the JAIL thread.

 

 
  [ # 114 ]
Merlin - Aug 11, 2011:

Thanks Andy,
....
You have given me an idea. I could generate the the exception error inside a hidden piece of HTML mark-up. This would prevent the user from seeing it but would show up in the in-line logs. I need to think about it though because even hidden errors might impact flow control.

You are welcome! hopefully my precise comments sometimes seem aggressive or harsh to some members, but they aren’t meant to be evil, I always mean them for good! but I simply lack of polite communication, it’s burned inside my hardware! sorry!
smile

 

 

 
  [ # 115 ]

Hi Merlin,

I have played around with your NLP and it is pretty impressive.
It is also the first NLP I have come across which uses JAIL. I presume that using this is what gives it the speed?

Anyway, I would like to discuss some proposals with you, which may be of benefit to you.

If could email or PM, I would be grateful.


Thanks

Abu

 

 
  [ # 116 ]

Hi, Abu, and welcome to chatbots.org! smile

Just so that you’re aware of it, I’m that guy, GeekCaveCreations, over at AI Dreams that you’ve been talking to, regarding my CAPTCHA project.

If you need anything here, or have any questions, feel free to let us know.

 

 
  [ # 117 ]

Hey Dave,

Good to hear from you.

It’s amazing that the AI community is relatively small and that no matter which forum we register on, the same faces keep popping up.

Catch you later.

 

 
  [ # 118 ]

Hi Sunama, nice to see you pop up over here as well.

 

 
  [ # 119 ]
Sunama - Sep 4, 2011:

Hi Merlin,

I have played around with your NLP and it is pretty impressive.
It is also the first NLP I have come across which uses JAIL. I presume that using this is what gives it the speed?

Thanks, Abu.

Yes, JAIL is what gives it the speed you see. It allows the data set and the interpreter to be small, fast and portable. It has allowed the AI to run on a variety of platforms without changing any of the code.

 

 

 
  [ # 120 ]

I am not using JAIL for Marie, but after interacting with SKY-NET a little and scoping out the scripting, it’s looks similar to the approach that I am taking with some differences in functionality. The core AI engine I am developing is parsing the user input and finding a the best context match. A response in formed from pre-determined strings in the associative array. The real muscle is built with scripted routines that gathers additional data from previous input or in some cases from data mining from live searches. There will be applications that can be launched either directly by the user via the UI or in some cases by the AI interpretation from the users input.

I looked at JAIL, and although robust in its API, it is lacking in its ability to perform custom functions without a lot of additional scripting. I am from the school of building from the ground up keeping the code lean and flexible. With that said, I have always been a major fan of JS from its first beta release many years ago. The subsequent versions have only streamlined its functionality and have now posed the current release as an ideal platform for client side parsing and processing for AI interpretation.

I did attempt to request an Internet search using SKY-Net, but I guess that functionality is still in development and not available to your current release. The response I received was that it had full Google integration, which I will assume means calls to the Google Custom Search API. Will you also be incorporating ranking based on complete context or just keyword association?

 

‹ First  < 6 7 8 9 10 >  Last ›
8 of 13
 
  login or register to react