Skip to main content

KTDEVX

【C言語】ReLU関数の実装

Table of Contents

ReLU関数は、機械学習やニューラルネットワークなどの分野でよく使用される関数です。ランプ関数とも言います。

ここでは、C言語でReLU関数を実装する方法について、解説します。

# ReLU関数とは

ReLU関数は、ニューラルネットワークにおいて最も一般的に使われる活性化関数の一つです。この関数は、入力が 0 以下の場合は出力が 0 で、0 より大きい場合は入力をそのまま出力します。

具体的には、ReLU関数は以下の式で表されます。

f(x)=max(0,x)

ここで、 x は入力値であり、 f(x) はReLU関数の出力値です。

ReLU関数

ReLU関数は、シンプルで計算が効率的であることが特徴です。ニューラルネットワークにおいて非線形な特徴マップを生成することができるため、深層学習において広く使用されています。

# ReLU関数の実装

以下に、ReLU関数の実装例を示します。

double relu(double x)
{
    return (x > 0.0) ? x : 0.0;
}

relu関数は、引数として x を受け取り、ReLU関数の計算結果を戻り値として返します。