Нахождение вероятности следующего символа в строке с учетом предыдущих символов? - PullRequest
0 голосов
/ 10 июня 2018

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

При заданном наборе данных из последовательностей символов :

Если слово начинается с «A», какова вероятность появления всех возможных символов в следующей последовательности строки набора данных (например, «b», «c», «d»)?И из этой вероятности, какова вероятность следующих символов в последовательности?

Имена:

  • ADDA
  • ANNA
  • ADAM

2-й символ после «a» как 1-й: 66,6% «d», 33,3% «n»

3-й символ после «d» как 2-й: 50% «d», 50%'a'

3-й символ после 'n' как 2-й: 100% 'n'

4-й символ после 'd' как 3-й: 100% 'a'

4-йсимвол после 'n' как 3-й: 100% 'a'

4-й символ после 'a' как 3-й: 100% 'm'

Есть ли способ сохранить все такие данные вМожно ли использовать такой формат, чтобы я мог использовать данные для генерации символов после заданного первого символа на основе вероятности следующих символов в наборе данных?

Я хочу создать список имен следующим образом:

  1. Произвольный выбор первого символа
  2. Добавление символа, выбранного из списка возможных символов и их вероятностей
  3. Промывка и повторение с различной длиной символа

Я не прошу полного решения - просто предложение о том, как это можно сделать.

Я прошу прощения, если этот вопрос был задан.И, пожалуйста, дайте мне знать, как улучшить мой вопрос, если вы обнаружите какие-либо проблемы с ним.

1 Ответ

0 голосов
/ 10 июня 2018

Для всех, кому случится найти этот вопрос: я нашел это сообщение в блоге , в котором есть хороший учебник по цепям Маркова, который используется для предсказания вероятности появления следующего персонажа среди многих вещей.Вот Википедия для Марковских Цепей.

...