LINUX.ORG.RU

Генерация текста


0

2

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

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

Но что бы повторить нужно немножко потрясти стариной и вспомнить а что собственно тогда делали. Сказано - сделано, введён поисковый запрос, выполнен поиск, и тут обнаруживается что тему то - съели SEOшники. Много чего по этой теме находится, но всё - построения не связанного смыслом текста для поисковых машин. В моём же случае интерес скорее обратный, текст может быть и кривой с точки зрения человека, интересно поиграть с самой структурой текста, как в те стародавние времена когда таким методом писали сказки. Грубо говоря, заготовить блоки текста и собирать из них сказку как из кубиков по некоторому сюжету.

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

Ещё раз, практической цели нет никакой, только поиграть.

★★★★★
Ответ на: комментарий от trashymichael

Спасибо, совет неплохой. Но vesna.yandex.ru я уже читал. Пока удовлетворён.

sin_a ★★★★★
() автор топика

Грубо говоря, заготовить блоки текста и собирать из них сказку как из кубиков по некоторому сюжету.

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

proud_anon ★★★★★
()
Ответ на: комментарий от proud_anon

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

sin_a ★★★★★
() автор топика

Поделись потом успехами или мыслями. Тоже интересно было бы поиграть.

mkam
()
Ответ на: комментарий от proud_anon

подобно формальной грамматике.

Спасибо, кажется именно это и следовало почитать.

sin_a ★★★★★
() автор топика

Почитайте «Морфологию волшебной сказки» и «Русскую сказку» Проппа, чтобы понять как сказка устроена структурно и функционально. Задача-то только чуть-чуть сложнее беседкинской генерации квестов :)

buddhist ★★★★★
()

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

Ну так «как из кубиков» - это и есть расово верный,хоть и практически не самый пригодный способ генерации текста - Задаешь пятерку;
1. Кубики (ака Алфавит, Терминалы, Нетеминалы)
4. Правила сборки кубиков (ака Правила вывода)
5. Н0чальный кубик (ака Стартовый Символ)
По заумному - генерация предложений языка, заданного некоторой формальной грамматикой.

Когда родишь что-то сложнее Стихоплюя - свисти, продолжим.

цепи Маркова, но это как раз противный подход

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

malbolge ★★
()
Ответ на: комментарий от buddhist

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

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

беседкинской генерации квестов :)

Это о чем то конкретном, или про генерацию квестов в играх вообще?

sin_a ★★★★★
() автор топика
Ответ на: комментарий от malbolge

По заумному - генерация предложений языка, заданного некоторой формальной грамматикой.

В общем то и вопрос был о том, существуют ли специально приспособленные инструменты для этого, или по простому лепить макет на шелл.

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

Наверно я не совсем верно изъяснился сразу.

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

А вот чего не хватает такому генератору - это структуры, на которую этот текст одевать.

sin_a ★★★★★
() автор топика
Ответ на: комментарий от sin_a

Вообще, вам надо к филологам. Только вменяемым, что довольно редко встречается.

Это о чем то конкретном

Так-то про генерацию вообще, но я думал о Даггерфолле.

buddhist ★★★★★
()

А это точно не было советской пропагандой для школьников?
Например в свое время в журнале «Юный техник» было много заметок про скорое пришествие монорельсовых дорог, винтокрылых летательных аппаратов, зданий из пенобетона и сверхпроводника комнатной температуры

anonymous
()
Ответ на: комментарий от sin_a

http://ru.wikipedia.org/wiki/Пропп

И как Пропп который описал структуру сказки в гуманитарном смысле связан с простым вопросом «А это точно не было советской пропагандой для школьников?» по поводу волшебных компутерных программ?

Пропп то программ не писал, есличо.

kernel ★★☆
()
Ответ на: комментарий от kernel

Пропп который описал структуру сказки в гуманитарном смысле

Ах, какие мы все тут технофашисты, как мы ловко презираем гуманитариев, лингвистов и прочую нечисть.

http://www.lib.ru/CULTURE/PROPP/morfologia.txt_with-big-pictures.html

http://www.lib.ru/CULTURE/PROPP/morfologia.txt_with-big-pictures.html#BM0Tbl1

http://www.lib.ru/CULTURE/PROPP/morfologia401.gif

И как

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

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

И чему, в частности, кстати может послужить иллюстрацией даже то что до сего дня, когда идёт речь о генераторе текста, нередко вспоминаются сказки, например: http://www.referat.ru/referats/view/28858 . Кстати, там автор данной курсовой в середине проговаривается для чего ему это на самом деле надо:

Стало немного понятнее, чем в предыдущем примере. Но все равно, поисковикам такое не надо.

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

Пропп то программ не писал, есличо.

А если найду?

sin_a ★★★★★
() автор топика
Ответ на: комментарий от sin_a

....

А если найду?

Фейспалм. Не найдешь. Будешь только лозуги орать, бугога.

«столько слов и ни одной паузы. старый мошенник теряет хватку»(С)

То что пропп выделил структуру сказок ... какая собственно разница какая у сказок структура с точки зрения читабельности. Ну будет некая история которую формально нельзя назвать сказкой как наследницей ритулалов инициации. И чо? С точки зрения генерации читабеельно текста пропп-непропп побоку.

Что собственно не отменяет его достижений как антрополога.

kernel ★★☆
()
Ответ на: комментарий от sin_a

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

А вот чего не хватает такому генератору - это структуры, на которую этот текст одевать.

http://ru.wikipedia.org/wiki/Семантическая_сеть

anonymous
()
Ответ на: комментарий от kernel

Да, вот «есличо» в твоём лексиконе уже присутствует. А «а если найду» пока нет. Ну да ничего, всё ещё впереди, скоро сказка сказывается да нескоро дело делается.

какая собственно разница какая у сказок структура с точки зрения читабельности.

Кто сказал «читабельность»? Да ты донцову, походу подменить хочешь?

sin_a ★★★★★
() автор топика
Ответ на: комментарий от anonymous

Наверно действительно именно это.

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

sin_a ★★★★★
() автор топика
Ответ на: комментарий от sin_a

Да, вот «есличо» в твоём лексиконе уже присутствует.
А «а если найду» пока нет.

Бугога. Я тебе говорю - не найдешь. Это в твоем лексиконе выражения присутствует а значение тебе неизвестно.

Кто сказал «читабельность»? Да ты донцову, походу подменить хочешь?

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

kernel ★★☆
()
Ответ на: комментарий от kernel

То что пропп выделил структуру сказок ... какая собственно разница какая у сказок структура с точки зрения читабельности. Ну будет некая история которую формально нельзя назвать сказкой как наследницей ритулалов инициации. И чо? С точки зрения генерации читабеельно текста пропп-непропп побоку.

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

anonymous
()
Ответ на: комментарий от sin_a

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

Нужна мудрость. Тут можно сразу же столкнуться с проблемой отождествления и переноса. Сказочная вселенная может быть не принята, а полезные шаблоны - не усвоены. Если ребенку нравится наблюдать за жизнью муравейника - удачным контекстом может оказаться жизнь насекомых. Если слушателю нравятся роботы и все с ними связанное - контекстом может выступить любая непротиворечивая меха. Одно общее - опыт полученный в сказке со сказочными законами должен быть применим в реальном мире. Чем ближе шаблон к действительности (мировоззрение, социальное поведение, отношение к опасности или мем: «извлекать прибыль можно и при обрушении рынков») - тем сильнее магия сказки.

anonymous
()
Ответ на: комментарий от anonymous

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

Соответствие реальности - по сути и является, пожалуй, основным интересом, но об этом возможно было бы говорить, пожалуй, не ранее как только после того как пощупать материал.

sin_a ★★★★★
() автор топика
Ответ на: комментарий от sin_a

Ну, к примеру, попробуй ошаблонить «Про Федота-стрельца» Леонида Филатова: http://lib.ru/ANEKDOTY/fedot.txt

Оно само всё из шаблонов :-)

Основная творческая ценность - увязка шаблонов в осмысленную нить повествования. По сути - игра смыслов, основа анекдота. Форма подачи здесь - практически всё. Роль сказочной вселенной - декоративная. Эта сказка для взрослой, опытной аудитории. Точнее, полу-опытной или недо-опытной. Тем не менее это - сказка. :)

anonymous
()
Ответ на: комментарий от sin_a

Соответствие реальности - по сути и является, пожалуй, основным интересом, но об этом возможно было бы говорить, пожалуй, не ранее как только после того как пощупать материал.

Тогда у тебя получится что-то вроде этого: http://www.philosophy.ua/lib/11pomogajev-doxa-5-2004.pdf

anonymous
()
Ответ на: комментарий от sin_a

Соответствие реальности - по сути и является, пожалуй, основным интересом, но об этом возможно было бы говорить, пожалуй, не ранее как только после того как пощупать материал.

Короче, тебе скорее всего будет интересно это: http://www.aot.ru/docs/sokirko/sokirko-candid-1.html

см. Глава 4. Получение естественного текста по семантическому представлению (на примере английского языка): http://www.aot.ru/docs/sokirko/sokirko-candid-5.html

Ну и обязательно посмотри это: http://www.aot.ru/onlinedemo.html

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.