세부:
GPU : GTX 1080
훈련 : 10 개 수업에 속하는 ~ 1.1 백만개의 이미지
유효성 검사 : 10 개의 클래스에 속하는 ~ 150 개의 이미지
에포크 당 시간 : ~ 10 시간
CUDA, cuDNN 및 Tensorflow (Tensorflow GPU도)를 설정했습니다.
나는 내 모델이 에포크 당 10 시간이 걸리는 복잡한 것이라고 생각하지 않습니다. 내 GPU가 문제인지 확인했지만 문제는 아닙니다.
완전히 연결된 레이어로 인해 교육 시간이 있습니까?
내 모델 :
model = Sequential()
model.add()
model.add(Conv2D(64, (3, 3), padding="same", strides=2))
model.add(Activation('relu'))
model.add(Dropout(0.25))
model.add(Conv2D(64, (3, 3), padding="same", strides=2))
model.add(Activation('relu'))
model.add(Dropout(0.25))
model.add(Conv2D(32, (3, 3)))
model.add(Activation('relu'))
model.add(MaxPooling2D(pool_size=(3, 3), strides=2))
model.add(Flatten())
model.add(Dense(256))
model.add(Activation('relu'))
model.add(Dense(4096))
model.add(Activation('relu'))
model.add(Dense(10))
model.add(Activation('softmax'))
model.summary()
opt = keras.optimizers.rmsprop(lr=0.0001, decay=1e-6)
model.compile(loss='categorical_crossentropy',
optimizer=opt,
metrics=['accuracy']
)
많은 데이터가 있기 때문에 ImageDataGenerator를 사용했습니다.
gen = ImageDataGenerator(
horizontal_flip=True
)
train_gen = gen.flow_from_directory(
'train/',
target_size=(512, 512),
batch_size=5,
class_mode="categorical"
)
valid_gen = gen.flow_from_directory(
'validation/',
target_size=(512, 512),
batch_size=5,
class_mode="categorical"
)