Sigmoidレイヤを実装
def sigmoid(x): return 1 / (1 + np.exp(-x)) class Sigmoid: def __init__(self): self.y = None def forward(self, x): out = sigmoid(x) self.y = y return y def backward(self, dy): dx = dy * (1.0 - self.y) * self.y return dx
不思議な形をしたシグモイド。
二値分類問題ではシグモイド関数を使います。
恒等関数でも良いような気もするけど、非線形関数を使う事が機械学習のポイントです。
変な形をしているだけに、使い方が難しいんじゃないかと思うのです。
これも勉強を進めていけば、しっかりと使い道が分かるのようになるのだろうか??