Reputation: 819
My project needs some natural language processing. I'm completely new to the field.
What I am trying to get is when user enter a character, I want to get a list of English characters that can follow that specific character in order to make a legitimate word.
What is the specific term in NLP for doing this? I tried googling for a while, but had no luck since I don't know the term. Any good tutorials to start with? Are there any good libraries in doing this specific task?
Thank you.
Upvotes: 1
Views: 1711
Reputation: 121992
Welcome to the NLP community.
The term you're looking for is most probably query prediction
or sentence prediction
. For example when you type some characters in google, it starts to prediction certain word/phrases that you might want to search for. And behind the technology, they used both (a) language based heuristics and also (b) user-based search history to train their model. They call it Google Instant
, see http://www.google.com/insidesearch/
If you're looking for sentence/word prediction
, then it's more like when you use the phone there is a function that helps you type faster, technically, it's call autocomplete
(https://en.wikipedia.org/wiki/Autocomplete), see https://en.wikipedia.org/wiki/Autocomplete. The modern day autocomplete
makes use of NLP to predict syntactically/semantically words that follows what you type.
As @evan says, markov chain
is a method of learning patterns from your training data and then when testing your system, it can guess the word accordingly to whatever heuristics/statistical prediction that you have implemented. see https://en.wikipedia.org/wiki/Markov_chain
Upvotes: 1
Reputation: 7501
Have a look at language models, as well as letter frequencies. Markov Chains are often used for this kind of problem as well.
Upvotes: 1