L2 정규화 기능이있는 RNN은 학습을 중지합니다


10

양방향 RNN을 사용하여 불균형 발생 이벤트를 감지합니다. 긍정적 클래스는 부정적인 클래스보다 100 배 적습니다. 정규화를 사용하지 않는 동안 기차 세트에서 100 % 정확도를 확인하고 유효성 검사 세트에서 30 %를 얻을 수 있습니다. 나는 l2 정규화를 켜고 결과는 학습 시간이 길지 않고 기차 세트에서 30 % 정확도이며 유효성 검사 세트에서 100 % 정확도입니다.

내 데이터가 너무 작아서 실험을 위해 기차 세트를 이전에 사용하지 않은 테스트 세트와 병합했습니다. 상황은 내가하지 않은 l2 정규화를 사용하는 것과 같습니다. train + test 및 validation에서 30 %의 정확도를 얻습니다.

언급 된 실험에서 128 개의 숨겨진 단위와 80 개의 시간 단계를 사용하여 숨겨진 단위의 수를 256 개로 늘리면 train + test 세트에 다시 적합하여 100 % 정확도를 얻지 만 유효성 검사 세트에서는 여전히 30 % 만 얻을 수 있습니다.

하이퍼 파라미터에 대한 많은 옵션을 시도했지만 거의 결과가 없습니다. 가중 교차 엔트로피가 문제를 일으키는 원인이 될 수 있습니다. 주어진 실험에서 양수 클래스의 가중치는 5입니다. 더 큰 가중치를 시도 할 때 결과는 정확도의 약 20 % 정도 더 나빠질 수 있습니다.

나는 LSTM과 GRU 셀을 시도했지만 아무런 차이가 없었습니다.

내가 얻은 최고의 결과. 256 개의 숨겨진 단위로 2 개의 숨겨진 레이어를 시도했는데 약 3 일의 계산과 8GB의 GPU 메모리가 필요했습니다. l2 정규화가 켜져 있지만 그렇게 강력하지 않은 동안 다시 과적 합을 시작하기 전에 약 40-50 %의 정확도를 얻었습니다.

나는 Adam 최적화 프로그램을 사용하지만 다른 사람들은 잘 작동하지 않았습니다. 상태 머신을 사용하는 동안 90 %의 정확도를 얻을 수 있기 때문에 내가 가진 기능으로 충분합니다. 이 상태 머신에서 주요 기능은 다른 기능 속성을 기반으로 합산 및 임계 값이며 가변 길이는 때로는 10, 때로는 20 타임 스탬프이며 기능에 대해 이야기합니다.

이 상황에서 무엇을해야하는지에 대한 일반적인 지침이 있습니까? 나는 아무것도 찾을 수 없었다.

답변:


11

Bengio 등의 기사 " 재귀 신경 네트워크 훈련의 어려움에 대하여 "는 L2 정규화가 RNN 성능을 저하시킬 수있는 이유에 대한 힌트를 제공합니다. 본질적으로, RNN 세포를 정규화하는 L1 / L2는 또한 시간을 통해 정보를 배우고 유지하는 세포의 능력을 손상시킨다.

반복 가중치에 L1 또는 L2 페널티를 사용하면 그라디언트 폭발에 도움이 될 수 있습니다. 가중치가 가장 큰 특이 값 인 작은 값으로 초기화되었다고 가정λ1아르 자형이자형 L1 / L2 항은 훈련 기간 동안이를 보장 할 수 있습니다. λ11보다 작게 유지 되며이 정권에서 그라디언트는 폭발 할 수 없습니다. 이 접근 방식은 모델을 삽입 할 때 모델에 삽입 된 모든 정보가 기하 급수적으로 빠른 단일 지점 유인 자로 제한합니다. 이것은 모델이 생성기 네트워크를 배우는 것을 막거나 장기 메모리 추적을 나타낼 수 없습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.