LSTM에서 숨겨진 레이어 수와 메모리 셀 수를 선택하는 방법은 무엇입니까?


28

LSTM 기반 RNN의 숨겨진 레이어 수와 크기를 선택하는 방법에 대한 기존 연구를 찾고 있습니다.

이 문제를 조사하는 기사, 즉 몇 개의 메모리 셀을 사용해야합니까? 나는 그것이 응용 프로그램과 모델이 어떤 맥락에서 사용되는지에 전적으로 달려 있다고 가정하지만, 연구는 무엇을 말합니까?

답변:


15

귀하의 질문은 매우 광범위하지만 다음은 몇 가지 팁입니다.

피드 포워드 네트워크에 대해서는 다음 질문을 참조하십시오 .

@doug의 대답 이 저에게 효과적 이었습니다. 지도 학습 문제를 해결하는 데 도움이되는 추가 규칙이 있습니다. 과적 합을 초래하지 않는 숨겨진 뉴런의 수의 상한은 다음과 같습니다.

Nh=Ns(α(Ni+No))

NiN o N s α a l p h a N s * ( N i + N o ) α = 입력 뉴런의 수. = 출력 뉴런의 수 = 훈련 데이터 세트의 샘플 수. = 임의의 스케일링 계수 보통 2-10. 다른 사람들은 를 5와 10 사이의 값으로 설정하는 것이 좋지만 2의 값은 종종 과적 합없이 작동한다는 것을 알았습니다. 이것에 의해 설명 된 바와 같이 우수한 NN 디자인 텍스트 , 당신은 당신의 모델 (의 무료 매개 변수의 수를 제한 할 정도 데이터의 자유도의 작은 부분 또는 제로가 아닌 무게의 수). 데이터의 자유도는 샘플 수 * 각 샘플의 자유도 (치수) 또는NoNsα
alphaNs(Ni+No) (모두 독립적이라고 가정). 따라서 는 모델의 일반적인 정도 또는 과적 합을 방지하려는 정도를 나타내는 방법입니다.α

자동화 된 절차의 경우 알파 2 (모델보다 훈련 데이터에서 2 배의 자유도)로 시작하고 훈련 데이터 오류가 교차 검증보다 훨씬 작 으면 최대 10까지 작동합니다. 데이터 세트.

특히 LSTM 에서이 정보 를 확인하고 싶을 수 있습니다 .

그러나 요점 은 사용해야 할 숨겨진 노드의 양에 대한 규칙이 없으며 시행 착오를 통해 각 사례에 대해 알아 내야 할 것 입니다.


7

LSTM의 숨겨진 계층 수와 메모리 셀 수는 항상이 LSTM을 적용하려는 응용 프로그램 도메인과 컨텍스트에 따라 다릅니다.

숨겨진 레이어. 숨겨진 레이어를 도입하면 네트워크가 비선형 동작을 나타낼 수 있습니다.

숨겨진 단위의 최적 수는 입력 수보다 쉽게 ​​작을 수 있습니다. 입력 수에 N을 곱하는 것과 같은 규칙은 없습니다 ... 훈련 예제가 많은 경우 여러 숨겨진 단위를 사용할 수 있지만 때로는 2 개의 숨겨진 유닛은 적은 데이터로 가장 잘 작동합니다. 일반적으로 사람들은 간단한 작업을 위해 하나의 숨겨진 레이어를 사용하지만 요즘 심층 신경망 아키텍처에 대한 연구에 따르면 많은 숨겨진 레이어가 어려운 개체, 필기 문자 및 얼굴 인식 문제에 유리할 수 있습니다.

I assume it totally depends on the application and in which context the model is being used.


5
비선형 성은 비선형 활성화 기능을 사용하기 때문입니다. 레이어 수는 NN의 표현력 만 증가시킵니다. 이 답변을 수정해야합니다. 선형 함수의 조합은 여전히 ​​선형 함수입니다 (따라서 입력의 선형 조합 만 수행하는 여러 레이어가있는 경우 이러한 레이어의 조합은 여전히 ​​선형 임).
nbro

4

일반적으로 LSTM에서 레이어 수 또는 메모리 셀 수를 결정하는 방법에 대한 지침은 없습니다.

LSTM에 필요한 레이어 및 셀 수는 문제의 여러 측면에 따라 달라질 수 있습니다.

  1. 데이터 세트 의 복잡성 특징의 양, 데이터 포인트의 수 등

  2. 데이터 생성 프로세스 데이터 생성 프로세스가 어떻게 중요한 역할을하는지에 대한 다음 예.

Ex-잘 이해 된 경제의 GDP 예측과 비교 한 유가 예측. 후자는 전자보다 훨씬 쉽다. 따라서 유가를 예측하려면 GDP에 비해 동일한 정확도로 예측하기 위해 더 많은 수의 LSTM 메모리 셀이 필요할 수 있습니다.

  1. 사용 사례에 필요한 정확도 메모리 셀 수는 이에 따라 크게 달라집니다. 최첨단을이기는 것이 목표라면 일반적으로 더 많은 LSTM 셀이 필요합니다. 보다 적은 수의 LSTM 셀이 필요한 합리적인 예측을 제시한다는 목표와 비교하십시오.

LSTM을 사용하여 모델링 할 때 다음 단계를 따릅니다.

  1. 2 개 또는 3 개의 메모리 셀이있는 단일 숨겨진 레이어를 사용해보십시오. 벤치 마크와 비교하여 성능을 확인하십시오. 시계열 문제이면 일반적으로 고전적인 시계열 기술을 벤치 마크로 예측합니다.

  2. 메모리 셀 수를 늘리십시오. 성능이 크게 향상되지 않으면 다음 단계로 넘어갑니다.

  3. 네트워크를 깊게 만들기 시작하십시오. 즉 적은 수의 메모리 셀로 다른 레이어를 추가하십시오.

옆으로 :

그 손실 함수의 글로벌 최소값에 도달하고 최고의 하이퍼 파라미터를 조정하기 위해 헌신 할 수있는 노동량에는 제한이 없습니다. 따라서 모델링의 최종 목표에 초점을 두는 것이 최대한 정확도를 높이는 것이 아니라 전략이어야합니다.

대부분의 문제는 2-3 개의 네트워크 계층을 사용하여 처리 할 수 ​​있습니다.


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