Что такое функция активации ReLU?
Выпрямленный линейный блок, или ReLU (Rectified Linear Unit), — одна из самых популярных функций активации в современных нейронных сетях. Она задаётся формулой \( f(x) = \max(0, x) \): для любого положительного входа функция возвращает его без изменений, а для любого отрицательного — ноль. Это простое кусочно-линейное правило вносит в сеть нелинейность, оставаясь при этом чрезвычайно дешёвым в вычислениях и легко дифференцируемым.
Как пользоваться калькулятором
Введите три значения: начальное значение x (точку, с которой стартует перебор), шаг приращения (на сколько меняется x на каждой итерации) и число повторений (сколько точек нужно сгенерировать). Инструмент вычисляет ReLU для каждого значения x, формирует полную таблицу данных (x, f(x)) и строит линейный график с характерной формой «плоско, затем вверх» и изломом в начале координат.
Разбор формулы
ReLU — это \( f(x) = \max(0, x) \), что эквивалентно правилу «x, если x > 0, иначе 0». Перебор задаётся формулой
$$ f(x_k) = \max\left(0,\; x_k\right), \quad x_k = \text{Start }x + k \cdot \text{Step}, \quad k = 0,1,\dots,\text{Count}-1 $$при k от 0 до iterations − 1, поэтому конечное значение x (endX) равно \( \text{startX} + (\text{iterations} - 1) \cdot \text{stepX} \). На всём диапазоне отрицательных входов функция остаётся равной нулю, а для положительных растёт с постоянным наклоном, равным 1.
Пример расчёта
При значениях по умолчанию startX = −5, stepX = 0,1 и iterations = 101 перебор охватывает x от −5 до \( -5 + 100 \cdot 0{,}1 = +5 \) на 101 точке включительно. При x = −2,0 получаем \( f = \max(0, -2{,}0) = 0 \). При x = 0 значение f = 0. При x = 0,1 имеем f = 0,1. При x = 2,5 — f = 2,5. При x = 5,0 — f = 5,0. Построенная кривая держится на нуле на всём отрицательном участке, а затем линейно поднимается до точки (5, 5).
Частые вопросы
Дифференцируема ли ReLU в нуле? Нет. У ReLU в точке x = 0 есть излом, поэтому в этой точке она не дифференцируема. Её производная равна 0 при x < 0 и 1 при x > 0; по соглашению производную в нуле часто принимают равной 0.
Может ли шаг быть отрицательным? Да. Отрицательный шаг ведёт перебор x в сторону уменьшения. Нулевой шаг делает все значения x равными начальному (вырожденный столбец из констант).
Почему ReLU так популярна? Для положительных входов она устраняет проблему затухающего градиента, свойственную сигмоиде и гиперболическому тангенсу, тривиальна в вычислениях и обычно даёт разреженные активации, что нередко ускоряет обучение.