Раскрыты термины и добавлены гипотезы и группы признаков в LaTeX-презентации
This commit is contained in:
@@ -146,7 +146,7 @@ python -m stylometry.cli subgroup-report \
|
|||||||
- **`presentation/latex/stardew_stylometry.tex`** — академическая
|
- **`presentation/latex/stardew_stylometry.tex`** — академическая
|
||||||
Beamer-версия;
|
Beamer-версия;
|
||||||
- **`presentation/latex/stardew_stylometry.pdf`** — собранный PDF LaTeX-версии
|
- **`presentation/latex/stardew_stylometry.pdf`** — собранный PDF LaTeX-версии
|
||||||
(27 страниц).
|
(30 страниц).
|
||||||
|
|
||||||
LaTeX-версия содержит три блока на трёх докладчиков, фон и курицу на каждом
|
LaTeX-версия содержит три блока на трёх докладчиков, фон и курицу на каждом
|
||||||
слайде, титульную заставку, изображение персонажей, две круговые диаграммы,
|
слайде, титульную заставку, изображение персонажей, две круговые диаграммы,
|
||||||
|
|||||||
@@ -55,7 +55,7 @@ python presentation/build_deck.py
|
|||||||
Академическая Beamer-презентация:
|
Академическая Beamer-презентация:
|
||||||
|
|
||||||
- `latex/stardew_stylometry.tex` — исходник;
|
- `latex/stardew_stylometry.tex` — исходник;
|
||||||
- `latex/stardew_stylometry.pdf` — собранный PDF, 27 страниц;
|
- `latex/stardew_stylometry.pdf` — собранный PDF, 30 страниц;
|
||||||
- сборка: `cd latex && xelatex stardew_stylometry.tex` (два прохода).
|
- сборка: `cd latex && xelatex stardew_stylometry.tex` (два прохода).
|
||||||
|
|
||||||
В LaTeX-версии три блока на трёх докладчиков, фон и курица на каждом слайде,
|
В LaTeX-версии три блока на трёх докладчиков, фон и курица на каждом слайде,
|
||||||
|
|||||||
Binary file not shown.
@@ -95,72 +95,105 @@
|
|||||||
\begin{tcolorbox}[enhanced, width=0.92\paperwidth, colback=cream, opacityback=0.92,
|
\begin{tcolorbox}[enhanced, width=0.92\paperwidth, colback=cream, opacityback=0.92,
|
||||||
colframe=cream, boxrule=0pt, arc=2mm, halign=center, boxsep=2mm]
|
colframe=cream, boxrule=0pt, arc=2mm, halign=center, boxsep=2mm]
|
||||||
{\large\bfseries Стилометрическая классификация реплик персонажей Stardew Valley}\\[2mm]
|
{\large\bfseries Стилометрическая классификация реплик персонажей Stardew Valley}\\[2mm]
|
||||||
{\normalsize Можно ли различить голоса персонажей, если все реплики написаны одним автором?}\\[2.4mm]
|
{\normalsize Можно ли различить голоса персонажей, \\ если все реплики написаны одним автором?}\\[2.4mm]
|
||||||
\small А.~А.~Аладьина \quad·\quad В.~Н.~Копнин \quad·\quad М.~В.~Савостиков\\[0.8mm]
|
\small А.~А.~Аладьина \quad·\quad В.~Н.~Копнин \quad·\quad М.~В.~Савостиков\\[0.8mm]
|
||||||
\footnotesize ПИЭ-13МО
|
\footnotesize ПИЭ-13МО
|
||||||
\end{tcolorbox}
|
\end{tcolorbox}
|
||||||
\end{center}
|
\end{center}
|
||||||
\note{Титул. Представление группы: Аладьина Анна Андреевна, Копнин Владислав
|
|
||||||
Николаевич, Савостиков Михаил Викторович, ПИЭ-13МО. Коротко: мы проверяем,
|
|
||||||
различимы ли речевые маски персонажей игры по одной реплике. Автор у всех
|
|
||||||
реплик один — это ключевой факт всей работы. Далее три блока: задача и
|
|
||||||
корпус, методология, результаты.}
|
|
||||||
\end{frame}
|
\end{frame}
|
||||||
|
|
||||||
% ==================== БЛОК 1 ====================
|
% ==================== БЛОК 1 ====================
|
||||||
\begin{frame}{Блок 1\ \ ·\ \ Задача и корпус}
|
\begin{frame}{Часть 1\ \ ·\ \ Задача и корпус}
|
||||||
\begin{center}
|
\begin{center}
|
||||||
\begin{tcolorbox}[enhanced, width=0.86\paperwidth, colback=cream, opacityback=0.9,
|
\begin{tcolorbox}[enhanced, width=0.86\paperwidth, colback=cream, opacityback=0.9,
|
||||||
colframe=cream, boxrule=0pt, arc=2mm, halign=center, boxsep=3mm]
|
colframe=cream, boxrule=0pt, arc=2mm, halign=center, boxsep=3mm]
|
||||||
{\large Блок 1}\\[1.5mm]
|
{\large Часть 1}\\[1.5mm]
|
||||||
{\Large\bfseries Решаемая задача и корпус}\\[2mm]
|
{\Large\bfseries Решаемая задача и корпус}\\[2mm]
|
||||||
\small Постановка задачи · сбор и очистка данных · характеристики корпуса\\[2.5mm]
|
\small Постановка задачи · сбор и очистка данных · характеристики корпуса\\[2.5mm]
|
||||||
{\bfseries Докладчик: А.~А.~Аладьина}
|
{\bfseries Докладчик: А.~А.~Аладьина}
|
||||||
\end{tcolorbox}
|
\end{tcolorbox}
|
||||||
\end{center}
|
\end{center}
|
||||||
\note{Блок\,1. Говорит А. А. Аладьина. План блока: что за задача мы решаем,
|
\note{Часть\,1. Говорит А. А. Аладьина. План части: что за задача мы решаем,
|
||||||
её формальная постановка, как собирали и чистили корпус, и какими
|
её формальная постановка, как собирали и чистили корпус, и какими
|
||||||
характеристиками он обладает.}
|
характеристиками он обладает.}
|
||||||
\end{frame}
|
\end{frame}
|
||||||
|
|
||||||
\begin{frame}{Задача и постановка}
|
\begin{frame}{Задача и постановка}
|
||||||
\begin{columns}[T]
|
\begin{columns}[T]
|
||||||
\begin{column}{0.49\textwidth}
|
\begin{column}{0.57\textwidth}
|
||||||
\begin{panel}
|
\begin{panel}
|
||||||
|
\small
|
||||||
\textbf{Решаемая задача}
|
\textbf{Решаемая задача}
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
\item Дано: 2005 коротких реплик, 34 персонажа, один автор.
|
\item Дано: 2005 коротких реплик, 34 персонажа, один автор.
|
||||||
\item Требуется: по одной реплике определить персонажа.
|
\item Требуется: по одной реплике определить персонажа.
|
||||||
\item Каждый объект относится ровно к одному из 34 классов.
|
\item Каждый объект относится ровно к одному из 34 классов.
|
||||||
\item Это не авторская атрибуция: мы различаем \emph{речевые маски персонажей}, а не авторов.
|
\item Это не авторская атрибуция: мы различаем \emph{речевые маски персонажей}, а не авторов.
|
||||||
\item Проверяется, статистически ли различимы эти маски.
|
\item Проверяется, статистически различимы ли эти маски.
|
||||||
\end{itemize}
|
\end{itemize}
|
||||||
\end{panel}
|
\end{panel}
|
||||||
\end{column}
|
\end{column}
|
||||||
\begin{column}{0.49\textwidth}
|
\begin{column}{0.41\textwidth}
|
||||||
\begin{panel}
|
\begin{panel}
|
||||||
\textbf{Компактная постановка}\\[1.2mm]
|
\small
|
||||||
\centering
|
\textbf{Обозначения}\\[1mm]
|
||||||
$D=\{(x_i,\,y_i)\}_{i=1}^{n},\quad n=2005,$\\[1mm]
|
$D=\{(x_i,\,y_i)\}_{i=1}^{n}$,\quad $n=2005$;\\
|
||||||
$x_i$ — реплика, \ $y_i\in Y,\ |Y|=34,$\\[1mm]
|
$x_i$ — реплика;\\
|
||||||
$f\colon \Phi(x_i)\to Y$ — классификатор.\\[1.2mm]
|
$y_i\in Y$, \ $|Y|=34$ — персонаж;\\
|
||||||
\raggedright\small Ещё одна запись — критерий качества: усреднённая
|
$f$ — классификатор.\\[1.5mm]
|
||||||
F-мера по классам (macro-F1). Других формул в докладе не будет.
|
Единственная формальная запись в докладе.\\
|
||||||
|
Критерий качества — макро-F1: средняя F-мера по 34 классам.
|
||||||
\end{panel}
|
\end{panel}
|
||||||
\end{column}
|
\end{column}
|
||||||
\end{columns}
|
\end{columns}
|
||||||
\note{Говорит А. А. Аладьина. Задача — многоклассовая классификация коротких
|
\note{Говорит А. А. Аладьина. Задача — многоклассовая классификация коротких
|
||||||
текстов: по одной реплике предсказать персонажа из 34 классов. Подчеркнуть:
|
текстов. Формула одна: D — корпус, x — реплика, y — персонаж, f —
|
||||||
это НЕ авторская атрибуция — все тексты написаны одним автором, и мы
|
классификатор. Дальше все определения даются словами. Подчеркнуть: это не
|
||||||
проверяем различимость речевых масок. Формула одна и остаётся единственной
|
авторская атрибуция, автор один; мы различаем речевые маски.}
|
||||||
в докладе.}
|
|
||||||
\end{frame}
|
\end{frame}
|
||||||
|
|
||||||
|
\begin{frame}{Гипотезы исследования}
|
||||||
|
\begin{columns}[T]
|
||||||
|
\begin{column}{0.57\textwidth}
|
||||||
|
\begin{panel}
|
||||||
|
\footnotesize
|
||||||
|
\textbf{H1.} Функциональные слова, части речи и символьные
|
||||||
|
n-граммы (последовательности соседних символов) различают
|
||||||
|
персонажей выше случайного уровня.\\[0.7mm]
|
||||||
|
\textbf{H2.} На коротких репликах части речи и символьные
|
||||||
|
n-граммы устойчивее словарного богатства и читаемости.\\[0.7mm]
|
||||||
|
\textbf{H3.} LSA по всем словам отражает тему, а LSA по частям
|
||||||
|
речи и функциональным словам — стиль.\\[0.7mm]
|
||||||
|
\textbf{H4.} Качество зависит от длины реплики.\\[0.7mm]
|
||||||
|
\textbf{H5.} Ошибки группируются вокруг персонажей со сходным
|
||||||
|
возрастом, полом, ролью или видом.
|
||||||
|
\end{panel}
|
||||||
|
\end{column}
|
||||||
|
\begin{column}{0.41\textwidth}
|
||||||
|
\begin{panel}
|
||||||
|
\footnotesize\textbf{Как проверяем}
|
||||||
|
\begin{itemize}
|
||||||
|
\item H1 — сравнение моделей и поочерёдное исключение групп.
|
||||||
|
\item H2 — исключение групп и анализ по длине.
|
||||||
|
\item H3 — варианты LSA и контроль содержания.
|
||||||
|
\item H4 — метрики по группам длины.
|
||||||
|
\item H5 — анализ ошибок по метаданным.
|
||||||
|
\end{itemize}
|
||||||
|
\end{panel}
|
||||||
|
\end{column}
|
||||||
|
\end{columns}
|
||||||
|
\note{Говорит А. А. Аладьина. Гипотезы сформулированы до экспериментов.
|
||||||
|
H1 и H2 проверяют, есть ли стилометрический сигнал; H3 — стиль или тему;
|
||||||
|
H4 — влияние длины; H5 — социальные подгруппы. Термин «фолд» появится в
|
||||||
|
методологической части: это часть разбиения при перекрёстной проверке.}
|
||||||
|
\end{frame}
|
||||||
|
|
||||||
|
|
||||||
\begin{frame}{Корпус: сбор, разметка, очистка}
|
\begin{frame}{Корпус: сбор, разметка, очистка}
|
||||||
\begin{columns}[T]
|
\begin{columns}[T]
|
||||||
\begin{column}{0.33\textwidth}
|
\begin{column}{0.33\textwidth}
|
||||||
\begin{panel}
|
\begin{panel}
|
||||||
\small\textbf{1. Сбор}
|
\footnotesize\textbf{1. Сбор}
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
\item Реплики из диалогов игры.
|
\item Реплики из диалогов игры.
|
||||||
\item Единица анализа — одна реплика.
|
\item Единица анализа — одна реплика.
|
||||||
@@ -170,53 +203,48 @@
|
|||||||
\end{column}
|
\end{column}
|
||||||
\begin{column}{0.33\textwidth}
|
\begin{column}{0.33\textwidth}
|
||||||
\begin{panel}
|
\begin{panel}
|
||||||
\small\textbf{2. Разметка}
|
\footnotesize\textbf{2. Разметка}
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
\item Метка — имя говорящего персонажа.
|
\item Метка — имя говорящего персонажа.
|
||||||
\item Ручная проверка реплики и метки.
|
\item Ручная проверка реплики и метки.
|
||||||
\item Метаданные (пол, возраст, вид) хранятся отдельно.
|
\item Метаданные (пол, возраст, вид) хранятся отдельно и не подаются модели.
|
||||||
\end{itemize}
|
\end{itemize}
|
||||||
\end{panel}
|
\end{panel}
|
||||||
\end{column}
|
\end{column}
|
||||||
\begin{column}{0.33\textwidth}
|
\begin{column}{0.33\textwidth}
|
||||||
\begin{panel}
|
\begin{panel}
|
||||||
\small\textbf{3. Очистка}
|
\footnotesize\textbf{3. Очистка}
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
\item Нормализация Unicode.
|
\item \textbf{Unicode-очистка}: разные варианты кавычек, тире,
|
||||||
\item Плейсхолдеры заменены нейтральными словами.
|
многоточий и пробелов приводятся к единому виду.
|
||||||
|
\item Плейсхолдеры вида \texttt{<PLAYER>} заменены нейтральными словами.
|
||||||
\item Пунктуация и регистр сохранены: это стилометрический сигнал.
|
\item Пунктуация и регистр сохранены: это стилометрический сигнал.
|
||||||
\end{itemize}
|
\end{itemize}
|
||||||
\end{panel}
|
\end{panel}
|
||||||
\end{column}
|
\end{column}
|
||||||
\end{columns}
|
\end{columns}
|
||||||
|
\vspace{-2mm}
|
||||||
\begin{panel}
|
\begin{panel}
|
||||||
\small \textbf{Ограничения данных:} правила ручной фильтрации
|
\footnotesize \textbf{Ограничения данных:} ручная фильтрация; нет идентификаторов сцен.
|
||||||
не сохранились; нет идентификаторов сцен.
|
|
||||||
\end{panel}
|
\end{panel}
|
||||||
\note{Говорит А. А. Аладьина. Корпус собран из диалогов игры, разбит на
|
|
||||||
реплики, размечен именем говорящего. Очистка минимальная: нормализуем
|
|
||||||
символы, заменяем плейсхолдеры вида \texttt{<PLAYER>}, ничего не удаляем из
|
|
||||||
стилистических сигналов (пунктуация, регистр оставлены). Честно сказать про
|
|
||||||
ручную фильтрацию и отсутствие идентификаторов сцен.}
|
|
||||||
\end{frame}
|
\end{frame}
|
||||||
|
|
||||||
\begin{frame}{Персонажи корпуса}
|
\begin{frame}{Персонажи корпуса}
|
||||||
\begin{center}
|
\begin{center}
|
||||||
\begin{imgbox}
|
\begin{imgbox}
|
||||||
\includegraphics[height=0.6\textheight]{characters.png}
|
\includegraphics[height=0.65\textheight]{characters.png}
|
||||||
\end{imgbox}
|
\end{imgbox}
|
||||||
\end{center}
|
\end{center}
|
||||||
\note{Говорит А. А. Аладьина. Все 34 персонажа: подростки и молодые взрослые,
|
|
||||||
взрослые, пожилые, дети и нелюди (Dwarf, Krobus, Wizard). Такая структура
|
|
||||||
потом поможет объяснить, где модель путается.}
|
|
||||||
\end{frame}
|
\end{frame}
|
||||||
|
|
||||||
\begin{frame}{Характеристики корпуса: классы}
|
\begin{frame}{Характеристики корпуса: классы}
|
||||||
\begin{columns}[T]
|
\begin{columns}[T]
|
||||||
\begin{column}{0.42\textwidth}
|
\begin{column}{0.42\textwidth}
|
||||||
|
\begin{center}
|
||||||
\begin{imgbox}
|
\begin{imgbox}
|
||||||
\includegraphics[width=\linewidth]{replics-count.png}
|
\includegraphics[width=\linewidth]{replics-count.png}
|
||||||
\end{imgbox}
|
\end{imgbox}
|
||||||
|
\end{center}
|
||||||
\end{column}
|
\end{column}
|
||||||
\begin{column}{0.57\textwidth}
|
\begin{column}{0.57\textwidth}
|
||||||
\begin{panel}
|
\begin{panel}
|
||||||
@@ -227,20 +255,16 @@
|
|||||||
\textbf{Максимум класса} & Abigail, 139\\[0.8mm]
|
\textbf{Максимум класса} & Abigail, 139\\[0.8mm]
|
||||||
\textbf{Минимум класса} & Mister Qi, 15\\[0.8mm]
|
\textbf{Минимум класса} & Mister Qi, 15\\[0.8mm]
|
||||||
\textbf{Точные дубли} & 0\\[0.8mm]
|
\textbf{Точные дубли} & 0\\[0.8mm]
|
||||||
\textbf{Почти-дубли} & 13 пар, только внутри класса\\
|
\textbf{Почти-дубли} & 13 пар, но только внутри класса\\
|
||||||
\end{tabular}
|
\end{tabular}
|
||||||
\end{panel}
|
\end{panel}
|
||||||
\begin{panel}
|
\begin{panel}
|
||||||
\small Дисбаланс почти десятикратный: от 15 до 139 реплик. Поэтому
|
\small Дисбаланс почти десятикратный: от 15 до 139 реплик. Поэтому
|
||||||
доля правильных ответов обманчива; основная метрика — усреднённая
|
доля правильных ответов обманчива; основная метрика — макро усреднённая
|
||||||
F-мера по классам.
|
F-мера по классам.
|
||||||
\end{panel}
|
\end{panel}
|
||||||
\end{column}
|
\end{column}
|
||||||
\end{columns}
|
\end{columns}
|
||||||
\note{Говорит А. А. Аладьина. Диаграмма: сколько реплик у каждого персонажа.
|
|
||||||
Дисбаланс почти десятикратный (15–139). Точных дубликатов нет, 13 почти-дублей
|
|
||||||
— только внутри одного класса, то есть утечки между классами через
|
|
||||||
дубликаты нет.}
|
|
||||||
\end{frame}
|
\end{frame}
|
||||||
|
|
||||||
\begin{frame}{Характеристики корпуса: длина реплик}
|
\begin{frame}{Характеристики корпуса: длина реплик}
|
||||||
@@ -276,29 +300,73 @@
|
|||||||
\end{frame}
|
\end{frame}
|
||||||
|
|
||||||
% ==================== БЛОК 2 ====================
|
% ==================== БЛОК 2 ====================
|
||||||
\begin{frame}{Блок 2\ \ ·\ \ Методология}
|
\begin{frame}{Часть 2\ \ ·\ \ Методология}
|
||||||
\begin{center}
|
\begin{center}
|
||||||
\begin{tcolorbox}[enhanced, width=0.86\paperwidth, colback=cream, opacityback=0.9,
|
\begin{tcolorbox}[enhanced, width=0.86\paperwidth, colback=cream, opacityback=0.9,
|
||||||
colframe=cream, boxrule=0pt, arc=2mm, halign=center, boxsep=3mm]
|
colframe=cream, boxrule=0pt, arc=2mm, halign=center, boxsep=3mm]
|
||||||
{\large Блок 2}\\[1.5mm]
|
{\large Часть 2}\\[1.5mm]
|
||||||
{\Large\bfseries Методология: как измеряем стиль}\\[2mm]
|
{\Large\bfseries Методология: как измеряем стиль}\\[2mm]
|
||||||
\small Признаки · LSA · классификаторы · схема проверки · метрики\\[2.5mm]
|
\small Признаки · LSA · классификаторы · схема проверки · метрики\\[2.5mm]
|
||||||
{\bfseries Докладчик: В.~Н.~Копнин}
|
{\bfseries Докладчик: В.~Н.~Копнин}
|
||||||
\end{tcolorbox}
|
\end{tcolorbox}
|
||||||
\end{center}
|
\end{center}
|
||||||
\note{Блок\,2. Говорит В. Н. Копнин. План блока: общая схема конвейера,
|
\note{Часть\,2. Говорит В. Н. Копнин. План части: общая схема конвейера,
|
||||||
какие признаки строим, как работает LSA, какие модели сравнивали и как устроена
|
какие признаки строим, как работает LSA, какие модели сравнивали и как устроена
|
||||||
проверка, чтобы не обмануть себя.}
|
проверка, чтобы не обмануть себя.}
|
||||||
\end{frame}
|
\end{frame}
|
||||||
|
|
||||||
|
\begin{frame}{Термины, которые встретятся дальше}
|
||||||
|
\begin{columns}[T]
|
||||||
|
\begin{column}{0.49\textwidth}
|
||||||
|
\begin{panel}
|
||||||
|
\footnotesize
|
||||||
|
\textbf{Фолд} — одна из частей разбиения выборки при перекрёстной
|
||||||
|
проверке. При 5 фолдах модель обучается на 4 и проверяется на 1,
|
||||||
|
затем разбиение меняется.\\[0.8mm]
|
||||||
|
\textbf{POS (part of speech)} — часть речи; POS-тег — её
|
||||||
|
обозначение; POS-грамма — последовательность тегов.\\[0.8mm]
|
||||||
|
\textbf{Universal POS} — универсальный набор тегов: NOUN, VERB,
|
||||||
|
ADJ, ADV, PRON, DET, ADP, CONJ, NUM, PRT, INTJ, PUNCT, X.
|
||||||
|
Единый набор для разных языков.\\[0.8mm]
|
||||||
|
\textbf{Клауза} — синтаксическая единица с подлежащим и
|
||||||
|
сказуемым; в репликах оценивается приблизительно.\\[0.8mm]
|
||||||
|
\textbf{Синтаксис-прокси} — приблизительная оценка синтаксиса
|
||||||
|
без полного разбора: число союзов, длина предложения, порядок слов.
|
||||||
|
\end{panel}
|
||||||
|
\end{column}
|
||||||
|
\begin{column}{0.49\textwidth}
|
||||||
|
\begin{panel}
|
||||||
|
\footnotesize
|
||||||
|
\textbf{n-грамма} — последовательность $n$ соседних единиц:
|
||||||
|
символов, слов или POS-тегов.\\[0.8mm]
|
||||||
|
\textbf{LSA} — сжатие таблицы «документ $\times$ признак» в
|
||||||
|
несколько скрытых компонент.\\[0.8mm]
|
||||||
|
\textbf{Макро-F1} — средняя F-мера по классам; каждый персонаж
|
||||||
|
весит одинаково.\\[0.8mm]
|
||||||
|
\textbf{Unicode-очистка} — приведение разных вариантов записи
|
||||||
|
символов к единому виду: кавычки, тире, многоточия, пробелы.\\[0.8mm]
|
||||||
|
\textbf{Класс-аттрактор} — класс, к которому модель ошибочно
|
||||||
|
относит чужие реплики.\\[0.8mm]
|
||||||
|
\textbf{Фолд и группа признаков} — разные вещи: фолд — часть
|
||||||
|
проверки, группа — набор признаков.
|
||||||
|
\end{panel}
|
||||||
|
\end{column}
|
||||||
|
\end{columns}
|
||||||
|
\note{Говорит В. Н. Копнин. Этот слайд — словарь терминов. Важно различать
|
||||||
|
фолд (часть кросс-валидации) и группу признаков (набор характеристик текста).
|
||||||
|
Universal POS — не «ещё одна модель», а универсальный набор частеречных
|
||||||
|
тегов; POS-граммы — последовательности этих тегов. Клауза и
|
||||||
|
синтаксис-прокси — приблизительные, но интерпретируемые оценки синтаксиса.}
|
||||||
|
\end{frame}
|
||||||
|
|
||||||
|
|
||||||
\begin{frame}{Общая схема}
|
\begin{frame}{Общая схема}
|
||||||
\begin{panel}
|
\begin{panel}
|
||||||
\small
|
|
||||||
Реплика (текст персонажа) $\to$ очистка (Unicode, плейсхолдеры)
|
Реплика (текст персонажа) $\to$ очистка (Unicode, плейсхолдеры)
|
||||||
$\to$ токены и частеречная разметка (NLTK, Universal POS)
|
$\to$ токены и частеречная разметка (NLTK, Universal POS)
|
||||||
$\to$ признаки (ручные, n-граммы, LSA)
|
$\to$ признаки (ручные, n-граммы, LSA)
|
||||||
$\to$ модель (вероятности по 34 классам)
|
$\to$ модель (вероятности по 34 классам)
|
||||||
$\to$ проверка (5 блоков, повторы, метрики).
|
$\to$ проверка (5 фолдов, повторы, метрики).
|
||||||
\end{panel}
|
\end{panel}
|
||||||
\begin{columns}[T]
|
\begin{columns}[T]
|
||||||
\begin{column}{0.49\textwidth}
|
\begin{column}{0.49\textwidth}
|
||||||
@@ -306,8 +374,8 @@
|
|||||||
\textbf{Что важно про схему}
|
\textbf{Что важно про схему}
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
\item Все обучаемые преобразования настраиваются только внутри
|
\item Все обучаемые преобразования настраиваются только внутри
|
||||||
обучающих блоков.
|
обучающих фолдах.
|
||||||
\item Тестовые блоки не участвуют ни в настройке признаков, ни в
|
\item Тестовые фолды не участвуют ни в настройке признаков, ни в
|
||||||
выборе параметров модели.
|
выборе параметров модели.
|
||||||
\end{itemize}
|
\end{itemize}
|
||||||
\end{panel}
|
\end{panel}
|
||||||
@@ -328,38 +396,78 @@
|
|||||||
обучающей части каждой проверки.}
|
обучающей части каждой проверки.}
|
||||||
\end{frame}
|
\end{frame}
|
||||||
|
|
||||||
\begin{frame}{Признаки: что именно считаем}
|
|
||||||
|
\begin{frame}{454 ручных признака: 11 групп}
|
||||||
|
\begin{panel}
|
||||||
|
\scriptsize
|
||||||
|
\begin{tabular}{@{}p{3.7cm}p{7.8cm}@{}}
|
||||||
|
\textbf{Группа} & \textbf{Примеры признаков} \\ \hline
|
||||||
|
Длина & число слов, символов, предложений; длина предложения \\
|
||||||
|
Лексика & длины слов, апострофы, заглавные буквы, цифры \\
|
||||||
|
Словарное богатство & TTR, Guiraud, Yule's K, hapax; на коротких текстах нестабильно \\
|
||||||
|
Символы & частоты букв, регистр, пунктуация \\
|
||||||
|
Пунктуация & запятые, многоточия, вопросы, восклицания, повторы \\
|
||||||
|
Функциональные слова & артикли, предлоги, союзы, местоимения \\
|
||||||
|
Местоимения & 1-е, 2-е, 3-е лицо; отношение «я/ты» \\
|
||||||
|
Части речи & Universal POS, Penn Treebank, время, модальность \\
|
||||||
|
Синтаксис & клаузы, подчинительные союзы, пассивные конструкции \\
|
||||||
|
Читаемость & Flesch, FK, SMOG; на коротких репликах приблизительна \\
|
||||||
|
Разговорные маркеры & междометия, смех, хеджи, вежливость, сокращения \\
|
||||||
|
\end{tabular}
|
||||||
|
\end{panel}
|
||||||
|
\begin{panel}
|
||||||
|
\scriptsize
|
||||||
|
\textbf{454} — суммарное число ручных признаков; часть групп
|
||||||
|
(словарное богатство, читаемость) помечена как предварительная.
|
||||||
|
Функциональные слова, части речи, пунктуация и разговорные маркеры —
|
||||||
|
основные группы для коротких реплик.
|
||||||
|
\end{panel}
|
||||||
|
\note{Говорит В. Н. Копнин. Это расшифровка одиннадцати групп. Не нужно
|
||||||
|
запоминать все 454 признака: важнее логика — длина, лексика, пунктуация,
|
||||||
|
служебные слова, части речи, синтаксис, читаемость и разговорные маркеры.
|
||||||
|
Словарное богатство и читаемость на коротких репликах нестабильны.}
|
||||||
|
\end{frame}
|
||||||
|
|
||||||
|
\begin{frame}{Автоматические признаки: n-граммы и LSA}
|
||||||
\begin{columns}[T]
|
\begin{columns}[T]
|
||||||
\begin{column}{0.49\textwidth}
|
\begin{column}{0.49\textwidth}
|
||||||
\begin{panel}
|
\begin{panel}
|
||||||
\small\textbf{Ручные признаки (454, в 11 группах)}
|
\small\textbf{n-граммы}
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
\item Длина: слова, символы, предложения.
|
\item \textbf{n-грамма} — последовательность $n$ соседних
|
||||||
\item Лексика и орфография: длины слов, апострофы, заглавные буквы.
|
единиц: символов, слов или POS-тегов.
|
||||||
\item Словарное богатство: на коротких репликах нестабильно.
|
\item Символьные n-граммы 2–5: морфология, пунктуация,
|
||||||
\item Пунктуация: запятые, многоточия, восклицания.
|
орфография.
|
||||||
\item Разговорные маркеры: смех, вежливость, сокращения.
|
\item n-граммы POS-тегов 1–3: последовательности частей речи,
|
||||||
|
синтаксические шаблоны.
|
||||||
|
\item TF-IDF: вес признака с учётом частоты в реплике и
|
||||||
|
редкости в корпусе.
|
||||||
\end{itemize}
|
\end{itemize}
|
||||||
\end{panel}
|
\end{panel}
|
||||||
\end{column}
|
\end{column}
|
||||||
\begin{column}{0.49\textwidth}
|
\begin{column}{0.49\textwidth}
|
||||||
\begin{panel}
|
\begin{panel}
|
||||||
\small\textbf{Функциональные слова и векторные блоки}
|
\small\textbf{LSA}
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
\item Функциональные слова: около 150 закрытых слов и 12 категорий;
|
\item Сжатие таблицы «реплика $\times$ признак» в $k$ скрытых
|
||||||
местоимения 1-го, 2-го, 3-го лица.
|
компонент.
|
||||||
\item Части речи и синтаксис-прокси: клаузы, союзы, вопросы.
|
\item Варианты: \texttt{word}, \texttt{content}, \texttt{fw},
|
||||||
\item Символьные n-граммы (2–5) и частеречные n-граммы (1–3) с TF-IDF.
|
\texttt{char}, \texttt{pos}.
|
||||||
\item LSA: сжатые векторы по словам, содержанию, POS и символам.
|
\item $k=50$–400; для \texttt{content}-LSA качество росло до 400.
|
||||||
|
\item LSA — сжатое представление, а не «понимание» текста.
|
||||||
\end{itemize}
|
\end{itemize}
|
||||||
\end{panel}
|
\end{panel}
|
||||||
\end{column}
|
\end{column}
|
||||||
\end{columns}
|
\end{columns}
|
||||||
\note{Говорит В. Н. Копнин. Два семейства признаков. Первое — 454 ручных
|
\begin{panel}
|
||||||
признака: длины, пунктуация, разговорные маркеры, функциональные слова.
|
\small Символьные n-граммы чувствительны к морфологии и пунктуации;
|
||||||
Второе — автоматические: символьные и частеречные n-граммы и векторные
|
n-граммы POS-тегов — к порядку частей речи; LSA сжимает разреженные
|
||||||
блоки LSA. Стоп-слова и пунктуацию специально не удаляли — для стилометрии
|
признаки в несколько чисел. Это три разных взгляда на стиль.
|
||||||
это сигнал, а не шум.}
|
\end{panel}
|
||||||
|
\note{Говорит В. Н. Копнин. n-грамма — это просто «окно» из n соседних
|
||||||
|
единиц. Символьные n-граммы ловят морфологию и пунктуацию, n-граммы POS-тегов —
|
||||||
|
синтаксические шаблоны. LSA не «понимает» текст: он сжимает таблицу
|
||||||
|
признаков в несколько скрытых компонент.}
|
||||||
\end{frame}
|
\end{frame}
|
||||||
|
|
||||||
\begin{frame}{LSA простыми словами}
|
\begin{frame}{LSA простыми словами}
|
||||||
@@ -423,7 +531,7 @@
|
|||||||
\item Случайный лес и ExtraTrees: сотни деревьев; у ExtraTrees
|
\item Случайный лес и ExtraTrees: сотни деревьев; у ExtraTrees
|
||||||
пороги выбираются случайно — меньше разброс.
|
пороги выбираются случайно — меньше разброс.
|
||||||
\item Мягкое голосование: усредняем вероятности моделей.
|
\item Мягкое голосование: усредняем вероятности моделей.
|
||||||
\item Стековое объединение у нас переобучилось и оказалось хуже.
|
\item Объединение через мета-классификатор (стекинг) у нас переобучилось и оказалось хуже.
|
||||||
\end{itemize}
|
\end{itemize}
|
||||||
\end{panel}
|
\end{panel}
|
||||||
\end{column}
|
\end{column}
|
||||||
@@ -436,7 +544,7 @@
|
|||||||
линейная база; SVM — сила на текстовых признаках, но без вероятностей;
|
линейная база; SVM — сила на текстовых признаках, но без вероятностей;
|
||||||
деревья ловят нелинейные комбинации («многоточие + короткая реплика»), но
|
деревья ловят нелинейные комбинации («многоточие + короткая реплика»), но
|
||||||
легко переобучаются на 2005 объектах. Лучший результат дало мягкое
|
легко переобучаются на 2005 объектах. Лучший результат дало мягкое
|
||||||
голосование трёх моделей; стек был хуже — переобучился.}
|
голосование трёх моделей; объединение через мета-классификатор было хуже — переобучилось.}
|
||||||
\end{frame}
|
\end{frame}
|
||||||
|
|
||||||
\begin{frame}{Как проверяем}
|
\begin{frame}{Как проверяем}
|
||||||
@@ -445,10 +553,11 @@
|
|||||||
\begin{panel}
|
\begin{panel}
|
||||||
\textbf{Схема оценки}
|
\textbf{Схема оценки}
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
\item Стратифицированная перекрёстная проверка: 5 блоков, доли
|
\item Стратифицированная перекрёстная проверка: 5 фолдов
|
||||||
классов внутри блоков сохраняются.
|
(частей разбиения); на 4 фолдах обучаемся, на 1 проверяем.
|
||||||
|
Доли классов внутри фолдов сохраняются.
|
||||||
\item Повторяем 3–5 раз с разными разбиениями — оцениваем разброс.
|
\item Повторяем 3–5 раз с разными разбиениями — оцениваем разброс.
|
||||||
\item Вложенная схема: внешние блоки — оценка, внутренние —
|
\item Вложенная схема: внешние фолды — оценка, внутренние —
|
||||||
настройка параметров модели.
|
настройка параметров модели.
|
||||||
\item Отдельная отложенная выборка 80/20 для финальных кандидатов.
|
\item Отдельная отложенная выборка 80/20 для финальных кандидатов.
|
||||||
\end{itemize}
|
\end{itemize}
|
||||||
@@ -459,7 +568,7 @@
|
|||||||
\textbf{Контроль ошибок исследователя}
|
\textbf{Контроль ошибок исследователя}
|
||||||
\begin{itemize}
|
\begin{itemize}
|
||||||
\item TF-IDF, сжатие и масштабирование обучаются только на
|
\item TF-IDF, сжатие и масштабирование обучаются только на
|
||||||
обучающих блоках — борьба с утечкой данных.
|
обучающих фолдах — борьба с утечкой данных.
|
||||||
\item Контроль перестановкой меток дал 0,027–0,028 — воспроизведён
|
\item Контроль перестановкой меток дал 0,027–0,028 — воспроизведён
|
||||||
случайный уровень.
|
случайный уровень.
|
||||||
\item Почти-дубликаты находятся только внутри одного класса и
|
\item Почти-дубликаты находятся только внутри одного класса и
|
||||||
@@ -468,7 +577,8 @@
|
|||||||
\end{panel}
|
\end{panel}
|
||||||
\end{column}
|
\end{column}
|
||||||
\end{columns}
|
\end{columns}
|
||||||
\note{Говорит В. Н. Копнин. Схема: 5-блочная стратифицированная
|
\vspace{-1mm}
|
||||||
|
\note{Говорит В. Н. Копнин. Схема: 5-фолдовая стратифицированная
|
||||||
перекрёстная проверка с повторами; вложенная — для честной настройки
|
перекрёстная проверка с повторами; вложенная — для честной настройки
|
||||||
параметров; отложенная выборка — дополнительная проверка. Отдельно
|
параметров; отложенная выборка — дополнительная проверка. Отдельно
|
||||||
переставляли метки: качество упало до случайного уровня, значит сигнал
|
переставляли метки: качество упало до случайного уровня, значит сигнал
|
||||||
@@ -485,7 +595,7 @@
|
|||||||
\textbf{Сбалансированная доля} & Средняя полнота по классам: находит ли модель редких персонажей.\\[1mm]
|
\textbf{Сбалансированная доля} & Средняя полнота по классам: находит ли модель редких персонажей.\\[1mm]
|
||||||
\textbf{Тройка лучших (top-3)} & Истинный персонаж оказался в тройке наиболее вероятных ответов.\\[1mm]
|
\textbf{Тройка лучших (top-3)} & Истинный персонаж оказался в тройке наиболее вероятных ответов.\\[1mm]
|
||||||
\textbf{MCC / каппа} & Согласие с поправкой на случайное угадывание.\\[1mm]
|
\textbf{MCC / каппа} & Согласие с поправкой на случайное угадывание.\\[1mm]
|
||||||
\textbf{Матрица ошибок} & Кто с кем путается; подробнее — в блоке 3.\\
|
\textbf{Матрица ошибок} & Кто с кем путается; подробнее — в части 3.\\
|
||||||
\end{tabular}
|
\end{tabular}
|
||||||
\end{panel}
|
\end{panel}
|
||||||
\begin{panel}
|
\begin{panel}
|
||||||
@@ -496,21 +606,21 @@
|
|||||||
взвешивает все 34 класса, включая редких. Доля правильных ответов
|
взвешивает все 34 класса, включая редких. Доля правильных ответов
|
||||||
обманчива при дисбалансе. Смысл всех остальных метрик — словесный, без
|
обманчива при дисбалансе. Смысл всех остальных метрик — словесный, без
|
||||||
формул. Ориентиры случайного уровня уже озвучены — они пригодятся в
|
формул. Ориентиры случайного уровня уже озвучены — они пригодятся в
|
||||||
блоке 3.}
|
части 3.}
|
||||||
\end{frame}
|
\end{frame}
|
||||||
|
|
||||||
% ==================== БЛОК 3 ====================
|
% ==================== БЛОК 3 ====================
|
||||||
\begin{frame}{Блок 3\ \ ·\ \ Результаты}
|
\begin{frame}{Часть 3\ \ ·\ \ Результаты}
|
||||||
\begin{center}
|
\begin{center}
|
||||||
\begin{tcolorbox}[enhanced, width=0.86\paperwidth, colback=cream, opacityback=0.9,
|
\begin{tcolorbox}[enhanced, width=0.86\paperwidth, colback=cream, opacityback=0.9,
|
||||||
colframe=cream, boxrule=0pt, arc=2mm, halign=center, boxsep=3mm]
|
colframe=cream, boxrule=0pt, arc=2mm, halign=center, boxsep=3mm]
|
||||||
{\large Блок 3}\\[1.5mm]
|
{\large Часть 3}\\[1.5mm]
|
||||||
{\Large\bfseries Результаты и интерпретация}\\[2mm]
|
{\Large\bfseries Результаты и интерпретация}\\[2mm]
|
||||||
\small Оценки качества · вклад признаков · матрицы ошибок · ограничения · выводы\\[2.5mm]
|
\small Оценки качества · вклад признаков · матрицы ошибок · ограничения · выводы\\[2.5mm]
|
||||||
{\bfseries Докладчик: М.~В.~Савостиков}
|
{\bfseries Докладчик: М.~В.~Савостиков}
|
||||||
\end{tcolorbox}
|
\end{tcolorbox}
|
||||||
\end{center}
|
\end{center}
|
||||||
\note{Блок\,3. Говорит М. В. Савостиков. План блока: главные числа, что даёт
|
\note{Часть\,3. Говорит М. В. Савостиков. План части: главные числа, что даёт
|
||||||
качество, стиль или содержание, кого модель путает, как корректно читать
|
качество, стиль или содержание, кого модель путает, как корректно читать
|
||||||
оценки, ограничения и выводы.}
|
оценки, ограничения и выводы.}
|
||||||
\end{frame}
|
\end{frame}
|
||||||
@@ -521,7 +631,7 @@
|
|||||||
\begin{panel}
|
\begin{panel}
|
||||||
\small
|
\small
|
||||||
\begin{tabular}{@{}p{3.5cm}r@{}}
|
\begin{tabular}{@{}p{3.5cm}r@{}}
|
||||||
\textbf{Мягкое голосование (5 блоков)} & 0,304\\
|
\textbf{Мягкое голосование (5 фолдов)} & 0,304\\
|
||||||
\textbf{ExtraTrees, char = 10\,000} & 0,276\\
|
\textbf{ExtraTrees, char = 10\,000} & 0,276\\
|
||||||
\textbf{Вложенный выбор} & 0,275\\
|
\textbf{Вложенный выбор} & 0,275\\
|
||||||
\textbf{Отложенная выборка} & 0,333\\
|
\textbf{Отложенная выборка} & 0,333\\
|
||||||
@@ -541,8 +651,8 @@
|
|||||||
\end{column}
|
\end{column}
|
||||||
\end{columns}
|
\end{columns}
|
||||||
\note{Говорит М. В. Савостиков. Главная цифра — macro-F1 0,304 для мягкого
|
\note{Говорит М. В. Савостиков. Главная цифра — macro-F1 0,304 для мягкого
|
||||||
голосования при 5-блочной проверке. Более консервативная оценка — 0,275:
|
голосования при 5-фолдовой проверке. Более консервативная оценка — 0,275:
|
||||||
там конфигурация выбиралась честно, внутри обучающей части каждого блока.
|
там конфигурация выбиралась честно, внутри обучающей части каждого фолда.
|
||||||
На отложенной выборке 0,333, но это одно разбиение. Суть: персонажи
|
На отложенной выборке 0,333, но это одно разбиение. Суть: персонажи
|
||||||
действительно различимы.}
|
действительно различимы.}
|
||||||
\end{frame}
|
\end{frame}
|
||||||
@@ -693,7 +803,7 @@
|
|||||||
\end{columns}
|
\end{columns}
|
||||||
\begin{panel}
|
\begin{panel}
|
||||||
\small Диаграмма — доли предсказаний «аттракторных» классов
|
\small Диаграмма — доли предсказаний «аттракторных» классов
|
||||||
(hub-коллапс: редкие классы забираются популярными).
|
(стягивание предсказаний к популярным классам).
|
||||||
\end{panel}
|
\end{panel}
|
||||||
\note{Говорит М. В. Савостиков. Проблема редких классов: модель
|
\note{Говорит М. В. Савостиков. Проблема редких классов: модель
|
||||||
предсказывает популярные классы слишком часто — Abigail получает десятки
|
предсказывает популярные классы слишком часто — Abigail получает десятки
|
||||||
@@ -784,7 +894,7 @@
|
|||||||
вложенная проверка снижает этот риск, но не устраняет.
|
вложенная проверка снижает этот риск, но не устраняет.
|
||||||
\item Основной вклад — содержательные слова и тема.
|
\item Основной вклад — содержательные слова и тема.
|
||||||
\item Простая коррекция приоров не помогла редким классам.
|
\item Простая коррекция приоров не помогла редким классам.
|
||||||
\item Стек переобучается на малой выборке.
|
\item Объединение через мета-классификатор переобучается на малой выборке.
|
||||||
\end{itemize}
|
\end{itemize}
|
||||||
\end{panel}
|
\end{panel}
|
||||||
\end{column}
|
\end{column}
|
||||||
|
|||||||
Reference in New Issue
Block a user