Подтвердить что ты не робот

Простой генератор случайных английских предложений

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

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

4b9b3361

Ответ 3

Я знаю, что это старый вопрос, но, поскольку я нашел его через Google, я думаю, что стоит упомянуть что-то вроде Контекстно-бесплатные грамматики в дополнение к Марковские цепи.

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

Например, я обычно вижу Марковские цепи, предложенные как способ создания слов "английского звучания". Если вы создаете цепочку Маркова, используя буквы из набора данных английских слов, выход будет словом, которое звучит по-английски, но это не обязательно будет реальное слово. Я считаю, что то же самое можно сказать и о предложениях - вы можете генерировать что-то, что может звучать нормально, но это может быть не грамматически корректное предложение.

Контекстные бесплатные грамматики (или, возможно, также обычные грамматики?) могут быть лучшим кандидатом, поскольку они генерируют предложения в соответствии с определенным набором правил. И было бы легко заполнить его своими словами, как требует исходный вопрос. Недостатком является то, что вам нужно самим определять эти правила, а не полагаться на набор данных. Прошло много времени с тех пор, как я использовал грамматику для создания английского предложения, поэтому не помню, как трудно было получать хорошие/разнообразные ответы.