用語解説
AI/機械学習のニューラルネットワークにおけるステップ関数(Step function、単位ステップ関数:Unit step function)とは、関数への入力値が0未満の場合には常に出力値が0、入力値が0以上の場合には常に出力値が1となるような関数である。
図1に示すように、0を基点として、階段(step)状のグラフになるため、「ステップ関数」と呼ばれる。この基点は一般的に「閾値(いきち、しきい値、Threshold)」と呼ばれる。
ステップ関数は、ニューラルネットワークの基礎となっている情報処理モデル「パーセプトロン」(後日解説)の活性化関数(後日解説)として用いられていたが、「バックプロパゲーション」(後日解説)が登場してからは「シグモイド関数」(後日解説)が活性化関数として使われるようになり、最近のディープニューラルネットワークでは「ReLU関数」(後日解説)がよく使われるようになっている。
定義と数式
冒頭でも文章により説明したが、厳密に数式で表現すると次のようになる。
xが入力データで、f(x)が出力結果である。
x<0の場合は、f(x)=0となり、
x≥0の場合は、f(x)=1となる。
このように定義されるステップ関数は、発明者のオリヴァー・ヘヴィサイド氏(Oliver Heaviside、1850-1925)にちなんで、ヘヴィサイドの階段関数(Heaviside step function)と呼ばれることもある。
また、0か1の2値(binary)であることから、バイナリステップ関数(Binary step function)と呼ばれることもある。
Pythonコード
上記の数式をPythonコードの関数にするとリスト1のようになる。
def step(x):
return 1.0 * (x >= 0.0)
リスト1 ステップ関数のPythonコード例
X >= 0.0は「入力値が0以上か、そうではないか(=0未満か)」という条件を意味する。
その条件がTrue(=1)のときは、戻り値として1.0(=1.0 * (1))を返す。
また、その条件がFalse(=0)のときは、戻り値として0.0(=1.0 * (0))を返す。
Copyright© Digital Advantage Corp. All Rights Reserved.
"ステップ" - Google ニュース
February 26, 2020 at 03:00AM
https://ift.tt/39YEu78
[活性化関数]ステップ関数(Step function)とは? - @IT
"ステップ" - Google ニュース
https://ift.tt/31GGWfK
Shoes Man Tutorial
Pos News Update
Meme Update
Korean Entertainment News
Japan News Update
No comments:
Post a Comment