Научная статья на тему 'Генерация стихов по прозаическому тексту'

Генерация стихов по прозаическому тексту Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
6207
772
Читать
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
АВТОМАТИЧЕСКАЯ ГЕНЕРАЦИЯ СТИХОВ / ГЕНЕРАЦИЯ ТЕКСТА

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Максимов А. А., Крапчатова Т. В., Клышинский Э. С., Визильтер Ю. В.

В статье рассматривается метод автоматической генерации поэтических текстов на основе использования прозаического текста, написанного пользователем. За счет использования перестановок и замен в связанном (в синтаксическом и семантическом смысле) тексте на выходе предлагаемого метода получается связанное стихотворение со сбивчивым ритмическим рисунком. В статье приводятся несколько примеров работы метода.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
Предварительный просмотр
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Генерация стихов по прозаическому тексту»

Генерация стихов по прозаическому тексту

Максимов А.А. (pumpupumpu@rambler.ru), Крапчатова Т.В., МГТУ им. Н.Э. Баумана, каф. ИУ-7 Кл ышинский Э. С. (klyshinsky@itas. miem. edu. ru), МИЭМ, каф. ИТАС Визильтер Ю.В. (viz@gosniias.ru), ГосНИИАС

Ключевые слова: автоматическая генерация стихов, генерация текста В статье рассматривается метод автоматической генерации поэтических текстов на основе использования прозаического текста, написанного пользователем. За счет использования перестановок и замен в связанном (в синтаксическом и семантическом смысле) тексте на выходе предлагаемого метода получается связанное стихотворение со сбивчивым ритмическим рисунком. В статье приводятся несколько примеров работы метода.

1 Введение

Стихи - важная составляющая культурной жизни. В настоящее время тема стихов широко развивается и на страницах интернета: помимо словарей рифм создается множество форумов, блогов и специализированных сайтов. Пользователи регистрируются на этих сайтах не только для того, чтобы сочинять стихи или писать на них рецензии. Это направление позволяет многим людям творчески себя реализовывать, общаться, составлять оригинальные поздравления для друзей и родных, изучать родной язык и просто развиваться духовно, что очень ценно в современном мире, когда словарный запас среднестатистического человека постепенно падает. Автору часто требуется поддержка, оценка творчества, а где-то подсказка или помощь. Большей частью эти потребности могут быть удовлетворены в результате общения с другими авторами, но начинающему поэту или обычному человеку, не обладающему врожденным талантом сочинять стихи, на первом этапе и в процессе написания стихов может помочь программа, позволяющая подбирать рифму и составлять стихотворные строки.

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

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

2 Обзор существующих решений

Зарубежных систем автоматического подбора рифмы и составления стихов существует достаточно много, например, программные продукты: Gnoetry, JanusNode, Rhyming Robot [1], но их аналогов для русского языка можно перечислить лишь

единицы [2]. Такая ситуация возникает в связи со сложностью языка и его языковых норм. Несмотря на это, темой нашего исследования является создание стихотворных текстов именно для русского языка.

В настоящее время существует множество генераторов текста - компьютерных программ, способных генерировать последовательности символов, внешне похожие на текст, но при этом, как правило, лишённые смысла [3]. Тексты, созданные с помощью генераторов, являются правильными с точки зрения большинства языковых норм. Ряд программ достигает достаточно высокого качества генерируемого текста. Неподготовленный читатель, неглубоко вникающий в текст или не знакомый с предметной областью может посчитать такой текст осмысленным.

Существуют разные виды генераторов текста, различающиеся своими возможностями и применяющие различные методы [4]. Несмотря на это не слишком глубокий анализ с легкостью выявляет искусственность происхождения полученных подобным образом текстов. Здесь мы не будем подробно останавливаться на методах их работы и перейдем к рассмотрению специфики выбранной предметной области.

/-Ч о о

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

Одним из ярких представителей этого способа реализации является генератор стихов им. А.С. Пушкина, представленный Яндексом [5]. В качестве материала для генератора текстов взяты стихи Пушкина, поэтому исходные данные хорошего качества. Но алгоритм комбинации подобных стихов очень прост. Предварительно было подготовлено большое количество материала, разбитого по стилю и собранного в базу данных. Во время работы генератор обращается к созданной базе данных и подбирает строки с одинаковыми окончаниями. Результат в итоге получается красивым, но бессмысленным. Сами разработчики позиционируют свою работу, как интересную идею для любителей творчества поэта, т.к. можно угадывать, из какого произведения взята определенная строчка. Ниже приведен пример работы данной системы.

И по хребтам твоим направить Кто, мир и негу возлюбя Могу ли их себе представит Кто, мир и негу возлюбя "Погибни! - грозно восклицает Здесь невод мокрый расстилает Постели стелют; для гостей В толпе могучих сыновей Оставим витязей на час Когда не в шутку занемог Beef-stеаks и страсбургский пирог Святую тайну, и для нас Но, боже мой, какая скука Его пример другим наука

Подобными работами Интернет насыщен достаточно сильно: различные поздравления на все случаи жизни, стихи о любви и множество других. Основное их отличие - набор текстовых данных. Так как среднестатистический пользователь таких программ не силен в литературоведении, главным качеством всех «стилевых» стихотворений остается быстрота получения уникального текста. Сгенерированные стихи — это, в первую очередь, индивидуальные, необычные и запоминающиеся поздравления, а относятся ли они к литературному творчеству — решать их пользователям. В связи с большой скоростью генерации, пользователь может получить несколько вариантов, из которых выбрать или скомбинировать наилучший.

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

Многие генераторы составляют абсолютно парадоксальные стихотворения [6]: недавно я нечаянно сгорел, уменьшив плесень солнечной детали... и понял: как от были мы устали -я в тот же миг случайно околел!

или еще один пример:

завербуй меня, старушка, завербуй! у меня, увы, на сердце - лишь капрон, я - густой казуистический бизон, а точнее - просто чёрствый буржуй...

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

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

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

Часть сервисов осуществляют платные услуги более высокого качества, специализируясь на генерации стихов «по случаю» [7, 8]: Окна разинув, стоят дома, Прохожие рты раскрыли, В твой День рожденья ликует страна — Растут за спиною крылья!

Настроек подобные приложения предоставляют немного: ограничения по длине, повод для поздравления, некоторые особенности изложения и несколько слов о содержании (зачастую лишь одно).

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

строк, различных по смыслу, но возможности самовыражения и творчества в этом случае все равно остаются ограниченными.

У поэта процесс поиска рифмы к какому-либо слову может занять длительное время, поэтому в настоящее время достаточно популярны программы, помогающие подобрать рифму к определенному слову. Алгоритм работы подобных программ прост: пользователь вводит слово, программа пытается подобрать к нему все возможные рифмы из заранее созданной базы после чего выводит их пользователю в виде списка (возможно, даже с оценкой степени гармоничности рифмы). Подобное приложение используется как поэтами, так и обычными людьми. Подобные сервисы используют предобратотанные словари. Так, например, программа «Рифмовник» [9] использует ряд словарей (грамматический, орфоэпический, толковый, синонимов и т.д.). Объем словарей является довольно представительным, например, морфологический словарь содержит 156 000 лексем (4,5 млн словоформ), а словарь рифм содержит 102 000 слов (3,8 млн словоформ).

С одной стороны очевидный плюс подобного сервиса в том, что охватывается большое количество слов. С другой стороны большая часть найденных слов вряд может использоваться в рамках стихотворения, поэтому некоторые сайты (например, stihidl.ru) используют усовершенствованный алгоритм. Поиск рифмы осуществляется, основываясь на реальных стихотворениях, исследуются только те слова, которые действительно используются поэтами в стихотворениях, но стихотворная база словаря в этом случае должна быть огромной.

Анализ существующих решений показал, что аналогов предлагаемого метода, позволяющего преобразовать прозаический текст в стихотворный (или хотя бы рифмованный) не существует. Генераторы стихов из набора строк имеют слабую творческую составляющую, так как получаемые результаты ограничены уже созданными стихотворениями, что сложно отнести к творчеству. Подобные сервисы используют обычные пользователи для ограниченного круга задач, в основном для генерации однотипных произведений для поздравлений и так далее. Генераторы рифмы к определенному слову пользуются популярностью и среди поэтов, но только в виде единовременного помощника при возникновении трудностей с подбором нужного слова. При этом выбор ограничен размерами словаря, и большинство слов не применимо для включения в литературное произведение. Можно сделать вывод, что приложения, позволяющего создавать стихотворный текст с сохранением смысла, который поэт стремиться донести до читателя, на русском языке не существует.

П и / и и \

Заметим также, что предлагаемый подход (по крайней мере пока) также не претендует на звание творческого процесса или высокое качество генерируемого результата.

3 Используемые рифмы

Данный раздел приводится по «Учебнику стихосложения» Т. Скоренко [10].

Рифма - повторение сходных сочетаний звуков в конце ритмической единицы, связывающих окончания нескольких строк. В русском классическом стихосложении основным признаком рифмы является совпадение ударных гласных (ассонансная рифма). К более современным изобретениям относится диссонансная рифма, когда ударные гласные не совпадают. Рифма отмечает звуковым повтором окончания стиха (клаузулы), подчеркивая междустрочную паузу, а тем самым и ритм стиха.

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

Мужская - рифма с ударением на последнем слоге в строке. И море, и буря качали наш челн; Я, сонный, был предан всей прихоти волн. Две беспредельности были во мне, И мной своевольно играли оне.

Женская - с ударением на предпоследнем слоге в строке. Тихой ночью, поздним летом, Как на небе звезды рдеют, Как под сумрачным их светом Нивы дремлющие зреют.

Дактилическая - с ударением на третьем от конца строки слоге, в связи с чем повторяющая схему дактиля.

Девочка во поле с дудочкой ивовой, Зачем ты поранила веточку вешнюю? Плачет у губ она утренней иволгой, плачет все горше и все безутешнее.

Гипердактилическая - с ударением на четвертом и последующих от конца строки слогах. Эта рифма на практике встречается очень редко, в основном в произведениях устного фольклора. Пример рифмы: Леший бороду почесывает, Палку сумрачно обтесывает.

В зависимости от совпадения звуков различают рифмы точные и неточные. В неточной рифме достаточно совпадения части фонетических признаков. Чем меньше совпадающих признаков фонемы, тем "хуже" созвучие.

Согласные фонемы различаются:

1) по месту образования

2) по способу образования

3) по участию голоса и шума

4) по твердости и мягкости

5) по глухости и звонкости

Признаки эти, очевидно, неравноценны. Так, фонема П совпадает с фонемой Б по всем признакам, кроме глухости-звонкости (П - глухая, Б - звонкая). Такое различие создает рифму "почти" точную: окоПы - осоБы. Фонемы П и Т различаются по месту образования (губная и переднеязычная). ОкоПе - осоТе - тоже воспринимается как рифменное звучание, хотя и более отдаленное.

Первые три признака создают различия фонем более существенные, чем два последние. Можно обозначить различие фонем по трем первым признакам, как две условные единицы; по двум последним - как одна. Фонемы, различающиеся на 1-2 условные единицы, созвучны. Различия на 3 и более единиц на наш слух созвучия не удерживают.

К созвучным согласным относятся, прежде всего, пары твердых и мягких, но к таким замещениям прибегают достаточно редко. Наиболее употребительно замещение глухих и звонких согласных. Хорошо отзываются друг другу смычные (способ образования) П-Т-К (глухие) и Б-Д-Г (звонкие). Соответствующие два ряда фрикативных Ф-С-Ш-Х (глухие) и В-З-Ж (звонкие). Х не имеет звонкого аналога, но хорошо и часто сочетается с К. Созвучны Б-В и Б-М, а также М-Н-Л-Р в различных сочетаниях. Мягкие варианты последних часто сочетаются с Й и В (России[россиЙи] - сини - силе - красивы).

Следовательно, точной рифма является тогда, когда гласные и согласные звуки, входящие в созвучные окончания стихов, в основном совпадают. Точность рифмы увеличивается и от созвучия согласных звуков, непосредственно предшествующих последним ударным гласным в рифмующихся стихах. Неточная рифма основана на созвучии одного, реже - двух звуков.

4 Генерация стихов

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

Была поставлена задача преобразовать поданный на вход текст следующим образом.

• Текст разбивается на последовательность строк таким образом, чтобы строки были примерно равной длины.

• Последние слова соседних строк по возможности должны попарно рифмоваться.

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

• С той же целью некоторые слова могут быть заменены на синонимы.

Общий алгоритм генерации стихов следующий.

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

2) Создается список возможных вариантов текста с различными перестановками слов. Здесь используется модуль синтаксического анализа, проверяющий структуру текста, так как именно связи между словами дадут необходимые перестановки. В результате перестановок оценивается длина строки.

3) Для каждого варианта выполняются следующие действия:

• с помощью модуля подбора рифмы подбираются строки стихотворения;

• оценивается ошибка данного варианта: дисперсия длин строк относительно среднего.

4) Среди полученных ошибок выбирается минимальная и соответствующее ей стихотворение выводится на экран.

Рассмотрим теперь методы работы отдельных этапов алгоритма.

Входной текст подвергается морфологическому и синтаксическому анализу. Для этого были использованы соответствующие библиотеки сайта aot.ru [11]. При выборе возможных альтернативных вариантов используется ряд правил. Замена слов местами возможна в следующих случаях.

• При рядом стоящих существительном и прилагательном, принадлежащих к

одной синтаксической группе.

Пример: "длинная дорога" преобразуется в «дорога длинная».

• При рядом стоящих наречии и прилагательном, принадлежащих к одной

синтаксической группе.

Пример: «очень красивый» преобразуется в «красивый очень».

• При рядом стоящих глаголе и прямом дополнении, принадлежащих к одной синтаксической группе.

Пример: «рубить дрова» преобразуется в «дрова рубить».

• Внутри выражений обозначающих сравнительную степень. Пример: «гораздо сильнее» преобразуется в «сильнее гораздо».

• Внутри генитивной пары.

Пример: «река Москва» преобразуется в «Москва река».

• Внутри однородных конструкций, таких как: прилагательные, инфинитивы, наречия.

Пример: «зеленые и красные» преобразуются в «красные и зеленые».

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

Алгоритм преобразования текста обрабатывает текст, пока тот не закончится. В начале работы в качестве текущей позиции в тексте принимается первое слово. Сам алгоритм состоит из следующих шагов.

1) Для каждой новой строчки от начала отсчитывается минимальное количество слогов. Значение счетчика увеличивается, пока не станет больше минимального. Каждое слово с текущей позиции в тексте обрабатывается модулем, разбивающим на слоги, после чего текущая позиция переносится на начало следующего слова.

2) Пока к строке не подобрана рифма, производится обработка каждого слова, начиная с текущей позиции. Алгоритм подбора рифмы описан ниже. Подбор осуществляется к предыдущим найденным строкам стихотворения. Если строка первая, то она всегда рифмуется, т.к. список предшествующих строк пуст. Если к слову рифму подобрать не удается, то текущая позиция в тексте перемещается к следующему слову и программа пытается подобрать рифму к нему. Таким образом, длина строки будет увеличиваться по сравнению с минимальной.

3) Как только рифма к строке найдена, строка добавляется в результат с учетом всех пробелов и знаков препинания, осуществляется переход к пункту 1.

Алгоритм подбора рифмы к слову следующий.

1) Для каждого слова определяется набор параметров:

• порядок ударной гласной от начала;

• число букв с конца до ударной гласной;

• последующая согласная (если слово заканчивается на ударную гласную, то

выбирается предшествующая согласная).

2) В зависимости от исходных способов рифмовки, выбираемых пользователем, два слова рифмуются если их параметры совпадают. При этом производится учет созвучности гласных и согласных.

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

Основной определяющей характеристикой строки стиха является ее длина, которая в стихотворном творчестве выражается количеством слогов. Для этого

необходимо выбрать алгоритм деления слова на слоги. Подойти к реализации данной задачи можно тремя разными способами:

1) "Графическим", исходя из которого переносы строятся так, чтобы не затруднять зрительное восприятие слова или фразы как графического целого, но задать программно понятие "графического целого" не представляется возможным.

2) "Морфемным", согласно которому при переносе не разбиваются значащие части слова. Плюсом является понятная и машине и пользователю логика переноса, к минусам относится необходимость составлять словарь морфем, которых существует достаточно много.

3) "Фонетическим", то есть "слоговым", где переносы реализуются так, что бы не затруднять чтение слова (слог является в русском языке единицей чтения и письма).

Для реализации был выбран третий способ. Его достаточно легко реализовать, но она требует введения системы правил, по которой обрабатывается первичный результат. Кроме того, для пользователя неочевидна логика разбиения, так как слогораздел в русском литературном языке обусловлен принципом восходящей звучности. По степени звучности обычно обозначают [12]: гласные - 4, звонкие сонорные согласные 3, звонкие шумные согласные 2, глухие согласные 1. Деление на слоги в таком случае производится при переходе от большего значения к меньшему. Приведем несколько примеров записи слов: друзья 23434 дру-зья; капуста 1414114 ка-пу-ста; черная 143344 че-рна-я; ястреб 3411343 я-стреб; хоккей 141143 хо-ккей; каменная 143433434 ка-ме-нна-я; Дарья 24334 Да-рья; коньки 14314 конь-ки; семья 14334 се-мья;

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

5 Результаты экспериментов

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

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

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

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

Нормальная форма определяется как

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

Входной текст: Описательная сила модели формулируется как максимально возможное покрытие грамматических явлений рассматриваемого языка. Объяснение в теоретической лингвистике заключается в рассмотрении вопроса о существовании в языке именно данных наблюдаемых фактов, а не других.

Результат:

Описательная сила модели формулируется как

максимально возможное покрытие грамматических явлений языка рассматриваемого. Объяснение

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

2) Художественный текст.

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

Результат:

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

ногами ступенькам. Надо было спешить. Непонятно почему, но надо. Его еще раз кольнуло - тревожно и бессмысленно, по шее прошел холодок.

3) Стихи, записанные в стиле прозы (без деления на строки).

Входной текст: Утром было солнечно и совсем тепло. Озеро широкое по двору текло. В полдень подморозило, вновь зима пришла, затянулось озеро корочкой стекла. Расколол я тонкое звонкое стекло — озеро широкое снова потекло. Говорят прохожие: —Вот весна идет! —А это я работаю, разбиваю лед.

Результат:

Утром было солнечно и совсем тепло. Озеро широкое по двору текло. В полдень подморозило, вновь зима пришла, затянулось озеро корочкой стекла. Расколол я тонкое звонкое стекло — озеро широкое снова потекло. Говорят прохожие: — Вот весна идет! — А это я работаю, разбиваю лед.

6 Выводы

Как это видно из примеров, метод неплохо справляется с определением места рифмы в тексте. Кроме того, в простых случаях алгоритм успешно справляется с перестановкой отдельных слов, хотя это не всегда приводит к качественному

улучшению характеристик стиха. Однако соблюдение ритмического рисунка на текущем этапе достигнуто не было.

В перспективе метод должен позволять проводить следующие действия:

• предварительный анализ текста;

• разбиение на абзацы;

• подбор оптимальной длины строки;

• подбор рифмы с использованием расширенного словаря синонимов;

• подбор ритма с использованием синтаксического анализа и изменения последовательности слов в тексте, вставки или пропуска слов;

• оценку ритмики стиха;

• выбор в процессе составления оптимального размера стиха и реализация определенного ритма стихотворения.

Список литературы

1. http://netpoetic. com

2. http://mfsoft.ru

3. Павлов А.С., Добров Б.В. Методы обнаружения поискового спама, порожденного с помощью цепей Маркова // Тр. XI Всероссийской научной конференции "Электронные библиотеки: перспективные методы и технологии, электронные коллекции". Петрозаводск, 2009. 311-317.

4. Павлов А.С., Добров Б.В. Метод обнаружения массово порожденных неестественных текстов на основе анализа тематической структуры // Вычислительные методы и программирование. М.: 2011. Т. 12, сс. 58-72

5. http://referats.yandex.ru/pushkin/

6. http://www.nonsence.de/generator/gen.php

7. http://www.rifmator.ru/

8. http://startuppoint.ru/blog/rifmator/32565.html

9. http://rifmovnik.ru/

10. http://www.timskorenko.ru/poezia.html

11. Сокирко А.В. Морфологические модули на сайте www.aot.ru // Труды международного семинара Диалог'2004 « Компьютерная лингвистика и интеллектуальные технологии » М.: Наука, 2004. С. 559-564.

12. http://morfema.ru/publ/15-1-0-11

i Надоели баннеры? Вы всегда можете отключить рекламу.