- PVSM.RU - https://www.pvsm.ru -

Генерируем тексты песен Кис Кис цепями Маркова в 50 строк

Сегодня я хочу рассказать про свой опыт генерации текста песен с помощью python и библиотеки Markovify

Дисклеймер: автор хотел повеселить себя вечером и не придумал ничего лучше, как:

В качестве корпуса для "обучения" цепи я буду использовать текст песен группы Кис Кис.

image

Пикча выше иллюстрирует то как работает цепь Марокова. А вот неплохая статья [1].

Начало

Я предполагаю что читатель уже сколько знаком с питоном и имеет предустановленную IDE и Python версии >3.5.

Установим необходимую библиотеку :

pip install markovify

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

IND = "Припев"
Find2 = "Переход:"
INFILE = "corpus.txt"
OUTFILE = "output.txt"
ENC = "utf-8"
with open(INFILE, encoding="UTF-") as infile, open(OUTFILE, "w", encoding="UTF-8") as outfile:
    for line in infile:
        if FIND or Find2 not in line:
            outfile.write(line)

os.remove(INFILE)
os.rename(OUTFILE, INFILE)

текст который я уже обработал [2]

А теперь давайте воспользуемся этой замечательной библиотекой и наконец генерить наши тексты .

with open("C:/Users/alexd/PycharmProjects/untitled/corpus.txt",encoding='utf-8') as f:
    text = f.read()
text_model = markovify.Text(text)
for i in range(10):
    print(text_model.make_short_sentence(380))

Результат:

Но на тебе я ставлю точку, это точно, Вот мое тебе «пока». Я говорю тебе в ответ: Что еще тут непонятно?

Итог

Я постарался максимально коротко рассказать как за всего несколько минут сгенерировать текст практически чего угодно. Зачем? -Ну, это весело. Бесполезно, но чертовски весело.

Генератор школьных эссе [3]

Использованные материалы [4]

Автор: Александр Николич

Источник [5]


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/yumor/348934

Ссылки в тексте:

[1] статья: https://neerc.ifmo.ru/wiki/index.php?title=%D0%9C%D0%B0%D1%80%D0%BA%D0%BE%D0%B2%D1%81%D0%BA%D0%B0%D1%8F_%D1%86%D0%B5%D0%BF%D1%8C

[2] текст который я уже обработал: https://github.com/AlexWortega/botfortest/blob/master/kiskis.txt

[3] эссе: http://college-crapplication.appspot.com/

[4] Использованные материалы: https://github.com/jsvine/markovify

[5] Источник: https://habr.com/ru/post/491550/?utm_source=habrahabr&utm_medium=rss&utm_campaign=491550