Natural language processing (NLP) is a branch of machine learning and AI focused on interactions between computers and humans in the languages humans speak. Humans speak human languages, and computers speak computer languages. They have some commonalities, but they’re also quite different.
For example, on a trip to Paris, your broken French might elicit some laughs, but it’s enough to get you directions to the Louvre. Now imagine a world where one tiny grammatical error rendered your communication indecipherable. Instead of helpful directions from a local Parisian, you get a blank stare.
It may seem ridiculous, but this is very much the world of computer language. We communicate with computers on their terms, in code that they can decipher but is honestly a pain in the neck for us to write.
This human/computer divide has severely limited the value business can get from their data, as access is limited to those with coding skills. But what if we could communicate with computers on our terms, in our languages? What if computers spoke not only Python, JAVA and SQL, but also English, French, Spanish and Japanese? That’s exactly the point of NLP, which promises to make human-computer interaction a little easier for all of us.
The NLP fire was lit half a century ago, and now burns brightly
In 1950 computer genius Alan Turing proposed the Turing test, which essentially says we can consider computers ‘intelligent’ when they are able to fool us into thinking that we’re talking to a real person. Progress was slow, but in the 1960s ELIZA, a simulated ‘psychotherapist’, demonstrated unnervingly human-like interaction (in an experiment that either said amazing things about computers or less-than-flattering things about psychotherapy, depending on your POV). Research continued in the 1970s and made true leaps forward in the late 80s with a shift from complicated hard-coded rules to machine learning algorithms.
Where traditional computing provided an overwhelming book of instructions, machine learning offered the ability for programs to learn from data and base decisions on weighted probabilities. Machine learning models can deal with unfamiliar input, and can actually infer meaning based on previous learning, even from sloppy human speech. These offered a major turning point from old-school hard-coded systems for NLP, which could only be improved by supplying increasingly complex rules, which is generally bad for computer programs, and which nobody likes (except maybe tax attorneys).
Machine learning takes NLP to new heights
Machine learning NLP models, on the other hand, can be improved with nothing more than additional data--the more human speech they can access to learn from, the more accurate they become. Since we humans love to talk, there’s no shortage of data to learn from! In our decade we’ve seen deep learning, which mimics the functioning of a human brain, and other technologies applied to NLP, which have enabled giant leaps forward. These programs can overlook errors and tune to the nuances of human speech, laying the foundation for the kind of breakthroughs that we’re seeing today, such as Alexa.
The next step: applying NLP to enterprise data management
While NLP has taken to spectacular flight in consumer tech, it’s been a little slower on the uptake in B2B technology. Apparently telling Alexa to find songs that sound like Neil Young is easier than telling enterprise software to deliver a dataset that tells you how many customers in Bulgaria are purchasing your product in an average week.
Or is it?
Actually, the fundamentals are already there, it’s just a matter of applying the same technologies that enable Google Search to business logic, something Promethium has pioneered with its new Data Navigation System. This is more than just doing a text-based or keyword-based search for tables / files. Imagine, actually being able to understand the context and intent of the question. Once that is achieved, one can automatically retrieve more than just the data but the data in the proper context capable of answering the question.
The benefits of the ability to communicate with enterprise systems in human language are innumerable. Consider, for example, the amount of time that’s wasted simply trying to hunt down the datasets necessary to address even simple business problems. As crazy as it sounds, the aforementioned “customers in Bulgaria” scenario could take business experts weeks to solve, all because the data might be hard to track down.
If the user could simply tell the computer, “hey, this is what I need”, and the computer retrieved and presented it in ready-to-analyze form, what would that be worth to a business?
To start with, it would be worth the time of whoever was tasked with tracking down that data. Assuming that person is a data engineer or data scientist, that might be quite a bit of capital. Its value would also be measurable in faster decisions and reduced time to market for products, services and other innovations.
It might also mean the difference between beating a competitor to the punch or getting punched by a competitor.
Which side do you want to be on?