Константина Паустовского называют одним из писателей, проза которого "звучит" или "светится". Частное эмоциональное впечатление от чтения таких текстов – радостное и возвышенное. Иные поклонники говорят, что читать такое не только интересно, но и приятно. От чего же складывается такая эмоция читателя? Я решил провести исследование творчества этого писателя на Python, чтобы приоткрыть секрет такого таланта.

Одной из моих гипотез было выявить семантические предпочтения автора и вычислить, с помощью каких именно слов он создает так называемую "сенсорную" атмосферу в текстах – то есть делает описания, апеллирующие к чувствам: зрению, слуху, осязанию. Такие описания помогают читателям именно почувствовать (а не просто представить) себя частью происходящего и точнее визуализировать сцены.

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

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

  • зрительные: видеть, увидеть, вглядываться

  • слуховые: слышать, звенеть, греметь 

  • эмоционально-тактильные: чувствовать, ощущать, чуять

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

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

Использую razdel для токенизации и обработки пунктуации сокращений. Для лемматизации применю pymorphy3. Эта же библиотека поможет провести фильтрацию по частям речи. И подсчет частоты сделаю при помощи collections.Counter.

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

def find_perception_verbs(text, perception_verbs_set):

    tokens = [

        token.text.lower()

        for token in tokenize(text)

        if re.fullmatch(r'[а-яё]+', token.text.lower())

    ]

    found_verbs = []

    for token in tokens:

        parsed = morph.parse(token)

        if not parsed:

            continue

        lemma = parsed[0].normal_form

        pos = parsed[0].tag.POS

        if lemma in perception_verbs_set and pos in ('VERB', 'INFN'):

            found_verbs.append(token)  

    return found_verbs

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

Использую re.fullmatch(r'[а-яё]+', ...), чтобы гарантировать исключение цифр, латиницы и пунктуации, так как в корпусе могут встречаться номера страниц, глав, примечания и типографские аномалии.

Что у меня получилось.

Всего слов в тексте: 201851

Глаголы действия: 781 (2.1%)

 Глаголы восприятия: 1925 (5.1%)

 Другие глаголы: 35267 (92.9%)

 Всего глаголов: 37973

ТОП-10 ГЛАГОЛОВ ВОСПРИЯТИЯ:

знать — 357 раз

видеть — 230 раз

понимать — 214 раз

увидеть — 192 раз

замечать — 140 раз

думать — 126 раз

любить — 114 раз

узнавать — 100 раз

слышать — 90 раз

услышать — 78 раз

Вот какой интересный вывод из этого эксперимента. Для создания сенсорной атмосферы Паустовский действительно активно использует перцептивную лексику — более 5% всех глаголов в его прозе – глаголы восприятия. При этом доминируют визуальные глаголы (видеть, увидеть, замечать), что согласуется с его "художническим" подходом к описанию природы.

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

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

Комментарии (0)