까먹으면 적어두자

nan 혹은 말도 안되는 loss 본문

인공지능

nan 혹은 말도 안되는 loss

whiteglass 2021. 4. 6. 15:40

문제

loss값이 말도 안되게 높거나 nan이 나옴

 

소스일부

x = model.output
x = Dense(4096, name="fc1", activation="relu")(x)
x = Dropout(0.5)(x)
x = Dense(4096, name="fc2", activation="relu")(x)
x = Dropout(0.5)(x)
x = Dense(365, activation='softmax', name='softmax')(x)
model = Model(model.input, x)
model.summary()


epoch=nepoch
learning_rate = 0.001
momentum = 0.9
sgd = optimizers.SGD(lr=learning_rate, momentum=momentum,  nesterov=False)

제시된 원인

1. learningrate가 너무 높다

2. input data에 nan이 껴있다.

3. output size와 데이터가 불일치한다.

4. log(0)이 어디선가 수행되고 있다.

 

내 원인

1. learningrate가 너무 높다

모델 훈련에서 0.01은 너무 높은 값이라고 한다.

보통 쓰는 값이 0.001이고 더 낮추는 것도 가능.

 

해결방법

lr 을 0.001로 수정

반응형

'인공지능' 카테고리의 다른 글

Keras에서 GPU 제대로 쓰기  (0) 2021.04.06
PyTorch 모델과 state_dict - 1  (0) 2021.04.06
우분투에서 Cuda 버전 다운그레이드  (1) 2021.03.26
Comments