LeakyReLU関数
Leaky ReLU関数は以下のように定義されます。ここで、xは入力値、aは小さな正の定数(通常は0.01)です。

この式の意味するところは、もしxが負であれば、その値にaを掛けた値を出力し、もしxが正であれば、そのままの値を出力する、ということです。
ReLU関数の主な問題点の一つに、「死んだニューロン」問題があります。これは、ReLU関数が負の入力に対して0を返すため、学習過程であるニューロンの重みが更新されず、そのニューロンが活性化しなくなる現象を指します。
これに対して、Leaky ReLUでは負の入力に対しても微小な出力をするため、上記の問題をある程度緩和できます。そのため、Leaky ReLUはReLUの代替として、多くの深層学習モデルで使用されています。
LeakyReLU関数のグラフ
LeakyReLU関数のグラフは以下のようなコードで実装することができます。
import numpy as np
import matplotlib.pyplot as plt
def leaky_relu(x, alpha=0.1):
return np.where(x >= 0, x, alpha * x)
x = np.linspace(-10, 10, 1000)
y = leaky_relu(x)
plt.plot(x, y)
plt.title("Leaky ReLU Activation Function")
plt.xlabel("x")
plt.ylabel("Leaky ReLU(x)")
plt.grid(True)
plt.show()
