고려사이버대학교/Keras
[케라스 6주차] 소규모 데이터셋으로 데이터 부풀리기
꿈돌이.
2022. 4. 9. 23:21
오늘은 케라스 6주차로 소규모 데이터셋을 통해 효율적인 학습을 알아보려고 한다. 딥러닝을 적용하고 싶지만, 실제 학습할 때는 데이터셋 확보가 어렵다. 그럴 경우 데이터셋을 임의로 만들거나 이미 잘 만들어진 모델을 활용할 수 없는지 알아보자.
1. 데이터 부풀리기와 사전 훈련된 신경망 사용
데이터 부풀리기
rotation_range = 90
- 지정된 각도 범위내에서 임의로 원본 이미지를 회전시킴
- 단위는 도이며, 정수형임
- 예를 들어, 90이라면 0~90도 사이에 임의의 각도를 회전시킴
width_shift_range = 0.1
- 지정된 수평방향 이동 범위내에서 임의로 원본이미지를 이동시킴
- 수치는 전체 넓이의 비율(실수)로 나타냄
- 예를 들어 0.1이고 전체 넓이가 100이면, 10픽셀 내외로 좌우 이동시킴
height_shift_range = 0.1
- 지정된 수직방향 이동 범위내에서 임의로 원본이미지를 이동시킴
- 수치는 전체 높이의 비율(실수)로 나타냄
- 예를 들어 0.1이고 전체 높이가 100이면, 10픽셀 내외로 상하 이동시킴
shear_range = 0.5
- 밀림 강도 범위내에서 임의로 원본이미지를 변형시킴
- 수치는 시계 반대 방향으로 밀림 강도를 라디안으로 나타냄
- 예를 들어 0.5이라면, 0.5라이안 내외로 시계 반대 방향으로 변형시킴
horizontal_flip = True
수평방향으로 뒤집기를 함
vertical_flip = True
수직방향으로 뒤집기를 함