Respuesta breve: investiga modelos de n-gramas y entrena uno
Su problema está relacionado con el modelo de idioma.
El modelado del lenguaje tiene como objetivo predecir estadísticamente la siguiente palabra dado el contexto (entre tareas similares como predecir una palabra que falta con las palabras anteriores y siguientes, y lo contrario: predecir el “contexto” que da una palabra).
- Cómo escribir una aplicación simple de autoaprendizaje usando Scala que comprenda las entradas del lenguaje natural
- ¿Por qué Estados Unidos no reemplaza a los inmigrantes con inteligencia artificial?
- ¿Es posible la inteligencia artificial? ¿Por qué?
- ¿La inteligencia artificial solo involucra a robots?
- ¿Existe un problema moral / ético con las relaciones sexuales entre humanos y robots humanoides, cuando el robot se ve y se comporta exactamente como un humano?
Para resumir, hay dos alternativas para lograr esto: usar modelos de n-gramas o usar la inclusión de palabras. Estos últimos muestran resultados impresionantes estos últimos años entrenados por Neural Networks (RNN, LSTM, …), a la que pertenece el famoso modelo de Google word2vec. Sin embargo, en su caso, usaría la (forma) n-grama más simple.
Puedo recomendar buenas conferencias al respecto:
https://www3.nd.edu/~dchiang/tea…
https://web.stanford.edu/class/c…
así como (Mikolov et al., 2013) que describe el modelo de última generación word2vec, que generalmente se implementa en kits de herramientas como TensorFlow.