그래디언트 전파를 30 개의 시간 간격으로 제한하면 데이터 세트에서 가능한 모든 것을 학습하지 못할 수 있습니다 . 그러나 모델의 기능에 대한 중요한 사항을 학습하지 못하는지 여부는 데이터 세트에 따라 크게 달라집니다!
훈련 중 그라디언트를 제한하는 것은 모델이 입력 기능과 숨겨진 상태를 동화 할 수있는 창을 제한하는 것과 같습니다. 테스트시 모델을 전체 입력 시퀀스에 적용하기 때문에 모든 입력 기능에 대한 정보를 숨겨진 상태로 통합 할 수 있습니다. 문장에 대한 최종 예측을 할 때까지 정보를 보존하는 방법을 정확히 알지 못할 수도 있지만 여전히 가능한 약한 연결이있을 수 있습니다.
고려 된 예에 대해 먼저 생각하십시오. 입력에 1이 있으면 네트워크가 1을 생성하고 그렇지 않으면 0을 생성한다고 가정하십시오. 길이가 20 인 시퀀스에서 네트워크를 학습하고 그래디언트를 10 단계로 제한한다고 가정합니다. 교육 데이터 집합에 입력의 마지막 10 단계에서 1이 포함되지 않으면 네트워크는 구성의 테스트 입력에 문제가있는 것입니다. 그러나 훈련 세트에 [1 0 ... 0 0 0]과 같은 예제가 있고 [0 0 ... 1 0 0]과 같은 다른 예제가 있다면 네트워크는 " 입력의 어느 곳에서나 1 "기능.
그런 다음 감정 분석으로 돌아갑니다. 훈련하는 동안 모델에서 줄임표로 50 단어를 사용하여 "주변과 주변을 싫어합니다"와 같은 긴 음의 문장이 나온다고 가정 해 보겠습니다. 그라디언트 전파를 30 개의 시간 단계로 제한함으로써 모델은 "I hate this because"를 출력 레이블에 연결하지 않으므로이 교육에서 "I", "Hate"또는 "this" 를 선택하지 않습니다. 예. 그러나 그것은 문장의 끝에서 30 시간 단계 내에있는 단어를 선택합니다. 트레이닝 세트에 "증오"와 함께 동일한 단어가 포함 된 다른 예제가 포함 된 경우 "증오"와 음의 정서 레이블 사이의 링크를 선택할 수 있습니다. 또한 짧은 교육 사례가있는 경우 "끔찍하기 때문에 이것을 싫어합니다!"라고 말합니다. 그러면 모델에서 "증오"및 "이"기능을 대상 레이블에 연결할 수 있습니다. 이러한 교육 예제가 충분하면 모델에서 연결을 효과적으로 학습 할 수 있어야합니다.
테스트 시간에 "도마뱀에 ... 때문에 싫어요!"와 같은 또 다른 긴 문장으로 모델을 제시한다고 가정 해 봅시다. 모델의 입력은 "I hate this"로 시작하여 어떤 형태로 모델의 숨겨진 상태로 전달됩니다. 이 숨겨진 상태는 모델의 미래 숨겨진 상태에 영향을 미치기 위해 사용되므로 문장이 끝나기 전에 50 단어가있을 수 있지만 초기 단어의 숨겨진 상태는 출력에 영향을 줄 수있는 이론적 기회가 있습니다. "나는 이것을 싫어한다"와 문장의 끝 사이에 그러한 거리가 먼 샘플들을 훈련시켰다.