본문 바로가기

CODES

Back Propagation (역전파)

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