Почему мы хотим масштабировать результаты при использовании отсева?

Из статьи об исключении:

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

Почему мы хотим сохранить ожидаемый результат? Если мы используем активации ReLU, линейное масштабирование весов или активаций приводит к линейному масштабированию сетевых выходов и не влияет на точность классификации.

Что мне не хватает?


person MichaelSB    schedule 09.12.2018    source источник


Ответы (1)


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

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

person Mikhail Berlinkov    schedule 09.12.2018
comment
Почему передача масштабированного вывода через softmax или сигмоид может повлиять на точность классификации? Самый большой объем производства все равно останется самым большим, не так ли? - person MichaelSB; 10.12.2018
comment
Ну, например, если мы используем сигмоид, тогда могут быть значения, которые без масштабирования будут означать 0 вместо 1. На самом деле, с softmax это тоже может иметь место. Только если вы используете его в качестве последнего слоя и берете максимум вероятностей с softmax и учитываете только точность / точность / отзыв (например, не roc_auc_score, который чувствителен к прогнозируемым вероятностям), тогда точность будет такой же. - person Mikhail Berlinkov; 10.12.2018
comment
Вы говорите о применении жесткого порога после сигмовидной кишки, например двоичный классификатор: класс A, если сигмоид (y) ›0,5, класс B иначе? - person MichaelSB; 10.12.2018
comment
Да, а также, если вы не применяете его и не измеряете оценку на основе прогнозируемых вероятностей (например, roc_auc_score), тогда это масштабирование также влияет на оценку. - person Mikhail Berlinkov; 10.12.2018
comment
Хорошо, в этом есть смысл. Видите ли вы какие-либо другие сценарии, в которых может потребоваться масштабирование, например, пакетная нормализация? - person MichaelSB; 10.12.2018
comment
Масштабирование используется при пакетной нормализации, если вы это имеете в виду. - person Mikhail Berlinkov; 10.12.2018
comment
Я имел в виду, что масштабирование выходных данных из выпадающего слоя не повлияет на пакетную нормализацию? - person MichaelSB; 11.12.2018
comment
Пакетная нормализация пытается гарантировать, что узлы имеют среднее значение 0 и дисперсию 1, поэтому масштабирование входящих весов на слой с пакетной нормализацией не должно влиять на него, то есть это повлияет на параметры пакетной нормализации, но не на активацию узлов в этом слое. . - person Mikhail Berlinkov; 11.12.2018
comment
Я только что протестировал это с помощью небольшой свертки с ReLU на всех уровнях и softmax, примененным к выходам. Я увеличил количество предварительных активаций первого слоя на 100 только во время тестирования. На результаты (точность классификации) это не повлияло. То же самое для масштабирования весов первого слоя. Я также проверил это с пакетной нормализацией - если я полагаюсь на статистику набора поездов во время теста, то да, это влияет на точность, однако я пересчитываю статистику во время тестирования, а затем масштабирование предварительных активаций или весов в первом слое не имеет эффект. - person MichaelSB; 05.05.2019