Название: ля-ля 4 Отправлено: sek140675 от Май 06, 2010, 16:47:16 Нетривиальная задача, достойная великих мужей
Пусть у нас есть текст, написанный на неизвестном языке. Предположительно - художественное произведение. Текст существует в электронном виде. Кроме текста, у нас еще есть внушительная библиотека словарей, написанная на том же непонятном языке. Задача: восстановить содержание текста, как можно более полно и точно, вытянуть из текста максимальное количество информации. В идеале - полностью восстановить текст. Для того, чтобы показать что это возможно, пожалуй, я начну. 1. Первое что мы можем сделать, это взять телефонный справочник или словарь имен, если такой есть, и составить список персонажей произведения. Мы можем судить о сложности нашего произведения исходя из количества персонажей. Каждый персонаж, встречающийся в произведении, мы пока назовем привычными нам именами. Такими как Иван, Петр и т.д. 2. Далее, мы посчитаем сколько раз встречается каждое имя в тексте. Например, у нас есть два имени: Иван(120) и Петр(100), которые встречаются чаще всего. Поэтому мы видим, что как Иван так и Петр может быть главным героем. Нам нужно уточнить этот момент. 3. Давайте сразу создадим шкалу времени, на которой будет развиваться наш сюжет. Для этого мы запускаем алгоритм, который поделит текст на абзацы. Видим – 200 абзацев. Откладываем прямую и делим ее на 200 частей. 4. Далее, мы можем рассуждать примерно так. Если имя исчезает на половине книги, это не главный герой. Если имя возникает не с начала текста, то это тоже не главный герой. Если же имя возникает сразу же и равномерно распределено по тексту до самого конца, - это и есть главный герой. То есть нам нужно исследовать как по тексту распределены имена персонажей. Для этого, мы откладываем прямую Х по-горизонтали, и делим ее на 200 частей. Откладываем прямую У по-вертикали, и делим ее на 60 частей (количество упоминаний Петра). То же самое мы делаем с Иваном. Потом мы пишем алгоритм (функцию), который будет чертить график. И запускаем его. Затем берем графики с кривыми, и изучаем-сравниваем. Итак, мы видим, что у нас главный герой – Иван, его кривая равномерна. Кривая Петра появляется сразу в первых абзацах, но на 100 абзаце «тухнет». Таким образом, мы обрабатываем все имена и расставляем их на прямой времени, разделенной на 200 частей (абзацев). В итоге, что мы видим: Вначале присутствуют Марья, Василий, Иван и Кощей. Затем Марья и Василий исчезают, зато появляется Петр. Долгое время присутствуют только Иван и Петр. Потом, всего на несколько абзацев появляется Ольга. На половине книги исчезает Петр. Через пару абзацев, появляются сразу двое: Кузьма и Зигмунд, и оба быстро исчезают. Появляется и исчезает Ольга. В конце текста появляется Кощей, Кузьма и Зигмунд Кощей исчезает, и в последних абзацах остаются Иван и Ольга. 5. Идем дальше. Мы знаем, что в процессе написания текста, автор, сменяет персонажей, события и обстановку. Так, автор ничего не говорит о персонажах, событиях и обстановке которые еще не появились. Затем, при появлении нового персонажа, события, обстановки, он как раз тут о них больше всего и говорит, так как именно с ними связанны происходящие здесь и сейчас события. Ну и переходя к следующим событиям, персонажам, обстановке, автор реже и реже упоминает прошлые события, так как их вытесняют новые. Опираясь на этот факт, мы можем построить хитрый алгоритм, который позволит нам, выделить конкретные «сцены» в тексте. Когда меняется сцена, происходят некоторые закономерности – возникают массово персонажи, события и обстановка. Уходят старые персонажи, события, признаки обстановки, графики резко падают, а затем медленно затухают, сходя на нет. Ну представте, например главный герой Иван играет в баскетбол, будут постоянно повторяться некоторые уникальные слова и термины а также имена персонажей: кольцо, баскетбол, пасс, Игорь, Динис, 3 очка, прыжок и т.д. Потом герой идет в бар и тут массово появляются иные термины а предыдущие исчезают. Итак, мы делим текст на сцены. Это нам пригодится дальше. ну и т.д. и т.д. Итак, есть ли тут кто-то, достойный называться великим мужем? Который может продолжить "вытягивать" информацию из нашего текста? P.S. Так как ответа в этой задаче фактически нет, побеждает тот, кто сможет вытянуть из нашего Х-текста, максимальное колличество информации. Название: Re: ля-ля 4 Отправлено: sek140675 от Май 06, 2010, 19:06:48 ну вот букв поменьше: Глокая куздра штеко будланула бокра и кудрячит бокренка. Название: Re: ля-ля 4 Отправлено: buka от Май 07, 2010, 01:16:12 Вы читали/смотрели "Крёстный отец"?
Или "Сага о Форсайтах"? Название: Re: ля-ля 4 Отправлено: шакал от Май 08, 2010, 18:07:18 мне бабушка читала сагу о Форсайтах.
не помню- вроде 3 тома :) Название: Re: ля-ля 4 Отправлено: Башкиро4ка от Май 09, 2010, 11:44:10 Вы читали/смотрели "Крёстный отец"? Или "Сага о Форсайтах"? мне бабушка читала сагу о Форсайтах. а к чему всё это?не помню- вроде 3 тома :) Название: Re: ля-ля 4 Отправлено: buka от Май 09, 2010, 12:57:24 Вы читали/смотрели "Крёстный отец"? Или "Сага о Форсайтах"? мне бабушка читала сагу о Форсайтах. а к чему всё это?не помню- вроде 3 тома :) Название: Re: ля-ля 4 Отправлено: colezhanka от Май 10, 2010, 11:01:46 это называется метод компьютерного анализа исторических источников... нам про него на эпиграффике рассказывали... вообщем-то примерно так и началась эпопея со всеми египетскими фараонами, когда нашли камень на греческом и египетском, и там было расшифрована только одно имя
|