Skip to content

Alaska-666/Python_review_MIPT

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 

Repository files navigation

Задание: разработать утилиту, которая на основе заданных текстов генерирует свои.

Обязательная часть: Считать входные данные. При считывании из файлов запрещается полностью загружать содержимое файлов в память. Единственное ограничение на размер файла - любая строчка файла заведомо помещается в память. При считывании очищать тексты: выкидывать неалфавитные символы, опционально приводить к lowercase. Разбить тексты на слова. Подсчитать, насколько часто за одним словом следует другое. То есть для каждой пары <слово1>-<слово2> посчитать, сколько раз раз эта пара встретилась в тексте. Сохранить получившуюся модель в файл таким образом, чтобы можно было восстановить слова и частоты. Реализовать загрузку модели из файла. Для заданного начального слова и заданной длины выводить сгенерированную последовательность слов на основе модели. Варианты реализации выбора: На каждом шаге выбирается слово исходя из того, какое слово было предыдущим. Для <слово1> берутся частоты соответствующих <слов2>, на их основе составляется массив [<слово2-1>, повторённое <частота слова2-1> раз, <слово2-2>, повторённое <частота слова2-2-> раз, ...]. Выбор слова из этого массива производится с помощью random.choice. Через кумулятивное распределение: https://stackoverflow.com/a/3679747. Отнормировать частоты и сделать numpy.random.choice.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages