Василий Щепетнёв – Село Щепетневка и вокруг нее, том 1. Computerra 1997-2008 (страница 54)
М. А. Булгаков. "Мастер и Маргарита"
В конце января на сервере Русской Фантастики появился новый раздел под громким названием "Лингвоанализатор". Так называется первая в Интернете (включая заграничный сектор) онлайновая программа, которая с большой долей самоуверенности устанавливает автора литературного текста{172}.
Литературоведение является одной из самых неформальных областей знания, в которой удивительно сложно установить какие-либо количественные закономерности. Даже в нише самого формального объекта литературоведения - ритмике стиха - царит ужасная сумятица. Взять, например, ямб, который Е. Онегин плохо отличал от хорея. Не зря, оказывается, герой А. С. Пушкина испытывал трудности: не так-то просто дать строгое недвусмысленное определение, которое четко укажет, какое стихотворение написано ямбом. Любопытно, что такое определение смогли сформулировать совсем недавно, причем одним из первых его придумал в 1960-е гг. академик А. Н. Колмогоров - величайший математик уходящего века{173}. Будьте уверены: это определение отличается в лучшую сторону от школьного, по которому ямб - это когда на четных слогах стоят ударения, а на нечетных отсутствуют, однако (делается оговорка) на четных слогах ударения иной раз пропускаются, а на нечетных - появляются.
О точном определении того, что такое жанр произведения, говорить и не приходится. Литературоведы понимают, что это такое, но на глубоко интуитивном уровне. А посему и не могут договориться друг с другом что есть что - в силу разной глубины интуиции, очевидно. Единственная общепринятая классификация существует по объему произведения. Оказывается, есть малая, средняя и крупная формы. Очень познавательно. Но даже здесь иногда возникают споры - в какой форме написано произведение.
Ладно, оставим в покое проблемы литературоведения с дефинициями. Но даже по поводу авторства произведений у литераторов зачастую нет единого мнения! Люди спорят о том, сколько народу написало Библию, кто был автором того или иного исторического документа. Например, до сих пор активно обсуждается, кто и что писал в знаменитом в США документе под названием "Federalist Papers", который распространялся среди жителей Нью-Йорка в 1787-88 гг. и агитировал их принять новорожденную конституцию США{174}. Существует немало подобных анонимных произведений и в русской истории{175}.
А вспомним, какие бури бушуют над небезызвестным романом "Тихий Дон". Не может не удивлять, что М. А. Шолохов в возрасте 20 лет или 21 года, не имея ни среднего (окончил 4 класса), ни специального образования, ни жизненного и литературного опыта, ни доступа к военным архивам, за год-полтора написал фундаментальное произведение, насыщенное фактическими материалами, которое сделало его Нобелевским лауреатом. Гений? Может быть. С другой стороны, возникает вопрос, не использовал ли Шолохов куски текста какого-либо другого автора или даже нескольких неизвестных "соавторов"? Дискуссия по этому поводу продолжается с пятидесятых-шестидесятых годов, и спор, по-видимому, далек от завершения. Хотя каждая из сторон многократно заявляла, что ее версия окончательно подтверждена и сомнению не подлежит. Спорят известные люди: одним из зачинщиков был А. И. Солженицын, одним из спорщиков - академик А. Т. Фоменко{176}.
Ну и что? - возразит читатель, - какая нам, в конце концов, разница, кто что написал? Главное чтобы человек был хороший{177}. И мы с прискорбием констатируем отсутствие у оного читателя чувства вселенской справедливости и общечеловеческого любопытства.
Программа "Лингвоанализатор" замечательна тем, что демонстрирует формальный подход к определению авторства, чего так не хватает современному литературоведению. Ее не интересует содержание, идеи, фабула и значение текста для общемировой литературы. Пожалуй, единственное, к чему она относится более или менее трепетно, - это объем текста. Чем крупнее форма, тем более самоуверенные утверждения она выдает.
"Лингвоанализатор" разбирает текст на элементарные кирпичики, используя математическую модель, в которой учтены такие характеристики текста, как:
а) число служебных слов (предлогов, союзов и частиц),
б) морфемы (приставочные, корневые, суффиксальные, флективные) и их последовательности,
в) сложность грамматических конструкций,
г) собственно словарь, используемый автором.
Программа однажды бездушно измерила все эти параметры. Теперь они сведены в таблицы, содержащие сотни переменных, характеризующих писателя. У каждого автора из базы данных есть своя таблица, которая является авторским эталоном{178}. Исходные тексты "Лингвоанализатор" у себя не хранит.
Читателю может быть интересно, что происходит, когда он засовывает свой текст на анализ в окошко приема рукописей. А происходит построение еще одной таблицы по входному тексту. После этого входная таблица сопоставляется с остальными 128, и выводится 128 интегральных величин для оценки близости данного текста к каждому из 128 писателей. Каждая из этих 128 интегральных величин называется относительной энтропией. Программа сообщит вам имена трех авторов, для которых относительная энтропия по данному тексту минимальна. "Относительная энтропия" - это не эффектное словосочетание, а строго определенное математическое понятие, которое, впрочем, не ново в лингвистике (см. {179}).
Любопытно, что при анализе текста принципиально не используются собственные имена. "Лингвоанализатор" их просто игнорирует.
В большинстве случаев программа правильно называет автора, даже если предлагать ей произведения, не содержащиеся в базе данных{180}. Это возможно лишь, поскольку алгоритм работы программы не сводится к полнотекстовому поиску по всей базе данных. Используются только интегральные характеристики текстов, что, кстати, значительно ускоряет работу (обработка запроса занимает секунды!){181}.
Подбор авторов в базу данных "Лингвоанализатора" может вызвать нарекания, однако сразу скажу, что брались только авторы, чьи произведения физически{182} находились на сервере Русской Фантастики и являлись достаточно объемными для хорошей характеризации авторского стиля. Насколько объемными - весьма тонкий вопрос, поскольку необходимый объем зависит от всех авторов, находящихся в базе. Отмечу лишь, что "Лингвоанализатор" балансирует на тонкой нити над хаосом, при котором он все тексты приписывал бы одному писателю.
Хочу обратить ваше внимание на неизбежный недостаток программы. Она никогда не выдаст сообщения о том, что "данный текст, вероятнее всего, не написан ни одним из известных программе авторов". Дело в том, что работа "Лингвоанализатора" построена на вычислении относительной энтропии. А как вычислить относительную энтропию относительно того, чего нет?
Написать такую программу оказалось не так-то просто. Всякий опытный читатель легко узнает прозу любимого писателя, неосознанно пользуясь десятками неформальных характеристик текста. Но если поспрашивать у людей, чем стиль одного писателя отличается от стиля другого, вряд ли удастся получить внятный ответ. Мало того - ответы окажутся весьма противоречивыми. Программа, использующая таким образом выявленные критерии, вряд ли сможет эффективно отличить друг от друга хотя бы двух авторов.
Так называемая стилеметрия занималась поиском каких-то формальных количественных характеристик текста, которые позволяли проводить строгие различия между двумя, максимум тремя авторами: большего, насколько мне известно, добиться не удавалось.
Требовалось найти принципиально другие критерии различения авторов. Несмотря на многочисленные трудности, группа сотрудников МГУ добилась-таки неожиданного и несомненного успеха. Методика "Лингвоанализатора" различает десятки и даже сотни (!) авторов.
Этот успех и был отмечен открытием на сервере Русской Фантастики (www.rusf.ru) демонстрационной странички. Автор настоящей статьи создал собственно демонстрационную программу, а страничка была оформлена стараниями коллектива разработчиков Русской Фантастики, среди которых следует отметить Д. Ватолина, Е. Славинского и П. Петриенко. Разработку методики "Лингвоанализатора" автор начинал в сотрудничестве с доцентом кафедры дискретной математики мехмата МГУ М. И. Гринчуком, который, возможно, известен читателю своими шуточными лингвистическими программами "Стихоплюй" и "Трепло".
Подход, используемый в "Анализаторе", уже используется для объективного разрешения многочисленных споров об истинном авторстве. К сожалению, для анализа необходимы электронные тексты. Поэтому, кстати, "Тихий Дон" еще не попал на зуб "Лингвоанализатора" (может, читатели помогут найти этот текст?).
Зато были перемолоты тексты девяти редакций Библии, исследован вопрос о взаимоотношениях между произведениями Татищева и Миллера, проанализированы тексты Шекспира, а также была проведена экспертиза авторства текста по запросу одной адвокатской конторы (результаты экспертизы будут использованы в суде){183}. В перспективе - обнаружение интегральных количественных характеристик, различающих жанр и время создания произведения, исследование сохранения авторского стиля при переводе и автоматическое определение эстетических достоинств текстов.