Complex Language Understanding & Execution (CLUES) Engine

  • 107 Replies
  • 29963 Views
*

sunama

  • Trusty Member
  • ****
  • Electric Dreamer
  • *
  • 109
    • ai project
Re: Complex Language Understanding & Execution (CLUES) Engine
« Reply #75 on: April 28, 2011, 07:57:03 pm »
BTW. Have you used multi threading for your program?
www.aiproject.co.uk
Natural Language Processing

*

victorshulist

  • Trusty Member
  • ****
  • Electric Dreamer
  • *
  • 118
Re: Complex Language Understanding & Execution (CLUES) Engine
« Reply #76 on: April 29, 2011, 02:02:18 pm »
I may.

In previous (Perl version) I did.    So far the optimizations I have made have increased the processes about 500 times.     If need be, in future, I may convert to threading, if things slow down.  But so far, so good.

The algorithm by the way, lends itself very well to being converted to multithreaded operation.

*

sunama

  • Trusty Member
  • ****
  • Electric Dreamer
  • *
  • 109
    • ai project
Re: Complex Language Understanding & Execution (CLUES) Engine
« Reply #77 on: April 29, 2011, 02:27:24 pm »
What I found is that when I went from single threaded operation to multi-threaded, it created a big headache for me. Had I avoided threads, I would've been able to develop my program much faster. The amount of bugs which were created simply by moving to multi-threading were numerous.

For your program, I would strongly suggest that you implement threading from the word go, rather than adding threading at a later date. The reason why I say this is that CPUs are now generally increasing in IPCs and core count. The CPU frequency seems to be maxing out at around 3.5-4.5ghz.

Your program is designed for the future, so you need to ensure that it is designed to run on future hardware.

It is much easier to build from the ground up a multi threaded application, than to modify it, at a later date.

Another point is about your GUI: if you are not currently using multithreading, is your GUI not locking up while the program is running?

Both myself and the creater of AICI are heavily reliant on multi-threading.
www.aiproject.co.uk
Natural Language Processing

*

victorshulist

  • Trusty Member
  • ****
  • Electric Dreamer
  • *
  • 118
Re: Complex Language Understanding & Execution (CLUES) Engine
« Reply #78 on: April 29, 2011, 06:10:56 pm »
At this stage the software doesn't have a GUI.   It is run from the Linux command line.  For multithreading, I'm looking to either use current Posix ithreads, or perhaps the new threading model with C++ 0x


*

sunama

  • Trusty Member
  • ****
  • Electric Dreamer
  • *
  • 109
    • ai project
Re: Complex Language Understanding & Execution (CLUES) Engine
« Reply #79 on: April 29, 2011, 09:53:12 pm »
Here's a question.

I need to bounce an idea off of  you.

I'm currently developing an algorithm which is able to research a topic/subject.

This is how it works.

A user asks the AI to research a topic.
AI carries out the research (using search engines) and any sentences which relate to the topic, are stored away in a text file.
When the research is complete, AI notifies the user and asks the user if he would like the research results.
When the user asks for the topic results, AI begins to send the information which relates to the topic which has been researched...10 sentences at a time.

Now, this is my question:

What do I do with the text file after the user has received the information?

I have 3 options:

1. Note every time that the text file is accessed. When 30 days have passed since the last access, the file gets deleted.
Should the user wish the AI to research the same topic within 30 days, AI simply uses the existing text file.
Should a user wish the AI to research the same topic after 30 days, AI does the same research again

2. After the contents of the text file have been passed to the user, the text file is deleted immediately.

3. After the contents of the text file have been passed to the user, the information contained in the text file are permanently kept on record and are used in general (future) queries.

Each method has its pros and cons.

Which would you use?
www.aiproject.co.uk
Natural Language Processing

*

DaveMorton

  • Trusty Member
  • ********
  • Replicant
  • *
  • 636
  • Safe, Reliable Insanity, Since 1961
    • Geek Cave Creations
Re: Complex Language Understanding & Execution (CLUES) Engine
« Reply #80 on: April 30, 2011, 05:52:52 am »
Personally, I would opt for choice #1. However, given the fluid, ever changing nature of the Internet, I would only return the results of the original research for up to 15 days, though I would probably still want to keep the results for 30 days, or even up to 6 months. After 15 days, the research AI should use the original results, but only as a "basis" for further inquiry, with the goal of expanding into new areas, possibly not covered the first time. For example, if the AI starts out researching Rock Wallabies, and the same assignment is given, say, 20 days later, the AI might not only initiate a new research task on Rock Wallabies, but would also expand the parameters to include Bush-Tailed Rock Wallabies (derived from previous research), as well, thus providing extended and expanded data than the previous task. Thus, you may end up with much more useful data that previously obtained. Part of the responsibility of the AI would be to ensure that any new, updated or extended data was relevant and useful, and not extraneous crap. :)
Comforting the Disturbed, Disturbing the Comfortable
Chat with Morti!
LinkedIn Profile
CAPTCHA4us

*

sunama

  • Trusty Member
  • ****
  • Electric Dreamer
  • *
  • 109
    • ai project
Re: Complex Language Understanding & Execution (CLUES) Engine
« Reply #81 on: April 30, 2011, 01:52:00 pm »
I'm actually erring towards doing a separate search for each individual research request...so option2.

The reason for this is as follows:

What if today the President of USA is Mr X

Research Topic: USA President.
AI will say: "the president of the usa is Mr X"

A new President is elected and sworn into office the day after the above query was submitted.
The current president is now Mr Y.

If a user now requests for 'USA President' to be researched, AI will once again report back stating that the president of the usa is Mr X....which will be wrong.

Now, if we use the technique that GeekCaveCreations suggested, we would have an equally difficult situation to resolve.

The old search results would say that Mr X is the president. A new search (will also be conducted) and would state that Mr Y is the president. AI would then submit the following in its results:

Mr X is the president of usa.
Mr Y is the president of usa.

...which is wrong.

I was going through the algorithms last night and believe that the easiest and least confusing method of doing topic research is to conduct a brand new search every-time research request is made. The longer that AI keeps the results of the research on file, the more problems we will run in to.

To complicate matters further, what if we were getting 2000 topic research requests per day. This could overload the server, as researching a topic is not an easy thing to do, which is why caching (old) information could be advantageous.

Perhaps rather than keeping the information on record for 15 days, we can reduce this amount to say, 1 day.

In other words: a person requests for a topic to be researched on 01/01/2011. The topic research is completed and kept on file for 24 hours.

If within those 24 hours, somebody else requests the same topic to be researched, the AI can simply return the existing results which it has on file.

If a user requests for the same topic to be researched on 03/01/2011, a brand new search is carried out by AI and new files are created.

www.aiproject.co.uk
Natural Language Processing

*

DaveMorton

  • Trusty Member
  • ********
  • Replicant
  • *
  • 636
  • Safe, Reliable Insanity, Since 1961
    • Geek Cave Creations
Re: Complex Language Understanding & Execution (CLUES) Engine
« Reply #82 on: April 30, 2011, 02:53:50 pm »
While I agree that, perhaps, 15 days (for some research subjects) may be "too stale", only keeping results for a single day is a vast waste of resources that could be best used elsewhere. Since the AI is already researching the information, and (presumably) sorting/collating the data gathered, it wouldn't be that much more work to add "relevance by time" to it's duties, thus reducing the problem of differing data to a more manageable level. The AI would then present the following:

As of 04/28/2011, Mr X was the president of the USA
As of 05/02/2011, Mr Y was the president of the USA

Both of which are now accurate.

As my Grandfather used to say, "No sense throwing out the baby with the bath water!" :)
Comforting the Disturbed, Disturbing the Comfortable
Chat with Morti!
LinkedIn Profile
CAPTCHA4us

*

sunama

  • Trusty Member
  • ****
  • Electric Dreamer
  • *
  • 109
    • ai project
Re: Complex Language Understanding & Execution (CLUES) Engine
« Reply #83 on: April 30, 2011, 08:15:17 pm »
I completely agree with you that throwing away data is not necessarily a good thing.

However, what we don't want is an AI with bloated files, containing data which is already available (stored in files) on the internet.

If we keep the data, even for 10 days, say, depending on the amount of topic researches are submitted by users, the AI may have many TBs of extra data held on its servers, which in itself is not a problem. however, sifting through this data may well slow the system of searches down.

When Google, Bing etc are already present, why not make use of these search engines to carry out new searches every time a user requests for a subject to be researched?

To give you an idea, for the AI to generate 200 lines on a particular subject using the internet, my algorithm would need approximately 10-20 seconds.

An alternate method of research result delivery:

Research Request 1
lets assume a search is carried out on 01/01/2011, 1200hrs.

When we present the research data, we do so, as follows:

The following research was conducted on: 01/01/2011, 1200hrs:

<research sentences go here>

Research Request 2
On 02/01/2011, 1400hrs, another research request for the same topic is requested.

When we present the research data, we do so, as follows:

The following research was conducted on: 01/01/2011, 1200hrs:

<research sentences go here>

The following research was conducted on: 02/01/2011, 1400hrs:

<research sentences go here>



Using this technique, the user will be shown what was true on a certain day/time.
Using this technique we can lengthen the amount of time that a particular research file is held on file, without confusing the user or giving the user false information.


Alternative Technique
Another technique, might be to inform the user that research on "president of usa" was conducted on 01/01/2011 1200hrs. Would you like AI to re-conduct the research and place it in the research queue or would you like to be presented with the research carried out on 01/01/2011 1200hrs.

It now falls on the user as to whether or not his research is time sensitive or not. If the user requires the absolute latest data, then the research can be carried out again. If not then he can receive (immediately), the previous research which was carried out.

I personally think that the alternative technique would work best. It would also allow us to keep research data for about 14 days, without giving the user false (no longer valid) information. The user is now in control...not AI.
www.aiproject.co.uk
Natural Language Processing

*

victorshulist

  • Trusty Member
  • ****
  • Electric Dreamer
  • *
  • 118
Re: Complex Language Understanding & Execution (CLUES) Engine
« Reply #84 on: April 30, 2011, 10:13:36 pm »
Well, it depends on where your AI progress is currently.

Can it tag the date with the information?

Pluto was a planet before 2006.   Thus, prior to 2006 pluto was a planet.  That fact will never change.   That is, the fact that pluto was demoted won't affect the fact that plutu WAS a planet prior to 2006.

The question is, can your ai deal with that right now?

can the AI ask follow up questions ? ??

user-- is pluto a planet?
ai -- no
user-- hum, i thought it was
ai-- well, it  *was* prioer to august 2006
user-- why is it not a planet?


Yes,  I am a fan of the asterisks , CLUES uses for emphasis .   I think a good AI should use that.   It is the equivalent to putting vocal stress on certain words.

*

victorshulist

  • Trusty Member
  • ****
  • Electric Dreamer
  • *
  • 118
Re: Complex Language Understanding & Execution (CLUES) Engine
« Reply #85 on: April 30, 2011, 10:21:02 pm »
So, to answer your question, I know what GRACE will do (the first demo bot to be built with the CLUES engine).

Grace will determine the type of sentence, and based on SEMANTICS, it will know whether it can keep the information forever, or only for a certain time.

For example, if it learns that the length of the hypotenuse is equal to the square root of the sum of the other two sides, that probably won't change!!!!

*

sunama

  • Trusty Member
  • ****
  • Electric Dreamer
  • *
  • 109
    • ai project
Re: Complex Language Understanding & Execution (CLUES) Engine
« Reply #86 on: April 30, 2011, 10:47:24 pm »
Can it tag the date with the information?

Not currently, but adding a tag (time stamp) will not be a problem.

Pluto example.

Any research which the AI would do, would turn up the fact that Pluto was classified as a planet, but it was down graded on August 24, 2006.

Also consider that when carrying out research, the AI will not return questions...it will merely present the user with information. It is upto the user to use the information in whichever way they wish.

Later generations of the AI may well have more advanced features, but initially, things need to be kept simple.

I can see that the best way forward is to create an algorithm which deletes information which is no longer true. I have developed a version1 algorithm which allows me to do this for general facts...using internet search engines.

However, I cannot have these searches carried out for every single sentence contained in a file which contains the researched topic. It would be quite time consuming.

I'm now thinking that the version 1 of the topic research algorithm should work as follows:

A user requests for "president of usa" to be researched, on 02/01/2011, 1400hrs.

If "president of usa" was already researched previously, the AI will inform the user that research on "president of usa" was conducted on 01/01/2011 1200hrs. Would you like AI to re-conduct the research and place it in the research queue or would you like to be presented with the research carried out on 01/01/2011 1200hrs.

It now falls on the user as to whether or not his research is time sensitive or not. If the user requires the absolute latest data, then the research is carried out again. If not then he can receive (immediately), the previous research which was carried out.

If the user requires new research this is done. Research continues until 200 sentences have been loaded into the research file. After which the user is notified that research is now complete and the results shall now be displayed.

The research data is deleted after X days, from the time the research was carried out. Initially, X = 14, though this may change later on after testing.
www.aiproject.co.uk
Natural Language Processing

*

victorshulist

  • Trusty Member
  • ****
  • Electric Dreamer
  • *
  • 118
Re: Complex Language Understanding & Execution (CLUES) Engine
« Reply #87 on: May 02, 2011, 07:37:41 pm »

Interesting.    Anyway, re-post follows (since thread was a bit hijacked  :tickedoff: )

Just kidding about the "ticked off" symbol, I don't really mind  8)


*
Some more examples
**


<user says> jack went to a fun dance

<Grace says> Yes, I understand.  I have stored that information in 'temp-sqa-test'

<user says> did jack go to a dance

<Grace says> If you mean *fun*, then yes.

<user says> did jack go to a big fun dance

<Grace says> Yes, but I'm not sure if it was *big*

user says> victor was going to a big party

<Grace says> Yes, I understand.  I have stored that information in 'temp-sqa-test'

<user says> did victor go to a party

<Grace says> If you mean *big*, then yes, I'm assuming so.

<user says> did victor go to a big fun party

<Grace says> Yes, I'm assuming so, but I'm not sure if it was *fun*

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

so notice , Grace pays attention to absolutely all words.   In the above she responds "assuming so" because , after all, we said  "WAS GOING TO" . .. that implies on our way, but the person didn't necessarily get there!

That is different than saying "WENT TO".

*

victorshulist

  • Trusty Member
  • ****
  • Electric Dreamer
  • *
  • 118
Re: Complex Language Understanding & Execution (CLUES) Engine
« Reply #88 on: May 03, 2011, 01:08:07 pm »
KUDOS To the development team @ aiDreams!!!!!

WHAT AN IMPROVEMENT TO THE LOOK !!! I LOVE IT !!!!!!!

SO MUCH CLEANER, MORE WHITESPACE, LESS "VISUAL NOISE".

AND HAVING A FULL WHITE BACKGROUND (NOT GREY) MAKES IT SO MUCH EASIER TO READ!

WAY TO GO FOLKS!!

And regarding my project, I have decided to change the name of the engine.   The new name is GLI (rhymes with GLEE), standing for "General Language Intellligence".   I will probably open a new thread to post more progress on the project.

*

sunama

  • Trusty Member
  • ****
  • Electric Dreamer
  • *
  • 109
    • ai project
Re: Complex Language Understanding & Execution (CLUES) Engine
« Reply #89 on: May 03, 2011, 01:17:33 pm »
WOW...what happened here?

Yesterday we had the old style message board and now we have a shiny new system.

Good work.
www.aiproject.co.uk
Natural Language Processing

 


Will LLMs ever learn what is ... is?
by HS (Future of AI)
November 10, 2024, 06:28:10 pm
Who's the AI?
by frankinstien (Future of AI)
November 04, 2024, 05:45:05 am
Project Acuitas
by WriterOfMinds (General Project Discussion)
October 27, 2024, 09:17:10 pm
Ai improving AI
by infurl (AI Programming)
October 19, 2024, 03:43:29 am
Atronach's Eye
by WriterOfMinds (Home Made Robots)
October 13, 2024, 09:52:42 pm
Running local AI models
by spydaz (AI Programming)
October 07, 2024, 09:00:53 am
Hi IM BAA---AAACK!!
by MagnusWootton (Home Made Robots)
September 16, 2024, 09:49:10 pm
Attempting Hydraulics
by MagnusWootton (Home Made Robots)
August 19, 2024, 04:03:23 am
LLaMA2 Meta's chatbot released
by spydaz (AI News )
August 24, 2024, 02:58:36 pm
ollama and llama3
by spydaz (AI News )
August 24, 2024, 02:55:13 pm
AI controlled F-16, for real!
by frankinstien (AI News )
June 15, 2024, 05:40:28 am
Open AI GPT-4o - audio, vision, text combined reasoning
by MikeB (AI News )
May 14, 2024, 05:46:48 am
OpenAI Speech-to-Speech Reasoning Demo
by MikeB (AI News )
March 31, 2024, 01:00:53 pm
Say good-bye to GPUs...
by MikeB (AI News )
March 23, 2024, 09:23:52 am
Google Bard report
by ivan.moony (AI News )
February 14, 2024, 04:42:23 pm
Elon Musk's xAI Grok Chatbot
by MikeB (AI News )
December 11, 2023, 06:26:33 am

Users Online

468 Guests, 0 Users

Most Online Today: 507. Most Online Ever: 2369 (November 21, 2020, 04:08:13 pm)

Articles