Первичная версия: стилометрия реплик, LSA и протокол экспериментов

This commit is contained in:
2026-10-24 01:17:36 +03:00
commit c390224500
52 changed files with 10099 additions and 0 deletions

View File

@@ -0,0 +1,228 @@
# Структура презентации
Ниже — рекомендуемая последовательность слайдов. Она рассчитана на аудиторию,
которая знает базовые понятия машинного обучения, но не знает деталей
стилометрии. Формулировки можно сокращать, но логику лучше сохранить.
---
## Слайд 1. Тема и исследовательский вопрос
**Заголовок:** Различимы ли речевые маски персонажей Stardew Valley?
**Ключевые тезисы:**
- 2005 реплик, 34 персонажа, один автор.
- Задача — не авторская атрибуция, а классификация речевых масок.
- Вопрос: можно ли различить персонажей по стилометрическим признакам
отдельных реплик?
**Визуализация:** примеры реплик 3–4 контрастных персонажей (Abigail, Jas,
Krobus, Wizard).
---
## Слайд 2. Корпус и его ограничения
**Ключевые тезисы:**
- 2005 реплик, 34 класса, около 38 тыс. словоупотреблений.
- Средняя длина — 19 слов, медиана — 17.
- Классы неравномерны: 15–139 реплик.
- Корпус прошёл ручную фильтрацию коротких и общих фраз; правила не
восстановлены.
- Точных дублей реплик нет.
**Визуализация:** горизонтальная диаграмма распределения классов; гистограмма
длин реплик.
---
## Слайд 3. Почему это сложная задача
**Ключевые тезисы:**
- Один автор → нельзя использовать традиционную авторскую атрибуцию.
- Короткие тексты → признаки словарного богатства и читаемости нестабильны.
- Дисбаланс → accuracy обманчива, нужна macro-F1.
- 34 класса → случайный уровень 2,9%, top-3 — 8,8%.
- LSA может выучить тему, а не стиль.
**Визуализация:** таблица «случайный уровень vs ожидаемый сигнал».
---
## Слайд 4. Предобработка и NLTK
**Ключевые тезисы:**
- Нормализация Unicode и плейсхолдеров.
- Токенизация, разбиение на предложения, частеречная разметка NLTK.
- PTB → Universal POS.
- Не удаляем стоп-слова, пунктуацию и короткие реплики: это стилометрический
сигнал.
- Не лемматизируем по умолчанию: инфлексия — тоже стиль.
**Визуализация:** схема «реплика → токены → POS → признаки».
---
## Слайд 5. Стилометрические признаки
**Ключевые тезисы:**
- 454 ручных признака в 11 группах.
- Функциональные слова — ядро классической стилометрии.
- POS и символьные n-граммы — устойчивы к теме.
- Пунктуация и разговорные маркеры — важны для игровых реплик.
- Словарное богатство и читаемость — предварительные признаки.
**Визуализация:** таблица групп признаков с примерами; словарь признаков в
приложении.
---
## Слайд 6. LSA
**Ключевые тезисы:**
- LSA = TF-IDF → усечённое сингулярное разложение → L2-нормализация.
- Варианты: слова, содержание без стоп-слов, функциональные слова,
символьные n-граммы, POS.
- Число компонент выбирается по объяснённой дисперсии и внешней метрике.
- LSA по всем словам может отражать тему; сравнение с POS/функциональными
словами обязательно.
- Обучение LSA — только внутри блоков перекрёстной проверки.
**Визуализация:** график объяснённой дисперсии; 2D PCA/t-SNE; примеры
top-терминов компонент.
---
## Слайд 7. Схема валидации
**Ключевые тезисы:**
- 5-блочная стратифицированная перекрёстная проверка.
- Повторность: 3–5 повторов.
- Вложенная настройка гиперпараметров: внешние блоки — оценка, внутренние —
настройка.
- Все обучаемые преобразования — внутри блоков.
- Контроль утечек: TF-IDF, SVD, масштабирование, отбор признаков.
**Визуализация:** схема outer/inner CV.
---
## Слайд 8. Метрики
**Ключевые тезисы:**
- Основная метрика — macro-F1: все 34 класса равноправны.
- Дополнительно: сбалансированная доля правильных ответов, MCC, каппа,
top-3/top-5.
- Accuracy приводится, но не используется как единственная метрика.
- 95% бутстрэп-интервалы.
- Парные сравнения: Мак-Немар; несколько моделей — Фридман и Холм.
**Визуализация:** таблица метрик с формулами в приложении; пример «почему
accuracy обманывает» (Dummy: 6,9% accuracy, macro-F1 0,004).
---
## Слайд 9. Классификаторы
**Ключевые тезисы:**
- Dummy — нижняя граница.
- MultinomialNB — быстрый вероятностный baseline.
- LogisticRegression — основной кандидат: линейная модель, вероятности,
интерпретируемые коэффициенты.
- LinearSVC — сильная линейная альтернатива без вероятностей.
- RandomForest/ExtraTrees — нелинейная проверка.
- kNN — локальный baseline.
- Delta Барроуза — классическая стилометрическая проверка.
**Визуализация:** таблица «модель — сильная сторона — ограничение».
---
## Слайд 10. Результаты
**Ключевые тезисы:**
- Предварительные прогоны: macro-F1 около 0,18 для объединённого набора,
top-3 около 0,34.
- Случайный уровень: macro-F1 0,029, top-3 0,088.
- Символьные и POS n-граммы дают основной прирост.
- LSA сама по себе слабее; в объединении даёт небольшой прирост.
- Редкие классы проваливаются; смотреть F-меру по классам.
**Визуализация:** таблица результатов; матрица ошибок; диаграмма F-меры по классам.
---
## Слайд 11. Стиль или тема?
**Ключевые тезисы:**
- Сравнение `lsa_word`/`lsa_content` с `lsa_pos`/`lsa_fw`/`lsa_char`.
- Если word/content значительно лучше — вклад темы велик.
- Если POS/FW сопоставимы — стиль и синтаксис информативны.
- Маскировка содержательных слов и тематический контроль — следующий шаг.
**Визуализация:** сравнительная диаграмма macro-F1 по вариантам LSA.
---
## Слайд 12. Ошибки и интерпретация
**Ключевые тезисы:**
- Самые частые пары ошибок.
- Персонажи с малым support.
- Дети, нелюди, персонажи с похожей ролью.
- Влияние длины реплик.
- Анализ по полу, возрасту, виду.
**Визуализация:** самые частые пары ошибок; F-мера по подгруппам.
---
## Слайд 13. Ограничения
**Ключевые тезисы:**
- Один автор.
- Короткие тексты.
- Ручная фильтрация корпуса.
- Дисбаланс классов.
- Нет идентификаторов сцен.
- NLTK-теггер ошибается на разговорной речи.
- LSA может отражать тему.
- Кластеризация и t-SNE — предварительный анализ.
---
## Слайд 14. Выводы и дальнейшая работа
**Ключевые тезисы:**
- Речевые маски персонажей статистически различимы, но сигнал умеренный.
- Основной вклад — символьные и частеречные n-граммы; LSA полезна как
дополнение, но требует контроля темы.
- Для усиления: больше данных, агрегация реплик в псевдодокументы,
тематический контроль, более точный частеречный теггер, учёт сцен.
- Воспроизводимость: код, конфигурации, seed, метаданные запусков.
**Визуализация:** итоговая таблица «что сделано — что показано — что дальше».
---
## Приложение
- Полный словарь признаков.
- Формулы метрик.
- Сетки гиперпараметров.
- Примеры ошибок.
- Команды запуска.