text recognition

Miscellaneous Forums/General Discussion/text recognition

I need to find a way to intelligently understand user input into a text box.

Does anyone have any suggestions on where I can find programming techniques/strategies for something like this?

invent it... Right now the art form is in a pretty primative stage... Not very intelligently designed... Geting a computer to understand a language is not an easy task. Even without the randomness of spelling errors and such... What exactly do you need it to do?

In a game like Zork they looked for key words and ignored everything else... Thats not an intelligent system. If you said. Don't open the door fast, open it slowly.. It would hear Open Door and ignore the rest... vital info if you were trying to sneak up on the guy who just darted into the room.

Look at how we bend over backwards to create these strange syntax's and languages with very important rules so we can talk to our computers.

so like I said... what exactly do you need to do?

Create a phonics system that makes educated guesses on misspelled words based on the rest of the sentence that the word resides in.

It would have to keep track of a good deal of the previous communications so that it could make better guesses about the context that each new text falls into.

Example:
"My car is malfunctioning. I may have to bring IT to the auto shop."

It should be able to decipher that IT refers back to the noun 'car' in the previous sentence.

Not easy, not easy at all.

Consider these sentences...

My car broke down today and I need to take the dog to the vets tomorrow. I will have to get IT repaired at the garage this afternoon.

My car broke down today and I need to take the dog to the vets tomorrow. I will have to try and take IT to the vet on friday instead.

An intelligent system would need to have prior knowledge that cars are repaired in garages and dogs treated at the vet's.

A Zork type system is pretty simple to code but an intelligent system is something else altogether.

Good luck! ;)

I used a program ages ago called GIGO (Garbage In, Garbage Out), it was for the Amstrad 464(ooh err), and it was pretty clever at deciphing a sentence, and replying back, though, only about 70% of the time correct (Well, it seemed that much... But I was only 9 back then!)

It was written in Amstrad's Locomotive Basic (Happy days), the source code is probably losed now, but if the Amstrad can have a fair crack at it, I'm positive you could make Blitz do it (with a bit of hair pulling :) )

I typed in GIGO and max headroom for the amstrad too. That was a laugh. Also there's ELIZA on the amiga... loads of fake AI stuff.

How about the old classic: "Time flies like an arrow, fruit flies like a banana."

As shambler said - Not easy, not easy at all. You could dedicate your entire life to this and still not find a solution.

I have not looked very deep into this, but reading a little* about linguistics (psycho, socio, neuro, ect) documentation might help a little.
The alice bot is probably the best in 'understanding' and responding to input but it is nothing more then a big select case and respond library. Many thousands of scentences are inside it.

There is Alice. Chat with her...

http://www-ai.ijs.si/cgi-bin/eliza/eliza_script

You could dedicate your entire life to this and still not find a solution.


Many people have.

As far as alice goes... talk to her for 30 min and you start to realize she has no clue what you are saying in reality... and can't remember anything.

This is why I said if he wants an intelligent system he will have to invent it.

Which won't be hard if he can get inspired enough to think outside the box... Our minds don't do it based on raw processing power... or endless case structures. Our minds work based on relationships.

We think up the next word to say mainly because we have said it that way a million times. And we understad phrases rather than words.. We can learn what words actually mean and incorperate that... but really, thats not how everyone learns a language... You have to see how humans learn to understand words before you get a PC to do the same.

I would try talking to a few child pcychologists and pediatricians. People who are at the state of the art in understanding how kids learn.

That should help give you insight into the learning process and maybe how to structure a system that either learns to understand language itself or knows how...

Alice could work, really, if it had enough storage and speed and a dedicated user base to feed it knowledge..

You talk to her, and if something doesn't sound right, or if she requests it.. you can tell her what words mean with her own knowledge base... and then she can build a relationship based system of her own... I know that bullcrap! is an explative and means the same as Oh no!. and in a completely diff area she'll see that "This is bullcrap!" means the same as This is unfair.. and that "That is bullcrap!" means that she seems to have lied or someone else seems to have lied...

It would take a long time to hard code all of that... this is why teaching... kind of like http://www.smalltime.com/dictator.html
and how it works....

*shameless plug*
http://home.cmit.net/rwolbeck/programmingtutorial/code/eliza.htm

Alice could work, really, if it had enough storage and speed and a dedicated user base to feed it knowledge..

Of course. But this is all about. Alice have some knowledge stored. You can ruine your life and create a bot that looks like you right now and have all the knowledge of you this time. But this is Ultra crazy.
But you can program a bot for a scene and talk with it about something and not that in your real life something hapend to you and you are trying to find an answer from the bot but you are trying to find an answer for your virtual character.
I would try talking to a few child pcychologists and pediatricians. People who are at the state of the art in understanding how kids learn.

Live the kids alone.

... i didn't tell him to build an alice... but to understand where the state of the art is to make his system work better ... I would assume he asked for intelligence because he needs it..

And I never said to bother kids.. just people who understand how kids learn...

No offence. Sorry if it was like that.
But after all we are talking about computers.
The computer cannot be inteligent.
Computer will never invent something because it's a tool. Computers can store but cannot reqognise what is good or bad or both.
But computer will do the mathimatic equations for you.

Currently computers are not intelligent that is true.

We can simulate intelligence but that is all it is, a simulation with no real understanding going on under the hood.

To be intelligent a computer must have a cpu which is physically structured like the human brain or similar i.e. there is no 'program' running and it's just the structure of the machine which enables it to learn and predict.

Once we achieve this we will have an intelligent machine which really does understand.

Our brains are computers... and with the right instructions and input devices a computer can have some kind of intelligence... language is based on rules... just very complex ones.. and a computer can handle rules.