20/04/2020

Overview

  • The objective of the project is to generate predictive text based on the text available in several datasets.
  • We accept an input of a string and give three possible suggestions for the next word.

Algorithms

  • We use the n-gram model with Kneser-Ney smoothing and back-off.
  • We retrieve the last n-1 letters of the input and look to find a match in the list of n-grams.
  • If we find a match with sufficient probability, then we return the last word of the n-gram.
  • However if we don’t, we look out in the (n-1)-gram and so on.

Sample text

  • “Every day is a new”: day/one/York
  • “I love”: you/it/them
  • “What are you”: doing/having/eating
  • “You are an”: amazing/excellent/awesome

Conclusion

  • You can find the web app here.
  • Here is the documentation.
  • Thank you for reading!