top of page
Search
  • johnmcgaughey255

Fluency and natural language processing

Natural language processing (NLP) is one of the leading technologies in AI. You can see its implantation in a very broad spectrum of things, from Amazon Alexa, to Siri, to machines that develop text. NLP is the study of human languages through the context of a machine learning how to process, understand, and speak that language. The goal of this machine, just like any other machine is to strive to be as perfect as nature is, some people call this God's creation, others evolution, I say those ideas are inseparable... but all alike we can agree that nature is perfection in one shape or another. If you don't believe me that machines strive for the perfection of nature, look at the plane, or maybe a Tesla car. What is better at flying through the air than a bird, after all planes are loosely modeled off of the aerodynamics of a bird. The autonomous function of a Tesla automobile is fundamentally to be aware of its surrounding and to make decisions based on changes in its environment. That should sound familiar to most animals in nature; reactive to their surroundings.

Last blog I talked about how it was a good idea, if we are trying to mimic nature, to use the mechanisms of nature to our benefit. Goodfellow's idea of generative adversarial networks can be described as two networks playing a minmax game against each other, both trying to maximize their respective functions, which in nature were adversarial. Natural selection was the mechanism of nature used to help advance the field of AI to the next level of data processing and generating. Problems in life are generally looked at as our enemies, and they are only there to get in the way of life moving smoothly, but without those problems we would never come up with the solutions to said problems and therefore, would be no forward motion for growth throughout life. I want to stress that this is universally true, throughout nature and evolution. If you have a bacteria population, and there is a antibacterial for this bacterial population, this could defiantly be looked at as a problem. Most of the bacteria will die, but the ones that survive will 'learn' from the problem presented, and therefore create a stronger next generation. Goodfellow's idea was to recognize that problems happen naturally, and to use that to his advantage when creating a new deep generative model.

Fluency in a language is explicitly a human trait, and it is a very incredible feeling to converse with someone in a newly learned language and to do so with understanding, correct pronunciation, and emotion behind your words. For a NLP example I want to use Siri, because everyone with an apple iPhone knows what Siri is, a virtual assistant for Apple. Fluency in speaking and understanding is the goal for engineers at Apple, and they use, what seems to me as a brute force approach of machine learning. I am not saying I know the correct way to go about solving this problem, but I do not feel that brute force is the correct, or at least an elegant approach. I was with my Chinese tutor today, and we were going over pronunciation for characters, and it seemed so repetitive; "First tone, second tone, third tone, forth tone" she said. She asked me to read a short passage from a paragraph we wrote out together, just a sentence or so. Something clicked inside of me, and I said the sentence perfectly, all of the tones were correct, then I just kept reading the rest of the paragraph. Taking the brute force approach with me did not work, it was just repetitive and annoying. There was something about the mixture of a real understanding of what the sentence meant and a history of listening to how the characters were pronounced, that led to an almost emotional syntaxial approach of applying previous unconscious knowledge from hearing to my understanding of what the sentence meant beyond language that led to the fluency I felt today.

My idea proposal for improving NLPs such as Siri, is to create a deep learning system that extracts some abstract understanding from a sentence and uses that abstract understanding along with its previous understanding of the language itself to extract some fluency. I understand that is not a comprehensive plan on how exactly it can be done, but it is just my ideas on a Monday night. Once my knowledge of Python and its applications in machine learning are more full, I will try to implement my ideas into testable systems.

38 views0 comments

Recent Posts

See All

Meta-heuristic optimization

These are all drafts, by the way. They are not meant to be perfect or to convey all the information I wish to convey flawlessly. My blogs are just a way for me to get ideas and my thoughts realized as

Dimensionality reduction and model interpretability

I would say that the main purpose of communication is to give a universal understanding of abstract ideas. An abstraction is, for my intents and purposes, a lower dimensional encoding of a higher dime

bottom of page