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

TL;DR «Невозможное» явление минимизации ошибки теста со «слишком большим количеством» параметров проявляется не только в глубоких нейронных сетях, но и в линейной регрессии. Недавний документ проливает свет на почему, ключевую роль в котором играют неверно указанные функции.

ОБНОВЛЕНИЕ: появилась видеоверсия этого поста: https://youtu.be/bM6WJVyytEg

Глубокое обучение оказалось удивительно эффективным в самых разных задачах, от распознавания речи до обнаружения объектов на изображениях. И все же, как прямо сказал один автор, «Эти эмпирические результаты не должны быть возможными» [1].

Почему? Хотя глубокие нейронные сети обучаются на так называемых наборах «больших данных» с миллионами обучающих примеров, нейронные сети имеют значительно больше настраиваемых параметров, чем примеры, то есть они «избыточно параметризованы». Согласно статистической теории обучения, такие модели должны страдать от высокой ошибки тестирования, делая неточные прогнозы на новой выборке данных. Модели должны быть похожи на студента, который запомнил ответы на экзамене, но проваливается, когда на экзамене оказываются другие вопросы. Еще более интригующим является то, что хотя это «невозможное» явление впервые наблюдалось в глубоких нейронных сетях, с тех пор оно наблюдалось в гораздо более простых моделях, включая широкие нейронные сети, ядерные методы, а теперь даже модели линейной регрессии.

Линейная регрессия привлекла мое внимание. Простота линейной регрессии заставила меня почувствовать, что у меня есть шанс понять эту тайну. Поэтому я изучил недавние статьи, сосредоточив внимание на статье Дара и др. 2021 года Прощай, компромисс между смещением и дисперсией? Обзор теории сверхпараметризованного машинного обучения» [2].

Чтобы дать представление об их аргументах, позвольте мне построить пример с контрастными наборами данных. Предположим, что цель состоит в том, чтобы предсказать балл студента на вступительном экзамене в университет, и доступны два набора данных. Набор данных «оценки» содержит результаты предыдущих тестов в таких ключевых областях, как математика, естественные науки, рассуждения и язык. Набор данных «социальные сети» содержит журналы действий каждого учащегося в социальных сетях. Линейная модель, использующая набор данных «экзаменов», скорее всего, сведет к минимуму ошибку теста с небольшим количеством этих параметров с высоким уровнем сигнала, не улучшая ошибку теста из-за чрезмерной параметризации. Напротив, линейная модель, использующая набор данных «социальные сети», имеет много данных с низким уровнем сигнала, поэтому несколько параметров не могут работать хорошо. Вместо этого полезно добавлять все больше и больше параметров, чтобы модель могла извлечь полезный сигнал. Тогда избыточная параметризация может улучшить даже ошибку теста.

Я наблюдаю, что в нашем цифровом мире мы получаем больше наборов данных типа «социальные сети», которые являются массивными, но включают множество параметров с низким уровнем сигнала. Возможно, это один из факторов, почему мы сейчас замечаем преимущества чрезмерной параметризации.

Итак, почему наборы данных с низким уровнем сигнала благоприятны для чрезмерной параметризации? Я начну с обзора статистической теории обучения, где компромисс между смещением и дисперсией заставил многих разработчиков моделей опасаться слишком большого количества параметров. Далее я опишу эмпирически наблюдаемый «двойной спуск», когда огромное количество параметров может привести к вторичному уменьшению ошибки теста за пределами режима смещения-дисперсии. Наконец, я резюмирую объяснение этого явления для линейной регрессии, которое, надеюсь, приведет к некоторому интуитивному пониманию «невозможных» результатов.

Обновление информации о смещении: роль количества параметров

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

Однако если эти модели используются для прогнозирования другой выборки данных, например тестовых данных, то ошибка обычно увеличивается по мере приближения к порогу интерполяции. Построение графика ошибки набора тестовых данных относительно количества параметров обычно приводит к U-образной кривой. Чтобы свести к минимуму ошибку теста, оптимальное количество параметров находится между 0 и порогом интерполяции.

Почему? Разложение смещения-дисперсии

Традиционный теоретический подход к объяснению этой модели ошибки теста состоит в том, чтобы разложить ошибку на систематическую ошибку и дисперсию выборки. Каждый дополнительный параметр, добавленный в модель, уменьшает систематическую ошибку, но увеличивает дисперсию выборки в ошибке теста. В результате возникает компромисс между смещением и дисперсией [4]. Важно отметить, что по мере добавления дополнительных параметров дополнительная ошибка из-за дисперсии выборки имеет тенденцию преобладать, поэтому люди думали, что хорошая производительность с миллиардами дополнительных параметров, чем примеры, должна быть «невозможна».

Чтобы узнать больше о том, почему компромисс между смещением и дисперсией предпочитает меньшее количество параметров, см. мой более глубокий анализ компромисс между смещением и дисперсией.

Удивительная вещь в этой недавней работе над параметризацией заключается в том, что кажется, что она говорит: «Просто подойдите к 100-мерной глубокой нейронной сети, и ваша ошибка теста снова уменьшится, возможно, ниже, чем у двух- или трехмерной модели». Вот почему это кажется таким невозможным.

Регуляризация

Однако был один обходной путь. Эффективные модели могут быть созданы в многомерном пространстве параметров путем ограничения подгонки модели с помощью того, что называется регуляризацией. Вместо того, чтобы просто минимизировать ошибку — расхождения прогноза модели с данными — мы минимизируем функцию потерь, которая представляет собой комбинацию ошибки и штрафного члена за «слишком много» изучения доступного пространства параметров. Например, норма ℓ1 поощряет нулевое значение параметра и штрафует за каждый дополнительный ненулевой параметр. В случае предсказания сферы штраф за норму ℓ1 мог бы предотвратить ненулевые веса параметров модели в четвертом или пятом измерении, если только в этих измерениях не было больше данных, чем в исходных трех. (Линейная регрессия с нормой ℓ1 известна как лассо-регрессия, а с нормой ℓ2 — как гребенчатая регрессия.)

Регуляризация оказалась эффективным (хотя и несколько специальным) инструментом для предотвращения ошибок из-за резкого увеличения дисперсии выборки по мере добавления параметров. Таким образом, это согласуется с компромиссом смещения и дисперсии.

Однако самое удивительное в результатах больших данных то, что низкая ошибка теста может быть обнаружена в больших измерениях даже без явной регуляризации. Это кажется противоречащим теории.

Двойной спуск

В 2018 году Белкин и соавторы [3] предположили, что очевидное противоречие теории и наблюдений можно разрешить с помощью единой кривой производительности, которую они назвали «двойным спуском». Их тестовая кривая ошибки имеет «недопараметризированный» режим слева от порога интерполяции. Этот режим имеет традиционную U-образную кривую смещения-дисперсии, которая является первым спуском. Затем он добавляет «перепараметризованный» режим справа от порога интерполяции. В режиме перепараметризации ошибка теста может снова уменьшаться с увеличением количества параметров, второго спуска. Ниже приведена упрощенная диаграмма из Dar et al. [2].

Как я упоминал во введении, изначально двойной спуск наблюдался в глубоких нейронных сетях. И большая часть теории, пытающейся понять закономерность, использует особенности глубоких нейронных сетей и метод подбора градиентного спуска. Но недавние статьи показали, как и когда линейная регрессия также демонстрирует двойной спуск — явление не только для глубоких нейронных сетей. Давайте рассмотрим это сейчас. (Тем не менее, существуют существуют дополнительные эффекты, возникающие именно в глубокой нейронной сети, а не в линейной регрессии.)

Двойной спуск в линейной регрессии

Линейная регрессия означает подгонку плоскости (или гиперплоскости) к набору данных. Поиск плоскости, которая минимизирует ошибку, не требует таких методов машинного обучения, как градиентный спуск. На самом деле решение для случая, когда количество параметров (столбцов в матрице плана) меньше количества точек данных (строк в матрице плана), известно уже более века (при стандартных предположениях, конечно ). Техника решения не работает в режиме перепараметризации, поскольку матрица плана не может быть инвертирована, когда столбцов больше, чем строк. Кроме того, казалось, никто и не подозревал, что будет получена полезная модель.

Но это может быть полезно! И, проработав множество сценариев с различными предположениями о распределении данных, Dar et al. выведены необходимые и достаточные условия, при которых в линейной регрессии будет иметь место двойной спуск. Ниже приведено несколько интуитивное (но неизбежно неточное) описание условий в разделе 3.3.3 [2]:

  1. Низкоразмерная структура сигнала в данных (где сигнал означает очищенный от шума).
  2. Низкая эффективная размерность данных (несколько больших собственных векторов). (См. [5] для руководства по эффективной размерности и ее отличию от внутренней размерности.)
  3. Выравнивание: размерности данных с наивысшим сигналом должны быть выровнены с наивысшими эффективными размерностями (самыми большими собственными векторами в данных).
  4. Обилие малосигнальных (но ненулевых) признаков в модели.

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

Другими словами, если человек строит регрессию с мудро подобранными функциями, тогда небольшая модель может работать хорошо, и чрезмерная параметризация, вероятно, принесет меньше пользы — возможно, никакой пользы. Но если вы соберете кучу функций, скажем, из некоторых случайно записанных интернет-журналов, то чрезмерная параметризация, скорее всего, будет полезной — в некотором смысле только потому, что недопараметризированная модель была настолько плохой. И, конечно же, большая часть нашего моделирования машинного обучения в эпоху Интернета относится ко второй категории. Этот вывод напоминает о «силе слабых учеников» в ансамблевых моделях и бустинге.

Вспомните сконструированный пример, который я приводил ранее, в котором прогнозирование результатов вступительных экзаменов в университет с использованием набора данных «баллы» результатов других тестов не выиграло от большего количества параметров (отсутствие двойного спуска), но прогнозирование с использованием набора данных «социальные сети» выиграло бы от большего количества параметров. параметры (двойной спуск). Чем больше параметров мы добавим, тем больше шансов попасть в полезный источник данных, например, в чат для помощи с домашними заданиями, и поэтому избыточная параметризация помогает. Набор данных «социальные сети» указан неверно.

Возвращаясь к примеру с плавающей сферой, предположим, что вместо этого мы пытаемся найти сотовый телефон. Теоретически (если бы авторизация была предоставлена) мы могли бы использовать различные источники телеметрии, такие как журналы с вышек сотовой связи, ближайших точек доступа Wi-Fi или обнаружение Bluetooth, а также, возможно, сообщения в социальных сетях и сообщения от человека, использующего телефон, или фотографии с камеры видеонаблюдения, использующие распознавание изображений. У нас была бы более точная модель местоположения со 100 функциями, чем с 3, потому что каждая из этих функций по отдельности является слабым сигналом. Эти функции не связаны напрямую с координатами X, Y, Z телефона: они указаны неверно.

Более ранняя статья Hastie et al. (2019) также прокомментировал интуицию, лежащую в основе двойного спуска, с неправильным определением линейной регрессии:

«В этом разделе мы рассматриваем неверно заданную модель, в которой функция регрессии по-прежнему является линейной, но мы наблюдаем только подмножество признаков. Такая настройка обеспечивает еще одну потенциальную мотивацию для интерполяции: во многих задачах мы не знаем форму функции регрессии и генерируем признаки, чтобы улучшить нашу способность аппроксимации. Увеличение количества признаков после точки интерполяции… теперь может уменьшить как смещение, так и дисперсию» [6].

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

Просто скажите, что делать

Вся эта теория хороша, но некоторые читатели просто хотят знать, что делать.

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

Я построил искусственный пример, чтобы явно сравнить эти два случая. Я взял существующий хорошо определенный набор данных, а затем испортил его шумом и добавил дополнительные параметры, чтобы он стал неверно определенным набором данных. Затем я подогнал линейные регрессии и измерил их ошибки тестирования, что привело к графику ниже.

Позвольте мне пройти через это шаг за шагом. Наименьшая ошибка достигается при линейных регрессиях, подходящих к четко определенному набору данных (красный) с 4 из 10 параметров. Неправильно указанный набор данных (синий), напротив, демонстрирует классический двойной спуск с низкой ошибкой слева от порога интерполяции (который находится при p = 10) и второй низкой ошибкой справа, с большим количеством параметров. Неправильно указанный набор данных (красный) достигает наименьшей ошибки с большинством параметров, p = 30. НО ЭТО ВСЕ ЕЩЕ НЕ ТАК МАЛЕНЬКО, как самая низкая ошибка в четко определенном наборе данных (синий). Полная информация о том, как я построил эти наборы данных и подобрала линейную регрессию, находится на моем github.

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

Постскриптум: Детализация неверных спецификаций

Если вы хотите углубиться в теорию, Дар и соавторы покажут, как предвзятость и дисперсия могут быть дополнительно разложены на неверную спецификацию и внутриклассовый компонент. Ниже приведен пример, который они используют для иллюстрации поведения своих дополнительных компонентов:

Рис. 4 расширяет рис. 2(d), иллюстрируя неправильные спецификации и внутривыборочные компоненты смещения и дисперсии в зависимости от количества параметров p в функциональном классе. Действительно, смещение неправильной спецификации уменьшается по мере того, как класс функций становится более параметризованным. Напротив, внутриклассовое смещение равно нулю в режиме с заниженными параметрами и увеличивается с p в режиме с избыточными параметрами. Тем не менее, уменьшение смещения неправильной спецификации из-за чрезмерной параметризации является более значительным, чем соответствующее увеличение смещения внутри выборки; и это соответствует наличию глобального минимума ошибки теста в перепараметрированном диапазоне. Мы можем заметить, что как термины дисперсии в классе, так и термины дисперсии неправильных спецификаций достигают пика около порога интерполяции (т. Е. p = n) из-за плохой обработки матрицы входных признаков. Основываясь на структуре истинного вектора параметров (см. рис. 2(e)), значительная неправильная спецификация возникает для p ‹ 20, и это очевидно для компонентов неправильной спецификации как смещения, так и дисперсии [2].

Обратите внимание, что такое поведение относится к предположениям в примере.

Дар и соавторы отмечают, что в перепараметризованном режиме линейной регрессии существует «богатое разнообразие поведений обобщения» [2]. Моя цель здесь состояла в том, чтобы просто показать, как «невозможное» поведение двойного спуска может казаться возможным — даже для нашей интуиции — с помощью простой линейной модели.

Благодарности

Спасибо Yehuda Dar за исправление нескольких ошибок в предыдущих версиях. Все оставшиеся ошибки (а их, вероятно, несколько) мои собственные.

Библиография

[1] Т. Дж. Сейновски, «Необоснованная эффективность глубокого обучения в искусственном интеллекте», Proc. Натл. акад. наук, том. 117, нет. 48, стр. 30033–30038, декабрь 2020 г., doi: 10.1073/pnas.1907373117.

[2] Иегуда Дар, В. Мутукумар и Р. Баранюк, Прощание с компромиссом смещения и дисперсии? Обзор теории сверхпараметризованного машинного обучения, Корнельский университет, 6 сентября 2021 г. Доступ: 28 октября 2021 г. [Онлайн]. Доступно: https://arxiv.org/abs/2109.02355

[3] М. Белкин, Д. Хсу, С. Ма и С. Мандал, Согласование современной практики машинного обучения и компромисса между отклонениями, ArXiv181211118 Cs Stat, сентябрь 2019 г. , По состоянию на 29 октября 2021 г. [Онлайн]. Доступно: http://arxiv.org/abs/1812.11118

[4] Т. Хасти, Т. Хасти, Р. Тибширани и Дж. Х. Фридман, Элементы статистического обучения: анализ данных, вывод и прогнозирование. Нью-Йорк: Спрингер, 2001.

[5] М. Дель Джудиче, «Эффективная размерность: учебное пособие», Multivar. Поведение Res., март 2020 г., doi: 10.1080/00273171.2020.1743631.

[6] Т. Хасти, А. Монтанари, С. Россет и Р. Дж. Тибширани, Сюрпризы в многомерной интерполяции методом наименьших квадратов без гребней, ArXiv190308560 Cs Math Stat, декабрь 2020 г., доступ: январь 01, 2022. [Онлайн]. Доступно: http://arxiv.org/abs/1903.08560