주 메뉴 열기
대문
임의의 문서로
로그인
설정
Pywiki 소개
면책 조항
Pywiki
검색
바뀜
← 이전 편집
다음 편집 →
Keras:LSTM
(편집)
2022년 1월 28일 (금) 15:24 판
1,268 바이트 추가됨
,
2022년 1월 28일 (금) 15:24
잔글
→loss : nan 으로 나오는 경우
1번째 줄:
1번째 줄:
== 개요 ==
== 개요 ==
케라스로 LSTM 구현해보기.
케라스로 LSTM 구현해보기.
+
+
RNN과 거의 동일하다.(옵션이나 발생하는 에러도 유사.)
== 설계 ==
== 설계 ==
33번째 줄:
35번째 줄:
=== loss : nan 으로 나오는 경우 ===
=== loss : nan 으로 나오는 경우 ===
−
사용하는 데이터에 하나라도 nan 값이 있으면 이렇게 나온다..
.
dataframe의 dropna() 따위로 처리한다.
+
이거 정말.. 골때리는 에러다.
+
+
==== 원인 ====
+
한 번 발생하면 계속 발생하는데... 원인 찾기가 너무 힘들다..
+
{| class="wikitable"
+
!예상되는 원인
+
!설명
+
!해결방안
+
|-
+
|사용하는 데이터에 nan이 섞인 경우
+
|
사용하는 데이터에 하나라도 nan 값이 있으면 이렇게 나온다.
+
학습을 시작하자마자 loss : nan 이 나오는 경우이다
.
+
|
dataframe의 dropna() 따위로 처리한다.
.
+
|-
+
|로스값이 너무 커서
+
|로스값이 너무 커지면 학습값이 너무 커져서 어느 순간 발산해버릴 때가 있다.
+
|모델의 크기를 줄이거나..(근데, 로스가 1자리 숫자여도 nan이 발생한다..)
+
학습률을 낮추거나.
+
|-
+
|
+
|
+
|
+
|-
+
|
+
|
+
|
+
|}
+
{| class="wikitable"
+
!해볼 수 있는 시도
+
!설명
+
|-
+
|dropout 값을 낮춘다.
+
|
+
|-
+
|L1, L2 규제를 낮추거나 없앤다.
+
|
+
|-
+
|옵티마이저를 바꾼다.
+
|대부분 Adam으로 바꾸라는 조언이 많은데.. 이걸 바꿔도 안없어지는 경우가 많다.)
+
|-
+
|데이터 노멀라이징.
+
|이걸 했는데도 발생하는 경우는 어찌할꼬....
+
|-
+
|활성화함수 바꾸기.
+
|적절한 활성화 함수인데도 생긴다. 어찌할꼬...
+
|-
+
|배치사이즈 늘리기.
+
|데이터의 배치사이즈를 크게 해서 한번에 학습되는 량이 많게끔.
+
|}
=== ValueError: Input 0 of layer lstm_1 is incompatible with the layer: expected... ===
=== ValueError: Input 0 of layer lstm_1 is incompatible with the layer: expected... ===
Sam
사무관
,
인터페이스 관리자
,
관리자
, 교사
편집
1,408
번