2022.12.05 - [implement_ml_models] - implement_delta(before_w)
implement_delta(before_w)
2022.12.05 - [implement_ml_models] - implement_rnn(result_w) implement_rnn(result_w) 2022.12.05 - [implement_ml_models] - implement_rnn(delta2) implement_rnn(delta2) 2022.12.04 - [implement_ml_models] - implement_rnn(delta) implement_rnn(delta) 2022.12.03
teach-meaning.tistory.com
2022.12.05 - [implement_ml_models] - implement_delta(input_w)(2)
implement_delta(input_w)(2)
2022.12.05 - [implement_ml_models] - implement_delta(input_w) implement_delta(input_w) input_w 3개의 입력, 4개의 출력의 rnn 모형, 입력의 변화량에 대한 오차 함수의 변화량을 계산하기 위해 입력의 각 값이 오차 함수
teach-meaning.tistory.com
이전 노드의 출력에 대한 가중치 업데이트 값 연산도 동일하게 수정해준다.
hidden_delta
>>>
array([[-6.01148924672637],
[-4.72593646409843],
[-6.19494552973728],
[-4.56025513330089]], dtype=object)
output
>>>
array([[0.],
[0.],
[0.],
[0.]])
rnn.before_w[0]
>>>
array([[0.67443854, 0.04859 , 0.37792503, 0.60971927],
[0.68256154, 0.37249555, 0.54094653, 0.38607249],
[0.0830565 , 0.94813373, 0.64650067, 0.99249619],
[0.6808205 , 0.53670434, 0.88575993, 0.66067123]])
d_before_w = hidden_delta * output.T
d_before_w
>>>
array([[0, 0, 0, 0],
[0, 0, 0, 0],
[0, 0, 0, 0],
[0, 0, 0, 0]], dtype=object)
이 경우 첫 번째 층의 이전 노드에 대한 입력은 0으로 생각하기 때문에 업데이트 값이 0으로 계산된다.
'implement_ml_models > RNN' 카테고리의 다른 글
implement_LSTM(forget_gate) (0) | 2022.12.13 |
---|---|
implement_LSTM(input_gate) (0) | 2022.12.13 |
implement_delta(input_w)(2) (0) | 2022.12.05 |
implement_delta(before_w) (0) | 2022.12.05 |
implement_delta(input_w) (0) | 2022.12.05 |