Что означает термин насыщающие нелинейности?


30

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

ненасыщенная нелинейность f(x)=max(0,x).

потому что это было быстрее тренироваться. В этой статье они, по-видимому, ссылаются на насыщающие нелинейности как на более традиционные функции, используемые в CNN, сигмоидальной и гиперболической касательной функциях (то есть f(x)=tanh(x) и f(x)=11+ex=(1+ex)1как насыщающий).

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


Я также нашел этот ответ очень полезным.
откровенно

Ответы:


26

Интуиция

Насыщающая функция активации сжимает вход.


Определения

  • f(|limzf(z)|=+)(|limz+f(z)|=+)
  • f насыщает, если не ненасыщен.f

Эти определения не являются специфическими для сверточных нейронных сетей.


Примеры

Функция активации выпрямленной линейной единицы (ReLU), которая определяется как является насыщающей, потому что :f(x)=max(0,x)limz+f(z)=+

введите описание изображения здесь

Функция активации сигмовидной кишки, которая определяется как , насыщает, потому что она сдавливает действительные числа в диапазоне между :f(x)=11+ex[0,1]

введите описание изображения здесь

Функция активации tanh (гиперболический тангенс) насыщает, поскольку она сдавливает действительные числа в диапазоне от :[1,1]

введите описание изображения здесь

(цифры из CS231n , лицензия MIT)


1
ах, приятно имеет смысл! Я знаю, что это не был мой первоначальный вопрос, но что это свойство важно в контексте ML и CNN?
Чарли Паркер,

Для ANN следует избегать наличия одного блока с большим выходом, который слишком сильно влияет на выходной уровень ANN.
Франк Дернонкур

Какая разница между загаром и сигмоидом? они оба раздавили числа в закрытом диапазоне! Я не понимаю, можете ли вы разработать этот абит больше? Я немного плохо в математике. (кстати, я иду с точки зрения CNN)
Рика

@FranckDernoncourt Вы имели в виду насыщение для функции активации Тан? Я думаю, что есть опечатка? :)
CoderSpinoza

1
@tenCupMaximum: насыщать означает заполнить до точки, где больше не может быть добавлено. В контексте насыщающей функции это означает, что после определенной точки любое дальнейшее увеличение входа функции больше не приведет к (значительному) увеличению ее выхода, которое (почти) достигло своего максимального значения. Функция в этот момент «полностью заполнена», так сказать (или насыщена ).
Рубен ван Берген

0

Наиболее распространенными функциями активации являются LOG и TanH. Эти функции имеют компактный диапазон, что означает, что они сжимают нейронный отклик в ограниченное подмножество действительных чисел. LOG сжимает входы до выходов между 0 и 1, TAN H между -1 и 1. Эти функции отображают ограничивающее поведение на границах.

На границе градиент выхода относительно входа ∂yj / ∂xj очень мал. Таким образом, градиент маленький, следовательно, небольшие шаги к конвергенции, следовательно, больше времени, чтобы сходиться.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.