imagedatagenerator 코드
from keras.preprocessing.image import ImageDataGenerator
# 이미지 데이터 경로
train_data_dir = 'train/'
validation_data_dir = 'validation/'
# 이미지 데이터 증강 파라미터 설정
train_datagen = ImageDataGenerator(
rotation_range=20,
width_shift_range=0.2,
height_shift_range=0.2,
shear_range=0.2,
zoom_range=0.2,
horizontal_flip=True,
fill_mode='nearest')
# 검증 데이터 증강 파라미터 설정
validation_datagen = ImageDataGenerator()
# 이미지 데이터 로드 및 증강
train_generator = train_datagen.flow_from_directory(
train_data_dir,
target_size=(150, 150),
batch_size=32,
class_mode='binary')
validation_generator = validation_datagen.flow_from_directory(
validation_data_dir,
target_size=(150, 150),
batch_size=32,
class_mode='binary')
# 모델 훈련
model.fit_generator(
train_generator,
steps_per_epoch=2000,
epochs=50,
validation_data=validation_generator,
validation_steps=800)
위 코드에서는 ImageDataGenerator
클래스를 사용하여 이미지 데이터를 증강하고 있습니다. 증강 파라미터들을 조정하여 이미지를 회전, 이동, 변형, 확대/축소하고 수평으로 뒤집는 등 다양한 방식으로 증강할 수 있습니다. 이렇게 증강된 이미지 데이터를 사용하여 모델을 훈련하게 되면, 더 다양한 상황에서의 이미지를 처리할 수 있는 모델을 학습할 수 있습니다.
이 코드를 사용하면 딥러닝 모델을 훈련할 때 원본 이미지 데이터의 다양성을 높일 수 있어서 과적합을 줄이고 성능을 높일 수 있습니다.