Leonardo Pinheiro
22/12/2014
O objetivo deste trabalho é a descrição de um modelo capaz de prever a próxima palavra digitada, como o utilizado em aplicativos de celular.
Os tópicos abordados são os seguintes:
Exemplo de texto e 3-gram.
twitter[1]
[1] "How are you? Btw thanks for the RT. You gonna be in DC anytime soon? Love to see you. Been way, way too long."
trigram[1,]
X0 X1 X2 Frequency
1 way too long 10
Markov Language model - produz previsões baseadas no último n-gram visto. Quanto maior o n-gram melhor a predição, mas mais difícil de encontrar no texto.
Katz Back-off Model passa para um n-gram de tamanho menor caso o n-gram digitado não seja encontrado na base de dados.
Usar mais dados. O app foi construindo usando uma amostra de 550000 mil trechos de textos das bases de dados.
Usar dados específico do usuário e baseados em contexto. O vocabulário de um usuário específico é melhor que um vocabulário geral. O contexto do texto também influencia a predição.
Modelos mais avançados (Ex.: Linear interpolation).
E não esqueça de olhar o app https://lspinheiro.shinyapps.io/swiftkey/. Obrigado!