PReLU

shemanovskiy
3 min readMay 18, 2018

--

PReLU или Parametric ReLU — это логическое развитие обыкновенной активационной функции ReLU. Основное отличие между ними состоит в том, что у PReLU есть обучаемые параметры.

PReLU определяется следующей формулой:

В этой формуле yᵢ — это то, что приходит на вход активационной функции канала i, а aᵢ — это коэффициент, отвечающий за наклон отрицательной части. Индекс i у параметра aᵢ показывает, что нелинейная активация может быть разной для разных каналов. При этом, если aᵢ приравнять к нулю, активационная функция превратится в простую ReLU.

Формулу выше можно записать ещё и немного по-другому:

Вот как выглядит PReLU на графике, при параметре aᵢ = 0.25:

Если значение параметра aᵢ мало и фиксированно, например 0.01, PReLU становится Leaky ReLU (LReLU). Основной идеей создания LReLU было устранение нулевого градиента, однако, по факту, LReLU даёт ничтожно малый прирост точности, по сравнению с обычной ReLU, поэтому о ней нет смысла говорить.

Функция PReLU хороша тем, что с её добавлением, количество параметров сети увеличивается незначительно: общее количество новых параметров каждого слоя всего лишь равно количеству каналов этого слоя.

PReLU может быть channel-shared. Это означает, что значение параметра a будет общим для всех каналов. В этом случае в формуле у параметра не будет индекса:

Оптимизация

Градиент параметра aᵢ для одного слоя вычисляется по формуле:

где ℇ — это оптимизируемая функция.

Левая часть произведения под знаком суммы — это градиент, пришедший с более глубокого слоя:

а правая часть — градиент активации, который вычисляется как:

Для channel-shared варианта в формулу добавляется ещё один знак суммы:

потому как в этом случае требуется суммировать все каналы слоя.

Обновление значения параметра aᵢ производится по формуле:

в которой µ — это momentum, а ϵ — скорость обучения.

При обновлении значения параметра ai не используется L2-регуляризация (weight decay), поскольку она быстро приводит значение параметра к нулю, а это превращает PReLU в обычную ReLU.

--

--