Ai Dreams Forum

Member's Experiments & Projects => AI Programming => Topic started by: ranch vermin on April 17, 2015, 07:19:34 pm

Title: anyone want to have a chat or a stab at NLP with me?
Post by: ranch vermin on April 17, 2015, 07:19:34 pm
Ok, so ive got a memory system, where a state of the sensors is a serial code,  and its completely illiterate, so im having a stab at trying to get to understand something simple autonomously.  But whatever you want to talk about can be completely irrelevant to this, I realize people dont necessarily understand my ideas for sure, simple detached idioms is definitely allowed in this post. :)

- so when you go about doing language ai,  just remember how anal programming is, and thats how a computer reads things.  which is the complete opposite of language, which is so freeform a computer has no chance at parsing it successfully.


* so these serial codes, are actually language, so it has language, even before its literate at all.

but!!! the words it sees, it cant involve them in its motor. (especially if its just dragging a mouse around in a limited clostrophobic environment, like a web bot does.)
  again-> its hard to associate the word for 'button'  with looking at a button.  same issue.

* its not just looking at shapes,  its actually symbolic of some part of its behaviour somewhere i guess.

* it treats it like pure programming, and then you have a missing links problem, where we automatically fill it with our bullshit, and the computer hasnt got bullshit yet.

* also, it has problems with contradictions, because its just pure programming to it.  (and theres a great many errors in our writings,


so anyone want to add or reject what i said or anything,  just anything language based even GA's,  Ivan had some cool ideas a while back due to some symbolic logic GA, and thats perfectly fine.  anything will do.
Title: Re: anyone want to have a chat or a stab at NLP with me?
Post by: ivan.moony on April 17, 2015, 08:57:44 pm
I think that natural language is also parseable by computers. Look at "link grammar" for English language, it parses it perfectly, while reporting not only syntax, but grammar errors too.
Title: Re: anyone want to have a chat or a stab at NLP with me?
Post by: ranch vermin on April 18, 2015, 06:46:26 am
Thanks Ivan.     I totally agree,  with the points I described. :)
Title: Re: anyone want to have a chat or a stab at NLP with me?
Post by: Don Patrick on April 18, 2015, 10:29:20 am
Language can be parsed "correctly", but that doesn't necessarily lead to the intended interpretation of what's being said. Language is not a single system but a mishmash of loosely defined guidelines and deviations therefrom (slang, idioms, figurative speech). When you program NLP with strict "correct" rules, its interpretation is too limited: People don't speak strictly by textbook rules. On the other hand, if the NLP works with flexible guidelines, its interpretation is not limited enough: it won't distinguish between sense and nonsense. To improve that, I believe you need to apply not just linguistics but also common sense rules and knowledge. That's not one system anymore.

Any of these approaches will get you a certain proficiency towards "correct" interpretation, but I think it is important to realise that you can never get a perfect understanding all the time when using an imperfect language to communicate.

As for linking the word "button" to a visual button, programmers in the past have made enforced learning systems where they point the mouse at a visual button and say "button". Some computer vision AI and/or neural net could discern the button's edges and characteristics to distinguish the element from others. Supposing the program saves the button as an image, next time you say "Press(verb) the button(object)", it could scan the desktop for matching pixels to locate it, move the mouse to those coordinates and click. Interesting idea if I had a use for it.
Title: Re: anyone want to have a chat or a stab at NLP with me?
Post by: squarebear on April 18, 2015, 01:52:56 pm
The problem I've always had with NLP, and forgive my ignorance here, is that I genuinely don't understand the point of it. Let's say you have the perfect parser that can deal with any sentence. What use is it?

Human: John ate a pizza.
Bot: Ok, I will remember that.
Human: What did John eat?
Bot: No idea but I know there's 2 nouns and a verb in there...

Sure;y, how you deal with input is much more important then breaking it down into its component parts? When someone tells me something, my brain deals with the input as a whole. I don't mentally start breaking it down into noun phrases, verbs and so on.
Title: Re: anyone want to have a chat or a stab at NLP with me?
Post by: Ultron on April 18, 2015, 02:00:12 pm
NLP and NLU is all fun and coding up until the point you realize that NLU is impossible without intelligence.

To anyone that wants to work with these two systems, keep in mind that as long as they are limited to a chatterbot (single program, single algorithm...) you are only working towards better mimicking of human conversations. Your program can become very convincing - even fool judges and earn you money but it is never going to truly reach us.

Many have already disagreed with this, um... 'Theory', of mine, but take this example...

If you are born blind, do you think any amount of conversations is ever going to give enable you to imagine a color, or understand the concept of colors at all?
It is completely the same to a computer / chatterbot - they lack the senses (or at least the algorithms to process camera/microphone input) and are therefore 'blind' in some ways. How do you think a program (chat bot) is going to understand the word 'apple' if it has never seen, felt or smelled one? 'Apple' would just represent a series of meanless characters to it, much like what 'hydfgerwwf' means to you.

This is in fact how I originally derived the idea that 'understanding' as well as NLU are the ability to connect / associate information from different senses (visual, auditory...) regarding a certain entity (the apple). In our case, when we read the word 'apple' we look it up in our 'database' - we retrieve basic information or specific information required in the current case. This can be size, color (overall look), smell, the sound it makes when hit or bit and even more complex physical properties such as elasticity, bounciness, aerodynamics etc.

I cannot imagine another way to explain the concept of understanding - at least not in a way that would be as logical and make as much sense to me. Also, the point of this post was to get you guys thinking out of the box - get those fancy algorithms and concepts you learn in school out of your head. Throw the Markovnikov chains and classical NLP approaches in the water - derive your own unique idea and combination. These are concepts beyond the average programming problem - but as every other problem, you need to understand the core concept and nature of the problem to your very best, because you are later required to 'teach' a stupid student (computer) how to do it and supply it with extremely detailed instructions. In the case of NLP, it is pretty much figuring out how a great part of your mind works - not a task to be underestimated.

Edit: Squarebear is thinking in the right direction. There is however, a possibility to program a chat bot to understand the sentence as a whole, I suggest exploring Google Translate - the translation changes when you add a new word, but it does more then simply add the meaning of it to the original translation - it (in cases) changes the whole translated sentence.
On another note, we cannot be sure that our mind does not divide the sentence into parts - yes, you do not do this consciously but you don't know what is going on subconsciously.
Title: Re: anyone want to have a chat or a stab at NLP with me?
Post by: 8pla.net on April 18, 2015, 03:34:13 pm
I do not suggest updating this canned response, because I like it the way it is.

The bot said, "No idea but I know there's 2 nouns and a verb in there..."
In terms of Natural Language Processing, shouldn't that be plural,
"there're 2 nouns," (contraction of there are)?

My comment is only intended to map this canned response to mathematics.  I wonder if you realize how interesting your canned response is to analyze?
Title: Re: anyone want to have a chat or a stab at NLP with me?
Post by: ivan.moony on April 18, 2015, 03:42:25 pm
intelligent bot should be aware of both, of the meaning of the sentence and of its syntax and grammar properties.
Title: Re: anyone want to have a chat or a stab at NLP with me?
Post by: Korrelan on April 18, 2015, 05:18:12 pm
(https://aidreams.co.uk/forum/proxy.php?request=http%3A%2F%2Fi.imgur.com%2FM5BPnFK.jpg&hash=766a2bb61de289d7de8c51f2f35efc294af256af)

Hehe...
Title: Re: anyone want to have a chat or a stab at NLP with me?
Post by: Don Patrick on April 18, 2015, 06:02:06 pm
Human: John ate a pizza.
Human: What did John eat?
Bot: No idea but I know there's 2 nouns and a verb in there...
I've seen you ask this before. Try to see NLP as a pre-processing function: It doesn't have instant direct application. It's like one would say "No idea but I know there's 2 keywords and a wildcard in there..."  :smile4:. NLP serves to normalise the input, to tell which words are superfluous and which words have key roles in the question. You may not be aware of actively dividing a sentence into parts in your mind, but you are aware of who's doing what in the sentence rather than remembering the whole as a bunch of text. Similarly NLP allows a program to distinguish which subject is doing what action to which objects, and it does so with greater accuracy and disambiguation than pattern matching (not to diss pattern matching, but those are the advantages). But still, it is pre-processing only: After the NLP is done converting English to a more concise format, it's still supposed to send that over to another part of the program that examines it further and produces appropriate output.
Title: Re: anyone want to have a chat or a stab at NLP with me?
Post by: 8pla.net on April 19, 2015, 03:28:20 am
Well then... Capitalization and contractions
are the differences between
His girlfriend pats a dog & His girlfriend Pat's a dog.






Hehe...
Title: Re: anyone want to have a chat or a stab at NLP with me?
Post by: ranch vermin on April 19, 2015, 08:17:16 am
Square Bear,   it is pointless unless you can actually involve what it read in its behaviour.

Where im headed is taking what it read and treating it pretty much like it was ordinary code,  so im trying to make a natural english to machine code conversion.     Then it would be useful, but itll be tricky of course, and simplistic.

Its tricky, even if you wrote the text in direct commandments to it it gets some logic paradigm code for something like this->

sign up to email
 pick a search engine url
 search for an online email service
 access email service
 register
 solve captcha
 access email
 check junkmail
 validate account
goto forum
sign up
solve captcha(x2)
visit email
validate account

for some captcha hunter, and it gets more and more detailed to the point where you cant write anymore to it.  Everything has to be detailed to the end or it doesnt know it,  being a typical computer.

Title: Re: anyone want to have a chat or a stab at NLP with me?
Post by: 8pla.net on April 19, 2015, 04:54:31 pm
Ranch in part said, "im trying to make a natural english to machine code conversion."

I think Squarebear's canned response is great to practice "natural english to machine code conversion" with.  It has mathematics that can be extracted, for example "No" is equal to zero. There is a number 2 and "a" is equal to the number 1. 

It may be unintended, or may just come natural to world champions. However in Squarebears canned response, "there" followed by "in there" which may be mapped to recursion, or a for loop on the numbers 0,1,2,3.  There are some other possibilities for mathematics notation too.   (That's why I like it.)

Ranch, natural language to machine code conversion, I believe, may be a good answer to the age old question of whether or not, a bot knows where it is in the stimulus/response process.
Title: Re: anyone want to have a chat or a stab at NLP with me?
Post by: Ultron on April 19, 2015, 09:28:34 pm
I see nobody bothered reading my last reply so I will be very short this time...

intelligent bot should be aware of both, of the meaning of the sentence and of its syntax and grammar properties.

No, they shouldn't (or at least, don't have to be). Many people can talk, but they don't necessarily know how to write and break down what they said into grammatical or morphological units. In fact, people have been talking for a long time before grammar was created.


Edit: This may also contribute to me not liking NLP and NLU focusing on strict grammatical rules.
Title: Re: anyone want to have a chat or a stab at NLP with me?
Post by: 8pla.net on April 19, 2015, 09:47:20 pm
Ultron said, "nobody bothered reading my last reply"

Nope.  I did read this entire thread including your replies.

Thanks for writing them, they were a good read. 

Seems all I've been doing lately is reading threads

instead of starting new ones.

I've had a breakthrough in an A.I. project

which I haven't released to the public.   

So, I don't have much to post lately.

However, I am still here most days, reading

and responding to other people's posts.



Oh, and I may not agree with you, but I am willing keep an

open mind about it
.  I also respect your opinion.  That is a

good dialog you are opening up on morphology, and so forth.

People may avoid grammar because it slows things down way

too much.  But with a robot, that does not have to be  an issue. 

And secondly, any bot that  can handle grammar is a beautiful

and valuable machine.  And bots, good in grammar are certainly

around by programmers who took the time to train them.

 
Title: Re: anyone want to have a chat or a stab at NLP with me?
Post by: Art on April 19, 2015, 11:14:55 pm
Been away for a few but thought I toss this in.

There's a difference between Translating and Understanding...a big difference.

While a Blind person might not be able to "See" or have an appropriate sensory experience of exactly what an apple might be, he / she can certainly experience a very large part of it. It's relative size, shape, texture, small, taste, firmness, crunchiness, sweetness, thick (a bit difficult to chew) skin on the outside, a more firm center core with small seeds, etc.

Could be told that some might be red and some yellow depending on variety but the color issue alone would not necessarily deter the non-sighted person from experiencing or enjoying an apple that can't be seen.

Does usage perhaps play a greater part than any "understanding" or translating?

As long as proper connection are or can be made, then the rest of these "concerns" become moot.

Google's voice enabled search usually get it right every time and there's been times I've accidentally slurred my speech and it still got it correctly.

I'm sure it will get better in time as well but for now, it's pretty spot on! It can also tell you the definition, usage, origin, etc., and can translate as well.

Would you expect any less of your own robot? ;) JK

Title: Re: anyone want to have a chat or a stab at NLP with me?
Post by: Don Patrick on April 20, 2015, 06:27:36 pm
I see nobody bothered reading my last reply so I will be very short this time...

intelligent bot should be aware of both, of the meaning of the sentence and of its syntax and grammar properties.
No, they shouldn't (or at least, don't have to be). Many people can talk, but they don't necessarily know how to write and break down what they said into grammatical or morphological units. In fact, people have been talking for a long time before grammar was created.

Edit: This may also contribute to me not liking NLP and NLU focusing on strict grammatical rules.
You don't need to consciously know how to break a sentence down: You are nevertheless following many linguistical rules, whether you are aware of it or not. At some point you learned them, by example or in school. Where AI is concerned you have the same options: Program the rules as we already know them, or expect the AI to figure out a foreign language without taking classes. I haven't seen any success with the latter yet. *edit*: Except Watson to a degree.

Your earlier post pretty much described the symbol grounding problem, a popular theory which I personally do not consider a problem. A blind person may have no concept of "green", but then do you really have a sensory understanding of "meerkat" or "black matter" or "Higgs Boson particle"? And does this make you incapable of thinking about these subjects intelligently?
The definition of understanding of "symbol grounding" supporters seems to be "To have the exact same forms of knowledge representation as a human", but would that definition not make it impossible for dolphins and aliens and binary circuitry to "understand" anything (-like a human)? Might as well not even try then.

NLP (http://en.wikipedia.org/wiki/Natural_language_processing) is not the same as grammar though. Context-free grammar is a relatively simple form of NLP that was popular up to the 80's, but a lot of the modern techniques have ditched the grammar and work with statistical properties of text instead. It's still processing of language.
Title: Re: anyone want to have a chat or a stab at NLP with me?
Post by: ranch vermin on April 23, 2015, 04:30:31 pm
Symbol grounding is 'reducing difference'  or you could say 'slowing it down'  because your retina is always changing, and your reponse is changing slower.
I claim I can ground symbols by tracking,  the connecting the points together with edges, then comparing edge topologies between different things purely algorythmically start to finish,  could be partially 3d,  and its a vector based approach.

That im fairly confident in the theory of,  but if you actually manage to put it together, you can be a top competitor these days if you actually implement it, because its currently what is being worked on by most ai dudes.  2015.

NLP is more than that, I dont know how the hell you make your robot 'LITERATE'  but I still am stuffing around in my head what it even is to do it, even just generally.

Im wondering if the whole sensor is actually language,  whos to say what doesnt symbolize something, even if its internally in the robots head, for more "self conscious type algorythms"   then its members and operations on members, if you think english is symbolic logical paradigm code, and maths being factoral code.   

Im sorta thinking about taking in commands from the sensor,  but what if its not a direct command,  its something where the reaction is variable.

I actually stopped thinking about this and started back on symbol grounding again, because I havent implemented it yet, and it would quite put me quite up there if I did already.
Title: Re: anyone want to have a chat or a stab at NLP with me?
Post by: Snowman on April 23, 2015, 07:24:26 pm
Here are some random thoughts I have about this subject. Not really too deep but it was still fun to create.
It was getting very late here and so I was starting to mumble some later on in the vid.. Sorry about that.


https://youtu.be/ewo5pLng6KE (https://youtu.be/ewo5pLng6KE)
Title: Re: anyone want to have a chat or a stab at NLP with me?
Post by: spydaz on April 23, 2015, 10:08:47 pm
I just got back into it after a Working break .
Been working on the problem , yet still after tagging the sentence , extracting predicates and subjects , and objects subjects , articles ....
The problem remains

Detecting the sentence type ...
Regardless if it is a complex , compound , complex/compound etc ...

Each sentence or complete thought (could be paragraph)

Is either ,
Reason , question, implication , opinion , description ..... Advice .., report ... Data .... Etc .

Detecting which type of sentence also denotes which reply pathway to choose . This idea or understanding enables for response or no response as sometimes people ramble on an switch subjects mid sentence ... They can be telling you some information or just making and exclamation ... "I like ... " , "a cat sat on the mat" a description of an event which contains data yet not to be saved yet I'm this case it could be a witness statement ...so completely relevant ... By understanding the purpose of the sentence the data in the sentence has a specific placement in the knowledge storage process ....

Should we diagram the sentence ? Or should we categorise the sentence as a thought process or ...

Questions ideas , yet still detecting sentence type or purpose ... Is important for understanding that "the green furry cat jumps over the moon" is a gibberish sentence and although a description is utter "crap" ....,.
Title: Re: anyone want to have a chat or a stab at NLP with me?
Post by: ivan.moony on April 23, 2015, 11:09:43 pm
@Spydaz
Sentence types can be recognized by their syntax elements. Also important value has a context in which a sentence is implanted. Like if you say "ask me some question, I'm curious of what I will hear from you.", as an answer we would get a structure that doesn't need to be answered back.

@AiDreams
if we had a natural language processing system (to recognize all subjects, predicates, actors, patients and other stuff), then deriving implicit knowledge wouldn't be that much hard, we would just have to implement logic deduction mechanism. And that is something I'd like to see with chatbots: to be able to get answers as a logic consequences to inputted data. And after deduction, there simply follows abduction (which is only inversed deduction) and induction, also not very difficult to implement after NLP system is programmed. Having all that goodies that go hand by hand with NLP, one could easily ask a chatbot questions like: "How can artificial food be synthesized?" and if or when there is enough data in the knowledge base, we would get the answer in a form of recipe theory about synthesizing food (which is simply a chain of logic causes and consequences that lead from starting objects to resulting objects). Also I'd like to see automatic learner of new languages, but English NLP is also a nice start that, when solved, could give a nice basic understanding material of how to build higher level automatic universal language learner.

The part of my current work includes investigation of structures by which any natural or synthetic language could be described and so far I'm satisfied with results.
Title: Re: anyone want to have a chat or a stab at NLP with me?
Post by: Don Patrick on April 23, 2015, 11:35:54 pm
Of course purposes are very important if you want to make conversation on top of exchanging information. As Snowman tells in his video, and as any grammar book will tell you, you can distinguish questions from the order "verb-subject" and statements from the order "subject-verb". Question marks, question words and intonation are also not to be ignored as these can override the conventions of syntax.
Other sentence purposes can be distinguished by link words "because", "for example", "although", or by the use of reporting verbs. And then there are some purposes that you can not recognise from syntax at all, but only from context. "My car broke down." becomes an explanation only when it is preceded by "I can't come to work.". And that requires more than just linguistics. It requires the AI to investigate causes and other correlations.

If you're just checking for what not to remember, then I'd suggest only storing things that come up repeatedly, e.g. earlier mentioned subjects that are referred to or elaborated on over the span of several sentences. You could separate temporary and permanent memory. Syntax will only tell you that "the cat jumps" is a present tense statement about a specific cat that should therefore be obvious to locate, yet is nowhere to be found in context, and that therefore this is probably a theoretical statement. Knowledge and inference will tell you that cats can not jump that distance nor breathe in space, and that therefore the statement is a lie. And psychology will tell you what the user actually wants from you.

Ivan: Remove "easily", "simply" and "not very difficult" from your description and I might agree with you. NLP and inference engines are two very different components, and inbetween them you also need a very good knowledge representation for them to work well together.

Here's something of an overview of all NLP techniques, in video explanations: https://class.coursera.org/nlp/lecture
Title: Re: anyone want to have a chat or a stab at NLP with me?
Post by: Snowman on April 24, 2015, 08:31:18 am
Here are some more thoughts. Not especially insightful but at least I'm trying :)


Entire texts should be evaluated and not just single sentences. Spydaz has been attempting to implement this type of evaluation with his NLP programming. Just as a sentence has many rules of grammar to dictate the appropriate conveyance of information, groups of sentences have their own style of grammar. And just like sentence structures, the order of multiple sentences can indicate the type of information being presented. For instance, "Why was I at school today? It was because my parents made me go." This example would not make any sense in the reverse order.

On a larger scale of text evaluation you can examine essays and even books. Large texts often follows the Introduction/Body/Conclusion pattern. There are also a variety of styles of speeches, thesis statements, poetry, sonatas, arguments, etc.

As for evaluating specific types of information being conveyed (ie Reason , question, implication , opinion, etc.), sometimes we humans have to be told expressly what type of information is being presented. Or perhaps, we have to be expecting only a certain type. Occasionally, sentence types are obvious and are indicated by special words like "because". If I ask for a reason why my friend arrived late then I would expect an explanation. If I asked for your opinion that is what I would expect. However, if I was expecting a fact, but instead, received your opinion, I may not be able to distinguish the two. Basically, labeling the type of information being presented is sometimes faulty. It is sometimes difficult to understand the type of information being presented in any conversation.

Lots and lots of people are poor communicators... can I get an Amen! Understanding information being poorly presented can be difficult or even impossible for even a communication expert like Art  O0. Basically, you shouldn't set your sites too high when creating an NLP or an Inference/Deduction Machine. Somethings are only understood through various forms of telepathy ;) , or by truly knowing the converser's personality and personal history. Just do your best and try not to be a perfectionist when making a NLP. It takes a child a very short time to learn the basics of any language, but it will take a person years or even decades to fully understand some higher forms of communication.

So we start off with simple words, then we progress to basic forms of grammar. As children, we have very limited context, because we understand so little about our world. Things like inference and deduction (aka. logic) is barely even working. We probably spend most of our time crying or throwing tantrums because we cannot constructively deal with our emotions. This, I think, is the best place to start with a Chatbot, at the beginning of human language development.

We can convey lots of information through a simple subject-verb sentence. Children are demanding: "Daddy stop." Possessive: "My toy." Insightful: "Daddy Funny." We can demonstrate some conversational logic. Fire is hot. Hot is bad. (therefore) Fire is bad. Yes, this is overly simplified but it can be built upon. Try to convey every form of child logic and simple sentence structure to emulate a child and then attempt to build from there... see where it takes you. Try to make a child-like Ai that could pass a Turing test.  Anyway, it's just a thought.
Title: Re: anyone want to have a chat or a stab at NLP with me?
Post by: ivan.moony on April 24, 2015, 03:17:23 pm
Ivan: Remove "easily", "simply" and "not very difficult" from your description and I might agree with you. NLP and inference engines are two very different components, and inbetween them you also need a very good knowledge representation for them to work well together.

Yeah, that's me, I'm known for always being too optimistic. It's a feature, not a bug :)
Title: Re: anyone want to have a chat or a stab at NLP with me?
Post by: ivan.moony on April 24, 2015, 03:40:25 pm
I follow OpenCog group and here and there pops up something interesting. This is one of those cuties:

https://drive.google.com/file/d/0BzvP-g2cuUrMUUZhZzhpTURWbjJ1b2RubTlBTXdERGNOWjlv/view?usp=sharing (https://drive.google.com/file/d/0BzvP-g2cuUrMUUZhZzhpTURWbjJ1b2RubTlBTXdERGNOWjlv/view?usp=sharing)

In short the authors write about 42 behavioral patterns in verbal comunication. Maybe someone would find it interesting.
Title: Re: anyone want to have a chat or a stab at NLP with me?
Post by: Don Patrick on April 24, 2015, 06:01:18 pm
A paper on speech acts, I see, the descriptive approach of discourse analysis. I haven't found that field of research useful, but it's worth a look just to think about.

Yeah, that's me, I'm known for always being too optimistic. It's a feature, not a bug :)
Ah well, as long as it's not contageous, I can live with that.
Title: Re: anyone want to have a chat or a stab at NLP with me?
Post by: ranch vermin on April 24, 2015, 06:17:58 pm
Ivan,  that looks like something that a markovian chain would do better with that just the letters themselves!

so apart from that "type of statement" as a larger scope on the detail of the statement:::->::->

I just had a blast back to my old theory.   here cop this (very silly because its easy to come up with, and a bit of a throw back, but somehow interesting for me) idea->

what if you had an ordinary markov chain,  and its storing its random bursts, to what you say to them.

so now what if you run a heap of trials, using the markov chain (which is a simulator, the most simple 1d sim you can make.  and is actually the only one you really see.) 

Youve got 400 or so gigahertz from your video card to trial a damn shitload of letter grunts out of it, and the virtual simulation of what your saying to it (even though its only its gibberish version of what you said.) to cycle at this phenomenal rate you need for these isotropic searches. 

but would it ever start making sense?

Its alot like being a (really stupid) dog trainer.

I guess you have to give it a present, or a punishment, and itll predict all the way to the present or punishment (it has to go sim a long way till it gets to either one or the other), given so much text.

Its fully shaped by its sorroundings.  (its sorroundings being the chain database)   Im very interested to try it out.

(id use something like space barring vector machine to do it, but you have to think in letter strings, but its the same idea.)

It seems like a deficiency, not a benefit, because of course if you hand trained it would be smarter.  but you know what an NLP could be good for??    AutoSupervising this thing!

Because NLP is so weak (right?) then itll be easy to confuse these triggers the NLP is giving it.  but it could be fun, and could definitely tell people apart from each other, and lots of other things, and it is actually a fully extendable idea, but just text.

i should know- ive been thinking about video sims FOR ages!  and they are freaking hard.  and noones done it before. only text has been done->http://thinkzone.wlonk.com/Gibber/GibGen.htm (http://thinkzone.wlonk.com/Gibber/GibGen.htm)
Title: Re: anyone want to have a chat or a stab at NLP with me?
Post by: ranch vermin on April 25, 2015, 02:41:25 pm
here snowman, thanks for the video lesson it was good really helped me.

This thing doesnt learn off you at all,  except its supervised with some text group labelling system, I havent ironed out yet.  It will be extremely simple and artificial, and will include what you said in your video, which was great.

Just see how braindead I am at trying pull out an explanation. :)

http://www.youtube.com/watch?v=GPdwZh2hLqU#ws (http://www.youtube.com/watch?v=GPdwZh2hLqU#ws)


[EDIT]  because im brute forcing what it says, its performance gets over the problem of raw data specificy,  so I was thinking for the opponent side (what you say to it)  maybe i have to do a little generalization work on the playback. so instead of linking the raw words, i actually chain the intent. [/EDIT]
Title: Re: anyone want to have a chat or a stab at NLP with me?
Post by: Korrelan on April 25, 2015, 03:11:09 pm
I’ve never tried to write a NLP before but I would probably try something simple like this…
 
A dictionary would have to convert each word (preferably each letter or pixel that makes up each letter) into a unique number.

The input sentences/ knowledge would be added to a stack and given a unique index. 
A routine would continually search the stack looking for groups/ sequences of numbers that occur more than once (duplicates), when found the combination would be added to the stack with a new index and the original found locations replaced with the index.  This method would compact the data and build a hierarchical data structure that could cover very large/ complex conversation topics and sentence structures. 

Indx   Words->
001 - 012 009 786 455 000 000 000 000 000
002 - 344 122 898 000 000 000 000 000 000
003 - 001 786 334 000 000 000 000 000 000 <- Note 001 refers to the top entry etc

I would then set it loose reading as much text as possible and over time each commonly used phrase would gain a unique index and be moved to the top of the stack (for speed). 

Real world data would also be recorded in the stack and if a blackboard (% scoring) technique was used to score the data based on the current conversation stream a rough gist of the whole topic could be generated by feeding the triggered indexes back into the stack; so they in turn trigger other related data etc (like a train of thought) eventually spitting out just one index no matter how complex the conversation topic.  Also provides a kind of holographic feature where one index included in multiple lines can relate a massive amount of relevant data.  Sensory data could also be easily added so its included in the results.  So could heuristics to guide it.

I suppose each entry/ line could be taken as a neuron and the word/ letter/ pixel numbers could be synapse. 

Oh! Any rarely or unused would be deleted over time.

Seems to make sense in my head… I’ll give it some more thought.
Title: Re: anyone want to have a chat or a stab at NLP with me?
Post by: spydaz on April 25, 2015, 03:26:49 pm
The use of the Markov chain really, Interesting. The Markov principle although useful Mainly i can see that its real purpose is prediction. Predicting the conversation... yet not good for determining responses. (probably a wild statement).


A computer cannot know what a "Thing" is, yet the Concept-Net data base attempts this ... knowing the who,what,why,when of something as well as its basic descriptions and possible actions can build a truth table about that object. this can give the computer and understanding about that object.... as we know different object different characteristics. in this way we can develop truth about these objects/Nouns. these objects will have some sort of hierarchy. animal / Vegetable / mineral / person / place ....

when thinking along the lines of NLP information needs to be collected along the way. the Subject verb object Structure gives us some of the data elements in the sentence as well as helping to break the sentence into meaning full clauses.

"his girlfriend Pats a dog" would make sense "His girlfriend Pat's a dog. " does not as the correct punctuation which denotes the clause structure is incorrect. with the extra comma there would be two clauses instead of one.... therefore the apostrophe would be considered to be a mistake unless a set of rules which handle corrections, such as Pronoun begins a new clause, then two clauses would be detected or corrected... these extra complexities are not to be considered in initial models only after multi level testing would these corrections be added and tailored.

Clause structures breaks a single though into single declaratives. (information)

the logic (predicate or inference) is another consideration of the sentence analysis process the logic of a sentence if / then, ALL CATS are animals... gives reasoning capability's to the sentence analysis process. as well as the structure "SUBJECT", "PREDICATE, "OBJECT" predicates can also be categorized to their counterpart in the heir achy..
<person> <Born in><Location>, helps use to do a loose yet targeted, data extraction. (Snowball algorithm)

Motive and Emotive analysis, this could also be defined as sentiment analysis, yet here its suggested to understand the action of the sentence, also the tense, past present or future. emotion has no true part in an AI, yet for the purposes of understanding the emotion of the user, these considerations should be understood. again individual clauses within a individual thought can give an understanding of the sentiment of the overall text. and if the text refers to the future or the past.

a grammar created by programmers, should be based on a simple set of programmable rules.
 
sentence purpose enables for understanding where to file the data received as well as knowing where to retrieve it from. questions asked about each of the Question types, Who, what, why when also have accompanying declarative types
 
after these multi stages of analysis a lot of information Will have been gathered about the sentence or though being Sent by the user. the correct response ........

The correct response should be in answer to the user sent, or even just a gentle confirmation of understanding what has been sent by the user.

Returning the data in a newly constructed sentence based on the users in put...

What are cats?
 Cats are ......

or

What are cats? <<<< Seeking a description of a cat: or definition:

Cats: feline ,<dictionary response>
Has : 4 legs, Offspring, two eyes,  <Wordnet>
Is living, therefore can die. <Logical implications>
Has Location,etc
Can do the actions: <Sleep> <Run> <Jump> <Eat
and the list learned about the cat can go on and on based upon the truths created about that object/Noun....




Title: Re: anyone want to have a chat or a stab at NLP with me?
Post by: ranch vermin on April 25, 2015, 05:11:09 pm
Korrelan, thats a tokenizer as I read it.  It works on repetivities to develop a taxonomy.


Spydaz->
"his girlfriend Pats a dog" would make sense "His girlfriend Pat's a dog. "    - that could be solved by looking back past the sentence, in a machine.


Im fully back into this 'simulation of reality is a type of intelligence' idea.  a markov chain being a simple 1d example of it.

What are cats?
 Cats are ......   *what they do*

i like to say everything is just one thing.
so i like to say a cat has hair.     so the cat does it.    so then you decide how many other things also do it, and then you made the most of 'cat has hair'  :)


[EDIT][ I just deleted the last note because it was too long. [/EDIT]

GENERALIZING NLP->
the more words you say are the same in some context and you are RIGHT,  the more things you know, that you didnt see completely sensitively.
Title: Re: anyone want to have a chat or a stab at NLP with me?
Post by: spydaz on April 25, 2015, 07:25:05 pm
In the logic stages :


All cat have fur ....
Some cats have fur
..... Age old argument

Inference
Title: Re: anyone want to have a chat or a stab at NLP with me?
Post by: 8pla.net on April 25, 2015, 09:47:00 pm
Thanks for the criticism... 

That is something to think about.   Here is what I was thinking originally...

"His girlfriend Pat's a dog. " equals "His girlfriend Pat is a dog. " (without the contraction).

But, I did just made it up, so I admit to not having given it too much thought.

And, by the way, no offense to any girlfriend named Pat!  ;) 

Pat was selected because it is both a name and a verb.
Title: anyone want to have a chat or a stab at NLP with me?
Post by: spydaz on April 26, 2015, 02:35:45 am
The Markov chain could be used to correct such mistakes by predicting what should have been said ....

That error could occur in speech recognition situations where punctuation is not recognised without specifying ....
Such a correction matrix would be necessary.  Specifically to add missing punctuational which should have been detected by an extra long or short pause like a "rest" or "semi breath" as In musical notation. This is also how it would detect if it's pat the verb or pat the pronoun ... Similar to the spell check in word ... Which uses some grammatical rules.
By adding lessons learnt statistically and probabilistically by data mining regression and decision trees ... And maybe cluster analysis K-nearest neighbours  ... I tend not to implement neural networks in data mining as its like cheating the data mining algorithm after knowledge travels through multiple neutrons the neural  network will converge therefore become "overfit" given enough time all neural networks will converge .... But that's another debate plus a bit complicated for here ...

Data mining produces probabilistic results based on past history .. Yet if the history does not contain every possibility then it's impossible for it to be useful as there will always been something uncalculated there fore the answer produced is not correct ... Another reason why parts of speech tagging based on data mining techniques cannot produce 100percent correctness ...
This rough guess of pat as a verb or as a noun would need naive bayes probability to guess based on the last known usage of pat in the thought or conversation . guessing is never good yet it can produce some "fuzzy" results hence fuzzy logic ... Lol... In precise ....

Data mining / machine learning is good when you have all possibilities and combinations already else it's just guessing which is the same as gambling .. Just reducing the odds
Title: Re: anyone want to have a chat or a stab at NLP with me?
Post by: ivan.moony on April 26, 2015, 01:26:32 pm
I've been searching for BNF (http://en.wikipedia.org/wiki/Backus%E2%80%93Naur_Form) grammar rules for English, but I couldn't find any on the web. I guess one need addition of predicates to BNF to describe languages such is English. I wonder if predicate extension is enough.
Title: Re: anyone want to have a chat or a stab at NLP with me?
Post by: 8pla.net on April 26, 2015, 01:47:32 pm
I enjoyed reading your valuable approach, this morning over coffee.  When you said, "But that's another debate plus a bit complicated for here ..." I thought, "Well... I like complicated."   We learn the most from our mistakes, (paraphrasing a science documentary I watched recently on prehistoric man). 

My approach  concerns  practical A.I. engine design, how original coding may handle some of these issues. An A.I. engine knows beforehand that it will be guessing, because it has exhausted all other options.  For efficiency, the matching algorithm may be hard coded, sorted in reverse order by the amount of which the A.I. is guessing.  So the stimulus may set flags as it falls through several conditional branches, with a complete guess being a catch-all at the bottom.

Using intermediate coding techniques, I proffer an A.I. engine may predict, by simply crawling through its own knowledgebase, when and where a mistake is probable, to simulate confidence in its response.
Title: Re: anyone want to have a chat or a stab at NLP with me?
Post by: spydaz on April 26, 2015, 02:00:13 pm
I think a combination. Of approaches , Markov chains , statistics produced from large correct data sets would produce the desired result ...

The original datasets used to produce the results would not be added to the ai .. Just the predictive rules defined by the data mining tasks ...   

Differently , by creating a datacube you can produce massively complex queries which based on the knowledge base created by collecting , predicates , nouns , subjects articles ... Etc ... All information stored about a cat in all its diffent collection methods can be retrieved ... Knowledge storage is also an art form In its self .... Fact tables or relational ...
Naturally relational , yet this has many query problems as well as insert problems ...

Knowledge storage and Nlp have both issues to face ...

Title: Re: anyone want to have a chat or a stab at NLP with me?
Post by: Snowman on April 26, 2015, 07:36:57 pm
Well, here's another video.... perhaps a bit simple for some, but like ranch implied, this video is made just for the fun of it.  ^-^




https://youtu.be/ss3bSJ0FsOg
Title: Re: anyone want to have a chat or a stab at NLP with me?
Post by: ranch vermin on April 26, 2015, 08:50:05 pm
good to see you again snowman.

Im right with you on this,  ive got very similar thinking.

I think its all like one of those choose your own adventure books.

its a bit of a moonshot isnt it,   as far as *my* working implementation theory goes,  the chain keeps the users text in it, the nlp is saying what pathway points it can cross logically to increase store, (says what words it can interchange) and then its got a memory that remembers everything that didnt work, out of random trials.   and it seems to be what it likes to do is avoid swear words from the user. :)

simple,    but you might know that ive been working on a raw data eye as well so it can see and ive been working on 3d motor as well.  for the whole shabammer.

but its a moon shot for sure,  and the only bit i dont totally know is how the nlp is going to find these interchangable words, the mytonymy,  which then gives it more ways to order whats inside it, which is the same as knowing more.

Title: Re: anyone want to have a chat or a stab at NLP with me?
Post by: ranch vermin on April 26, 2015, 10:59:08 pm
some stuff in here on automatic synonym generation and some noun taxonomy stuff->

https://www.hucompute.org/data/pdf/vdbrueck/knowaqu_en.pdf (https://www.hucompute.org/data/pdf/vdbrueck/knowaqu_en.pdf)

which is what i just worked out is N.L.P...  or rather GENERALIZATION DETECTION.  or REDUCTION ALGORYTHM.
Title: Re: anyone want to have a chat or a stab at NLP with me?
Post by: spydaz on April 27, 2015, 07:56:37 am
http://linguistics.online.uni-marburg.de/

This is where you can learn all about language processing ....

Free university ...

I've done all the modules ...
Take a look ... It's better than reading a paper written by students ...