NND & AICI

  • 155 Replies
  • 51682 Views
*

Bragi

  • Trusty Member
  • ********
  • Replicant
  • *
  • 564
    • Neural network design blog
Re: NND & AICI
« Reply #75 on: August 01, 2010, 03:57:41 pm »
Quote
Surely by using 2 (or more threads), you can achieve your aim of splitting up the analysis of the input data?
In short: No.  Why: the analysis of 1 input string isn't split over multiple processors, the string is analysed in multiple different ways. When we begin, we don't know in how many different ways the analysis needs to be done.

Quote
It then decides to split the calculation.
The calculation isn't split. A single processor still needs to process the entire sentence.  It is not so that I divide the workload to put the final result back together, 1 processor calculates the entire result on his own.

I know that, what you are trying to describe, is how people like to think about how multiple cores should be used: you have 1 data-packet that needs to be processed, so we split the process into multiple parts and assign each part to a thread. This is not how I am doing things. Every result for the data-packet will always be analysed in it's entirety by a single processor. It's just that I don't do 1 analysis process, but many, and it is impossible to determine upfront how many that will be or even how they will differ from each other. I am using multiple cores to resolve ambiguity, not to make things go faster.
Furthermore, a thread doesn't correspond to what I call a 'processor'. In fact, over the coarse of a processor's life time, it might run in several different threads, though always 1 concurrently.
I suspect that part of your confusion comes from the fact that I use words like 'processor' instead of thread. I do this, as not to confuse the 2, since they are not the same.


*

Bragi

  • Trusty Member
  • ********
  • Replicant
  • *
  • 564
    • Neural network design blog
Re: NND & AICI
« Reply #76 on: August 01, 2010, 04:19:54 pm »
Quote
Now, also, at present, if I gave the following input:
My name is Abu.
What is my name?
How many threads (approximately), will be used to derive a response to the 2nd line of input?

My name is Abu: 90 threads
What is my name: 47 threads

A total of 135 threads.

If I were to remove all the filters (they perform look-aheads/look-backs to reduce the nr of splits) on the flows, it would be a lot more, something like 300-500 threads for each statement. For more complex sentences, this can easily go up to 5000+ (without filters).

*

sunama

  • Trusty Member
  • ****
  • Electric Dreamer
  • *
  • 109
    • ai project
Re: NND & AICI
« Reply #77 on: October 25, 2010, 08:11:17 pm »
Bragi...just wondering how your program is coming along?
www.aiproject.co.uk
Natural Language Processing

*

Bragi

  • Trusty Member
  • ********
  • Replicant
  • *
  • 564
    • Neural network design blog
Re: NND & AICI
« Reply #78 on: October 26, 2010, 01:22:40 pm »
Hi, Sunama,
Thanks for asking. Ye, I guess I lost track of time a little. I've been busy as a bee, working on the next release. You probably beat me by a week or so.
Anyway, lots of stuff has changed, both in Aici and the designer. I've mostly focused myself on improving current stuff (no new tricks like counting). I've added 2 new stages to Aici: one to do a grammatical analysis of the possible results (used for things like making a distinction between 'a' as an article/determiner or as a noun, like the letter). The other stage is for semantical processing. Where I previously only did a simple convertion, I now have a complete stage that allows me to do further filtering, based on semantics. Though this needs further work (I'm currently doing the analysis in fixed order, which needs to be changed I think in a variable one). I've also changed the final output stage into something more elaborate  with 3 sub-stages to simulate conversation techniques (you know: acknowledge what was said, state your own opinion about what was said, formulate a new question. If only I could do that). Unfortunately, I'm not yet making use of this last technique in the output rendering as it should. 
The time spend on the designer and core, mostly went into getting the 'prototype taste'  out of them. I did some memory and performance profiling, which has so far produced some impressive results. I've also managed to find a few very nasty threading bugs, but there's at least 1 more left.
And finally, I've also made a web-based version of Aici. I hadn't done any announcements on that one yet, cause it was still behaving funky at times, though this should be better now.
Pffjeuuwie. That was more than I imagined it to be in my head. Anyway, in a week, perhaps 2 I should be doing a new major release.

*

sunama

  • Trusty Member
  • ****
  • Electric Dreamer
  • *
  • 109
    • ai project
Re: NND & AICI
« Reply #79 on: October 26, 2010, 01:55:44 pm »
Hi, Sunama,
Thanks for asking. Ye, I guess I lost track of time a little. I've been busy as a bee, working on the next release. You probably beat me by a week or so.
Anyway, lots of stuff has changed, both in Aici and the designer. I've mostly focused myself on improving current stuff (no new tricks like counting). I've added 2 new stages to Aici: one to do a grammatical analysis of the possible results (used for things like making a distinction between 'a' as an article/determiner or as a noun, like the letter). The other stage is for semantical processing. Where I previously only did a simple convertion, I now have a complete stage that allows me to do further filtering, based on semantics. Though this needs further work (I'm currently doing the analysis in fixed order, which needs to be changed I think in a variable one). I've also changed the final output stage into something more elaborate  with 3 sub-stages to simulate conversation techniques (you know: acknowledge what was said, state your own opinion about what was said, formulate a new question. If only I could do that). Unfortunately, I'm not yet making use of this last technique in the output rendering as it should. 
The time spend on the designer and core, mostly went into getting the 'prototype taste'  out of them. I did some memory and performance profiling, which has so far produced some impressive results. I've also managed to find a few very nasty threading bugs, but there's at least 1 more left.
And finally, I've also made a web-based version of Aici. I hadn't done any announcements on that one yet, cause it was still behaving funky at times, though this should be better now.
Pffjeuuwie. That was more than I imagined it to be in my head. Anyway, in a week, perhaps 2 I should be doing a new major release.


I'm interested in your web based application.
Is it up and running and hooked up? Can i try this out (without downloading anything)?
www.aiproject.co.uk
Natural Language Processing

*

Bragi

  • Trusty Member
  • ********
  • Replicant
  • *
  • 564
    • Neural network design blog
Re: NND & AICI
« Reply #80 on: October 26, 2010, 02:05:49 pm »
Yes it's currently accessible.Here's the link:
http://bragisoft.com/AiciClient/AiciWebTestPage.aspx
It's a silverlight web app, so you might need the silverlight runtime support for your browser, if you don't have this already.
A few notes to mention though: the web version is a little dated. It doesn't have any of the performance profiling. This combined with the shared server it is running on == very slow. So you might need some patience. The system normally responds to all input with something, it just takes some time.
Also, Aici itself is a mid development version (I mostly wanted to get the web-part working), so it still fails a lot of the time.

*

Bragi

  • Trusty Member
  • ********
  • Replicant
  • *
  • 564
    • Neural network design blog
Re: NND & AICI
« Reply #81 on: November 01, 2010, 04:00:32 pm »
As previously mentioned, a new release was imminent, so here we are. I've updated the designer, Aici Client and also the Aici-web.
The next step will most likely be complex sentences. I need them to make the system more 'teachable'.

*

sunama

  • Trusty Member
  • ****
  • Electric Dreamer
  • *
  • 109
    • ai project
Re: NND & AICI
« Reply #82 on: November 01, 2010, 08:04:12 pm »
As previously mentioned, a new release was imminent, so here we are. I've updated the designer, Aici Client and also the Aici-web.
The next step will most likely be complex sentences. I need them to make the system more 'teachable'.

I've played around with your web chat.

Is it possible for you to "lock" the "send" button, while your AI is in the process of generating a reply?

This is what I have done in my own AI, so it avoids problems of asking questions, too quickly (ie. before the last question/information has been processed).

I can give you examples of where your AI has fallen apart, simply because the "send" button was active, while your AI was still in process of analysing the previous sentence. Deactivating the "send" button, while the AI is in the process of processing the last user input, will solve a lot of problems for you.
www.aiproject.co.uk
Natural Language Processing

*

Bragi

  • Trusty Member
  • ********
  • Replicant
  • *
  • 564
    • Neural network design blog
Re: NND & AICI
« Reply #83 on: November 02, 2010, 01:09:22 pm »
Hi Sunama,
Could you perhaps tell me what you did exactly? Cause I can't seem to find the log in which something goes wrong due to out of order processing. That said, I don't suppose it's hard with the web-based version to get such a behaviour at the moment. I am getting the type of time-outs that is suggesting me the server is over-used.
You are correct though, Aici currently doesn't have anything in place to make certain that the input order is preserved during execution (which it should).
Disabling the send button itself would perhaps be a bit to much. What would happen if there was no reply? It's parallel processing method makes it not so evident to keep track of which thread belongs to which input (though it is possible to add if really required). That together with the fact that multiple users can chat at the same time, makes it not so convenient to disable the send button during processing.
So,I'll probably have to keep track of input sequence in a similar way as what I am doing with multiple sentences in a single input statement. Thanks for letting me know!.

*

Bragi

  • Trusty Member
  • ********
  • Replicant
  • *
  • 564
    • Neural network design blog
Re: NND & AICI
« Reply #84 on: November 02, 2010, 02:57:33 pm »
Quote
Could you perhaps tell me what you did exactly?
Never mind, I did a little try and I think I know what you saw.
Thanks for letting me know.

*

sunama

  • Trusty Member
  • ****
  • Electric Dreamer
  • *
  • 109
    • ai project
Re: NND & AICI
« Reply #85 on: November 02, 2010, 07:44:36 pm »
Hi Sunama,
Could you perhaps tell me what you did exactly? Cause I can't seem to find the log in which something goes wrong due to out of order processing. That said, I don't suppose it's hard with the web-based version to get such a behaviour at the moment. I am getting the type of time-outs that is suggesting me the server is over-used.
You are correct though, Aici currently doesn't have anything in place to make certain that the input order is preserved during execution (which it should).
Disabling the send button itself would perhaps be a bit to much. What would happen if there was no reply? It's parallel processing method makes it not so evident to keep track of which thread belongs to which input (though it is possible to add if really required). That together with the fact that multiple users can chat at the same time, makes it not so convenient to disable the send button during processing.

In a nutshell, I said "my name is abu". (1)
The very next thing I typed was, "what is my name?" (2)

Your AI then replied that it doesnt know what my name is. (3)
I then wrote again, "my name is abu". (4)
"What is my name?" (5).

It then gave the correct answer.

Now, what was happening (and correct me if I'm wrong), is that your AI was able to answer the question correctly in both cases. BUT, it couldnt do so, when I typed in (2). This was because (1) was still being processed. After processing for (1) was completed, it could then answer my name.

Had you disabled the send message button (until (1) had been processed), it would've been able to answer my question (2).

The key here is to perhaps inform the user, somehow, that (1) is still being processed, so your AI cannot answer questions regarding the information provided in (1). The easiest method for this is to deactivate the send message button, until the AI has replied to (1).

If you allow multiple users to type information into AI, all at the same time, you are going to run into problems.
My suggestion is to first get your AI replying to input from 1 user. Once it has mastered this, you can then program it to answer queries from multiple users. Programs are best constructed when you build them step by step. Rather than building a program with an IQ of 1000, it is best to build the program with an IQ of 1. Then add to the code to enable its IQ to rise to 2. Then further add to the code, so it now has an IQ of 3 and so on.

The idea being that with every new version, your program is becoming increasingly advanced. Eventually, you will reach a point where your program has the "wow" factor and you can sell/market this for financial gain. This is the model which I am using.

"Disabling the send button itself would perhaps be a bit to much. What would happen if there was no reply?"
I'm using message numbers and response numbers.
What this means is that every client and server have a record of the amount of responses received/sent. They both have sync up. If 1 message is lost, a request is made to resend the last message.
I have set a time of 3s for the client to wait for a reply from the server. If no reply is received, the client resends the message to the server. When the server receives this message, if the message is new then it will store it and generate a reply. If it is message which has previously received, it will merely ignore it.

The above technique is what I have used in my own client.

Also, I am still very interested in licensing your AI.

I am developing my own AI and monitoring your development. My plan is to see what features your AI possesses and mine lacks. I shall then license only those features.

At present, my AI does not possess any algorithms which relate to "is a" and "has a", which I believe your AI already possesses. If your algorithm is working well for working out "is a" and "has a" relationships, then I may not bother wasting time on developing those algorithms for my AI. I shall license yours.

My worry is that your AI does seem very slow to generate answers. No doubt this is purely because your AI is much more complicated than mine. What hardware are you running your server (for the web chat) on?

Have you optimised your code for speed yet, at all? Is the current response generation time as fast as you are likely to get or do you feel that you will be able to make response generation faster?
www.aiproject.co.uk
Natural Language Processing

*

sunama

  • Trusty Member
  • ****
  • Electric Dreamer
  • *
  • 109
    • ai project
Re: NND & AICI
« Reply #86 on: January 01, 2011, 01:38:04 am »
Hi,

I just had a play around with your AI.

it was not able to process:

user: my eyes are green
user: what colour are my eyes?
AI: confusion!!!

It couldn't process this information.

Also Bragi, what  is  your email address?
I wish to discuss some stuff in private as my prototype shall be ready in Summer 2011 and I was thinking of perhaps licensing part of your program. My web ap is at http://www.aicore.co.uk/, however, I have not permanently hooked up the server yet.

One reservation I have is regarding the speed of response. I've noticed that in some instances, after informing nnd of my name, it needs approximately 5-10 seconds before it is able to assimilate this information. I'm just wondering if you are running the server at home or you are using your web host's processor.

Anyway, let me know what email addy I can contact you on.
www.aiproject.co.uk
Natural Language Processing

*

Bragi

  • Trusty Member
  • ********
  • Replicant
  • *
  • 564
    • Neural network design blog
Re: NND & AICI
« Reply #87 on: January 01, 2011, 01:44:24 pm »
So, the web version finally died he. I hadn't checked on it for a while. To my surprise, it lasted so long. The primary purpose of it's current incarnation was to see how long the database would remain running without getting to corrupted. I guess that point has come now.  I'll reset the db shortly so that it works again. This will be with the current 'public' version (no new stuff), cause the next one isn't ready yet.
Looks like it's website crashing time, al-round. My blog had been showing some serious 'issues' that finally made me decide to move the whole thing to another hosting company, which did not work out as planned, so my blog is also down for the moment  :-[  (fixing this now).

you can find my email address in my profile info (just click on my username, above the picture, to the left. Or, even faster, just click on the 'letter' image underneath the picture. You can also send me a private message, through this forum.

*

Bragi

  • Trusty Member
  • ********
  • Replicant
  • *
  • 564
    • Neural network design blog
Re: NND & AICI
« Reply #88 on: March 16, 2011, 03:52:30 pm »
I just (well, on Monday) made a new release of all the software. Designer and client can be downloaded from my site.

Lots of new stuff, lots of fixes, but still lots of limitations. The basics of complex sentences are now supported, I've added better support for verbs (but only a few verbs are already known), 'be' and 'have' have been improved,...
There's still lots of stuff to do, things like 'a hand and a finger', adjectives are still not supported and compound words (like sail boat) are also not yet working correctly,....

Quote
user: my eyes are green
user: what colour are my eyes?
AI: confusion!!!

It couldn't process this information.
Sunama, it turned out there was still a bug in the prev version which made this fail (I missed it originally). Things like this should work now.


*

sunama

  • Trusty Member
  • ****
  • Electric Dreamer
  • *
  • 109
    • ai project
Re: NND & AICI
« Reply #89 on: March 16, 2011, 03:56:59 pm »
Has your new version been uploaded into your (online) webclient?
www.aiproject.co.uk
Natural Language Processing

 


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
Nvidia Hype
by 8pla.net (AI News )
December 06, 2023, 10:04:52 pm
How will the OpenAI CEO being Fired affect ChatGPT?
by 8pla.net (AI News )
December 06, 2023, 09:54:25 pm

Users Online

248 Guests, 0 Users

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

Articles