prediction = Dense(8, activation = 'softmax')(x)
model.compile(
loss = 'categorical_crossentropy',
optimizer = 'adam',
metrics = ['accuracy']
)
train_datagen = ImageDataGenerator(
rescale = 1./255,
shear_range = 0.2, # 이미지 기울기
zoom_range = 0.2, # 이미지 일부 확대
horizontal_flip = True # 가로 반전
)
test_datagen = ImageDataGenerator(rescale = 1./255)
https://colab.research.google.com/drive/1Hu24Zm2RsB6J1wVN1PvXJoUP-P29M7Qy?usp=drive_link
Data augmentation 적용하지 않은 경우
Data augmentation 적용한 경우
https://colab.research.google.com/drive/1ptKKKnmrgBhE33YWLJuw3pLgTNPyFLcG?usp=drive_link
Data augmentation 적용하지 않은 경우
Data augmentation 적용한 경우
criterion = nn.CrossEntropyLoss()
optimizer = optim.SGD(resnet_pt.parameters(),
lr=0.001, momentum=0.9, weight_decay = 0.0002)
https://colab.research.google.com/drive/166OS0mkbaMQAopxf7xT7OKzam11zqs4N?usp=drive_link
이미지 정규화 하지 않은 경우
이미지 정규화 적용한 경우
- test loss는 갈수록 높아진다..
https://colab.research.google.com/drive/1l860F2jt_4u9JeAXOObgfoLsNbSF8h59?usp=drive_link
이미지 정규화 하지 않은 경우
이미지 정규화 적용한 경우
- 큰 차이는 없지만, 정규화 했을 때 성능이 조금 더 높다.
이미 학습되어 있는 모델을 사용했지만 비교적 성능이 괜찮았던 모델은 Pytorch로 구현했던 ResNet50이다. 같은 모델이여도 이미지 증강이나 이미지 정규화로 결과가 달라졌다.