모두를 위한 딥러닝

[DL] 모두를 위한 딥러닝 12-5 Dynamic RNN

승무_ 2022. 4. 25. 18:21

 

고정 길이의 데이터가 아닌 가변 길이의 데이터를 넣기 위한 기존 방법은

빈 자리에 Pad라는 특별한 기호를 사용하여 신경망이 이 부분은 없는 것으로 스스로 판단하길 유도하였다.

하지만 이 자리에도 가중치값이 존재하기 때문에 Loss 함수를 최적화 하기 어렵게 만들었다.

 

이를 해결하기 위해 Tensorflow는 각각 배치에 sequence길이를 입력하게 하여 출력값도 이와 동일한 길이를 출력하게 하였다. (나머지 부분은 0으로 만든다)

sequence길이에 따라 출력되는 결과를 살펴보면,

설정한 길이 외의 결과값은 모두 0이 된 것을 볼 수 있다.