SWIPHT App - Predictive Text Entry

Jody P. Abney
07-Dec-2014

What is SWIPHT App?

Meet our next word prediction tool, Simple Word Inferential Prediction Heuristic Tool, loving known as SWIPHT (yes, pun intended) App for predictive text entry.

Launch SWIPHT App

Simply type a phrase (sequences of words) , e.g. an incomplete sentence, and click the “Predict” button.

screenshot

Algorithm Description

  1. Clean and tokenize the user input text
  2. N-grams derived from a training text corpus along with a “back-off” strategy are utilized to predict the new word based on the user input.
  3. Return the predicted word(s) up to the maximum number of predicted words user-parameter.

Backoff Model

Planned Enhancements

  1. Refine the model space requirements by utilizing hash tables to store the ngram text.
  2. Increase the model prediction speed through hash searches based on Planned Enhancement 1.
  3. Incorporate an approach for mispelled words and convert the model to a “reactive” approach.
  4. Increase the accuracy of predictions by incorporating Hidden Markov Models for Parts of Speech (POS) tagging.
  5. Enhance the “out of dictionary” responses.
  6. Enable other languages such as Spanish, French, German, Dutch, etc.
  7. Extend the model to become a “learning” model.
  8. Make the model extensible on the iOS8 platform for in-app use.

Acknowledgement and References

Sincere thanks to Brian Caffo, Jeff Leek, and Roger Peng from the John Hopkins University Data Science team and Coursera for such an elightening and challenging course series.

I have certainly learned a lot during the series, been challenged to step out of my comfort zone, and have already applied my newly obtained knowledge to problems in my current work environment.