Обучить модель узнавать цифры — половина дела. Вторая половина —
честно измерить, насколько хорошо она это делает. Одно число «точность
96%» скрывает больше, чем показывает: какие цифры путаются, насколько
можно верить самой цифре 96 и стоит ли доверять уверенности модели. Об
этом — весь урок.
От пикселей к вероятностям
Возьмём классическую задачу: узнать рукописную цифру 8×8 пикселей.
Простой классификатор — логистическая регрессия — для каждого из десяти
классов считает взвешенную сумму яркостей (логит), а softmax
превращает десять логитов в десять вероятностей, сумма которых равна
единице. Ответ модели — класс с наибольшей вероятностью.
Заметим: эта простая модель смотрит на голые пиксели, не зная ничего о
краях и формах. Свёрточная сеть распознала бы цифры точнее,
но и её пришлось бы оценивать теми же мерками — а именно оценка и есть
тема урока. Обучив логистическую регрессию на реальных рукописных цифрах,
получаем точность 96,3% на отложенном тесте. Звучит отлично. Но за
этим числом прячется много вопросов, и хороший исследователь их задаёт.
Матрица ошибок
Первый вопрос: а какие именно ошибки делает модель? Общая точность их
усредняет и прячет. Направление ошибок показывает матрица ошибок —
таблица, где строка i, столбец j хранит, сколько объектов класса i
модель назвала классом j.
Яркая диагональ — верные ответы. Вне диагонали — ошибки: их немного, но
они не случайны. Модель чаще всего путает 5 с 9 (три раза) и 8 с
1 (два раза) — эти пары отмечены зелёным.
Кого путает модель
Матрица говорит, ЧТО путается, а взгляд на сами картинки объясняет,
ПОЧЕМУ. Достанем реальные цифры, на которых модель ошиблась.
Четыре цифры, на которых модель споткнулась. Приглядитесь: небрежно
написанная 5 и вправду похожа на 9, а узкая 8 — на 1. Ошибки
модели не глупы — она путается там, где и человек бы засомневался.
Это важный урок: ошибки хорошей модели обычно осмысленны. Если бы она
путала 0 с 7, стоило бы искать баг; путаница же похожих начертаний —
свойство самой задачи, а не поломка.
Точность и с чем её сравнивать
96,3% — это много или мало? Число само по себе бессмысленно, ему
нужна точка отсчёта. Самый честный ориентир — базовый ответ: сколько даст
модель, всегда называющая самый частый класс. Цифры распределены почти
поровну, поэтому такой ответ верен лишь в 10,2% случаев.
Точность — случайная величина
Теперь главный статистический вопрос: насколько можно верить самому числу
96,3%? Мы измерили его на 540 тестовых примерах. Возьми мы другие
540 — вышло бы чуть иначе. Измеренная точность не константа, а оценка
случайной величины, и у неё есть доверительный интервал.
Слева: точность 96,3% с интервалом ±1,6% — истинное качество
где-то в [94,3;97,6]%. Справа: чем больше тест, тем уже интервал.
На 100 примерах разброс ±3,7%, на десяти тысячах — лишь
±0,4%. Маленький тест не различит модели 95% и 97%.
Ширина интервала для доли верных ответов p убывает как 1/n:
полуширина≈znp(1−p),z≈1,96для95%.
Отсюда практическое правило: сообщая точность, всегда прикидывайте
интервал. «96,3% на 540 примерах» честнее, чем голое «96,3%»,
а разница в полпроцента на крошечном тесте — обычно просто шум.
Строка и столбец: точность и полнота
У матрицы ошибок два осмысленных среза. Столбец класса «5» отвечает: из
всех, кого модель назвала пятёрками, сколько ими и были? Это точность
(precision). Строка класса «5» отвечает: из всех настоящих пятёрок
сколько модель нашла? Это полнота (recall):
Модель выдаёт вместе с ответом и уверенность — вероятность выбранного
класса. Хорошо бы, чтобы уверенность отражала правоту: среди ответов с
уверенностью 80% верными должны быть примерно 80%. Это свойство
называют калибровкой, и оно часто нарушено — модели склонны быть
самоуверенными.
Русская линия: статистика оценивания
За скромным «точность с интервалом» стоит целая наука — математическая
статистика, в которой сильна русская школа. Андрей Колмогоров в 1933
году дал теории вероятностей строгие основания, а закон больших чисел,
восходящий ещё к Чебышёву, объясняет, почему доля верных ответов на
большом тесте близка к истинной вероятности. Оценивать надёжность по
конечной выборке — с интервалами и запасом — учила прикладная статистика
Бориса Гнеденко, чья теория надёжности как раз о том, какой доле изделий
можно доверять и с какой уверенностью.
Гнеденко ставил вопрос ребром: любое утверждение о доле — брака ли,
ошибок ли — имеет смысл лишь с указанием, по скольким наблюдениям оно
получено и какова его надёжность.
Оттого честный отчёт о качестве модели — не одно число, а число с
интервалом, разбор ошибок и оговорка о размере теста. Это не
придирчивость, а азбука статистики, без которой «96%» — просто
красивая цифра. Та же дисциплина оценки нужна и когда мы обучаем
сеть, и когда сравниваем распознаватели цифр:
без интервала любое «стало лучше» повисает в воздухе.
Лаборатория классификатора
Как модель распределяет уверенность
График шире экрана — листайте по горизонтали →
Загружается живая иллюстрация…
Порядок опытов. Перед вами настоящий классификатор и галерея реальных
рукописных цифр. Выберите цифру и посмотрите на столбцы вероятностей: у
уверенно узнанной один столбец почти до потолка, у спорной — два-три
столбца делят уверенность между собой. Первые цифры в ряду — те самые,
на которых модель ошиблась: видно, между какими классами она заколебалась
и почему. Так абстрактная «уверенность модели» становится зримой.
Сборка: одно число — это ещё не оценка
Измерить качество классификатора куда тоньше, чем назвать одну точность.
Матрица ошибок показывает направление ошибок — модель на цифрах путает
похожие начертания 5 и 9, 8 и 1, а не что попало. Точность
96,3% осмысленна лишь рядом с базовой линией 10% и лишь с
доверительным интервалом ±1,6%, который сужается с ростом теста как
1/n. Строка и столбец матрицы дают полноту и точность — два
разных взгляда на ошибку, — а уверенность модели полезна, только если она
калибрована. За всем этим стоит русская школа статистики от Чебышёва и
Колмогорова до Гнеденко. Честный отчёт — это число с интервалом, разбор
ошибок и оговорки, а не голая цифра. Дальше мы научим сеть не просто
запоминать обучающие картинки, но обобщать на новые: об аугментации,
переобучении и переносе знаний.