ヘヴィサイドの階段関数
#階段関数 #数学
ヘヴィサイドの階段関数 (Heaviside step function) は、引数が0より小さければ0・0より大きければ1を返すような階段関数
Oliver Heavisideによる
$ H(x) = \left\{ \begin{aligned} & 0 & (x < 0) \\ & c & (x = 0) \\ & 1 & (x > 0) \end{aligned} \right.
$ x = 0のときの値$ cについては、状況によって0が使われたり・$ \frac{1}{2}が使われたり・1が使われたり
$ c = 1のとき、Unit step function = 単位ステップ関数と呼ぶ
そもそも積分をする場合はあんまり定義することに意味がなかったり
CG文脈で用いる場合、しばしば$ \chi^+(x)と表記される
この場合は$ c = 0なのかなあ
機械学習の分野においては、シグモイドやRectifierが出てくるまでは、活性化関数として使われていた
https://mathworld.wolfram.com/HeavisideStepFunction.html
Desmos
https://gyazo.com/b3fa27780c5f3526670ac59386c126d8
https://www.desmos.com/calculator/vb2htblww9
GLSL
GLSLにおいて、 step(edge, x) が実装されている
edge == x のとき、返り値は 1.0 となる
https://registry.khronos.org/OpenGL-Refpages/gl4/html/step.xhtml