Охлаждение после эмиграции. Грустные выводы исследования поэзии Бродского на Python.

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

Охлаждение после эмиграции. Грустные выводы исследования поэзии Бродского на Python.

Это отрывок из стихотворения Иосифа Бродского 1962 года. По этому тексту видно, как интересно поэт использует мотив холода – сразу бросается в глаза, что охлаждение у него это или аналог или даже причина и молчания и упорства. Если внимательно почитать другие произведения Бродского, появится ощущение, что холод и мороз поэт использует не только как разовые, хотя и эффектные метафоры. Кажется, что эти явления природы нужны поэту для построения художественной системы, где царит распад чувств, меланхолия и потеря идентификации. Мороз или замораживание поэт делает похожим на время для и даже придает им функции времени. Мне стало интересным использовать Python для проведения лексико-семантического анализа мотивов холода в поэзии Иосифа Бродского. Для сравнения и для чистоты эксперимента так же введу в анализ поиск мотивов воды. Определю, как часто эти мотивы встречаются извлеку контексты. А так же проверю, как менялось использование этих мотивов в поэзии по времени и в связи с жизненными переменами у автора.

Буду использовать pymorphy3 — морфологический анализатор для русского языка для определения начальных форм слов. Natural Language Toolkit для токенизации текста. matplotlib и seaborn — для построения графиков. Так же мне потребуются Pandas и numpy для работы с табличными данными и числовыми операциями.

Загружу модуль defaultdict чтобы безопасно считать частоты без проверок на существование ключа.

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

В моем эксперименте интересным оказалось датировка стихотворений. Чтобы полноценно исследования изменения в использовании мотивов холода и воды, нужно точно знать, в каком году написаны какие именно стихотворения. Это оказалось не самой простой задачей. Стихотворения в корпусе не разделены однозначно (иногда просто пустая строка, иногда ` `, иногда вообще нет разделителя). Годы написания указаны не в каждом стихотворении, часто до группы стихов или в заголовке раздела. Простое извлечение года из текста каждого стихотворения не сработает.

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

В качестве решения написал парсер, который парсер, который "помнит" текущее состояние (например, последний найденный год) и применяет его к последующим стихотворениям, пока не встретит новый год. Парсер убирает пробелы, игнорирует строки вроде «1960-е», т.к. они неточны. Нормализует разные типы тире (–, —, -) в одно (`-`) для удобства. Использует регулярное выражение (`re.findall`), чтобы найти: год (например, `1961`) или диапазон (например, `1961 – 1963`) или дату с месяцем (`февраль 1964`).

В результате я получил

Всего стихов: 6089

С годом: 6049

Без года: 40 (0.7%)

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

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

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

Сохраню предложения, где найдены мотивы. И разделю на до/после эмиграции (1972).

Подсчитываю количество стихотворений, содержащих мотивы, в два периода.

И вот какой интересный результат здесь.

Средняя доля мотивов по периодам:

Средняя доля мотивов по периодам
Средняя доля мотивов по периодам

И «холода» и «воды» в эмиграции Бродский написал больше! Разница не огромная, не «в разы», конечно. Но разница есть.

Средняя доля мотивов по периодам
Средняя доля мотивов по периодам

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

Цифры не могут соврать. Этот анализ показывает, как можно увидеть работу поэта с математической точность и даже проследить незаметные при чтении особенности творчества.

Подробные разборы других текстов можно посмотреть на видео https://dzen.ru/codslov

1
Начать дискуссию