Activation Function이 Sigmoid일 때 역전파를 코드로 구현해보자.
# back propagation
def forward( x,w,b) :
'''순전파'''
return w*x+b
def sigmoid(x) :
'''활성화 함수'''
return 1/(1+np.exp(-x))
def back_sigmoid(dA, z) :
'''변수 z에 대해 활성화함수인 sigmoid를 미분(역전파)할 때'''
sig = sigmoid(z)
return dA*sig*(1-sig)
def loss_function(y_pred, y_true) :
return 1/2*(y_pred-y_true)**2
x = 1
w = 3
b = 0.5
y_pred = forward(x, w, b)
y_true = 4
loss = loss_function(y_pred, y_true)
def back_propagation_loss ( x ) :
return x*(y_pred-y_true)*x
w -= back_propagation_loss(1)
forward(x,w,b)
'CODES' 카테고리의 다른 글
defaultdict (0) | 2020.03.30 |
---|---|
파이썬 class (0) | 2020.03.25 |