Кривые обучения
28 Диагностирование смещения и разброса: Кривые обучения
Мы рассматривали несколько подходов к разделению ошибок на избегаемое смещение и на разброс. Мы делали это оценивая оптимальную долю ошибок вычисляя ошибки на тренировочной выборке алгоритма и на валидационной выборке. Давайте обсудим более информативный подход: графики кривой обучения.
Графики кривых обучения представляют из себя зависимости доли ошибки от количества примеров тренировочной выборки.
По мере увеличения размера тренировочной выборки, ошибка на валидационной выборке должна уменьшаться.
Мы часто будем ориентироваться на некоторую «желаемую долю ошибок» которую мы надеемся в конце концов достигнет наш алгоритм. Например:
- Если мы надеемся достичь уровень качества, доступный человеку, тогда доля человеческих ошибок должна стать «желаемой долей ошибок»
- Если обучающийся алгоритм используется в некотором продукте (в таком, как поставщик кошачьих изображений), у нас может быть понимание, какого уровня качества нужно достигнуть, чтобы пользователи получили наибольшую пользу
- Если вы работаете над важным приложением в течение долгого времени, у вас может появиться обоснованное понимание, какого прогресса вы сможете достигнуть в следующий квартал/год.
Добавим желаемый уровень качества на нашу кривую обучения:
Вы можете визуально экстраполировать красную кривую ошибки на валидационной выборке и предположить, насколько ближе вы могли бы приблизиться к желаемому уровню качества, добавляя больше данных. В примере, изображенном на картинке, кажется вероятным, что удвоение размера тренировочной выборки позволит достигнуть желаемого уровня качества.
Однако, если кривая доли ошибки валидационной выборки вышла на плато (т. е. превратилась в прямую линию, параллельную оси абсцисс), сразу говорит о том, что добавление дополнительных данных не поможет достигнуть поставленной цели:
Взгляд на кривую обучения может таким образом помочь вам избежать траты месяцев на сбор вдвое больше тренировочных данных только для того, чтобы осознать, что их добавление не помогает.
Одним из недостатков этого подхода заключается в том, что если вы смотрите только на кривую ошибок на валидационной выборке, может быть сложно экстраполировать и точно предсказать, как поведет себя красная кривая, если вы добавите больше данных. Поэтому есть еще один дополнительный график, который может помочь оценить воздействие дополнительных тренировочных данных на долю ошибок: ошибка обучения.
29 График ошибок обучения
Ошибки на валидационной (и тестовой) выборках должны уменьшаться по мере увеличения тренировочной выборки. Но на тренировочной выборке ошибка при добавлении данных обычно растет.
Давайте проиллюстрируем этот эффект на примере. Предположим ваша тренировочная выборка состоит всего из 2х примеров: Одна картинка с кошками и одна без кошек. В этом случае обучаемому алгоритму легко запомнить оба примера тренировочной выборки и показать 0% ошибки на тренировочной выборке. Даже в случае, если оба обучающих примера неправильно размечены, алгоритм легко запомнит их классы.
А теперь представим, что ваш тренировочная выборка состоит из 100 примеров. Предположим, некоторое количество примеров классифицированы неправильно, или у некоторых примеров невозможно установить класс, например, у размытых изображений, когда даже человек не может определить, присутствует на изображении кошка или нет. Предположим, что обучающийся алгоритм все еще «запоминает» большинство примеров тренировочной выборки, но теперь уже сложнее получить точность равную 100%. Увеличивая тренировочную выборку с 2 до 100 примеров, вы обнаружите, что точность работы алгоритма на тренировочной выборке будет понемногу уменьшаться.
В конце концов представим, что ваша тренировочная выборка состоит из 10000 примеров. В этом случае, алгоритму становится все труднее идеально классифицировать все примеры, особенно если в обучающей выборке присутствуют размытые изображения и ошибки классификации. Таким образом ваш алгоритм будет работать хуже на такой тренировочной выборке.
Давайте добавим график ошибок обучения к нашим предыдущим
Вы можете видеть, что синяя кривая «Ошибок обучения» растет при увеличении тренировочной выборки. Более того, обучающийся алгоритм обычно показывает лучшее качество на тренировочной выборке, чем на валидационной; таким образом красная кривая ошибок на валидационной выборке лежит строго над синей кривой ошибок на тренировочной выборке.
Дальше давайте обсудим, как интерпретировать эти графики.