본문 바로가기

implement_ml_models/MLP

implement_delta(weight_update)

 

2022.11.30 - [implement_ml_models] - implement_delta

 

implement_delta

MLP 에서 노드 내의 변화량을 계산해야 하고, 이는 delta 라고 명한다. 델타는 각 층의 각 유닛 마다 정의된다. 유닛의 변화량에 대한 오차 함수의 변화량으로 여기에 가중치에 대한 유닛의 변화량

teach-meaning.tistory.com

델타를 통해 가중치 변화에 따른 노드 입력의 변화량을 통해 가중치 파라미터 업데이트 량을 계산할 수 있다.

가중치 변화량에 따른 노드 입력의 변화량의 값은 해당 가중치가 연결된 이전 층 노드의 출력값이다. 

hidden_output
>>>
array([[1.00000000000000],
       [1.00000000000000],
       [1.00000000000000]], dtype=object)
       
hidden_w_diff = hidden_output * delta.T
hidden_w_diff
>>>
array([[-0.963398472883261, -6.09496993108835],
       [-0.963398472883261, -6.09496993108835],
       [-0.963398472883261, -6.09496993108835]], dtype=object)

(i,j) 행렬이 반환, 은닉층의 i번째 노드에서 출력층의 j 번째 노드로 향하는 가중치 업데이트 양을 뜻한다.

 

'implement_ml_models > MLP' 카테고리의 다른 글

implement_DNN_generalization(1)  (0) 2022.12.02
implement_delta(delta_update)  (0) 2022.12.02
implement_activation(sigmoid)  (0) 2022.12.01
implement_dense(2)  (0) 2022.12.01
implement_delta  (0) 2022.11.30