Какова вероятность расчета в модели языка униграмм?

Я создал модель языка униграмм для реализации завершения предложения. У меня есть все слова с номером их вхождения.

Я запутался в том, как их сравнить отсюда. Я бы подумал, что мне нужно рассчитать вероятность каждого случая и взять самый большой.

Так что, если у меня есть 3 слова, которые можно использовать, я сравниваю количество вхождений каждого слова и беру наибольшее? Это правильная реализация?

Или я делю количество вхождений каждого слова на количество всех (различных?) Слов обучающего набора?

Спасибо.

1 ответ

Если вы не хотите использовать какое-либо сглаживание (Тьюринг, Кнезер-Ней и т. Д.), Возьмите необработанные значения каждого слова (формы) и разделите их на общее количество слов в вашем корпусе (текст). Это даст вам вероятность каждого слова. Теперь вы не всегда выбираете тот, который имеет наибольшую вероятность, потому что ваш сгенерированный текст будет выглядеть так:

'the the the the the the the ...'

Вместо этого вы должны выбрать слова в соответствии с их вероятностью (смотрите здесь для объяснения).

Кстати, вы должны почтовый индекс, если вы хотите предложения по его улучшению.

Другие вопросы по тегам