รายละเอียด:
GPU : GTX 1080
การฝึกอบรม : ~ 1.1 ล้านภาพเป็นของ 10 คลาส
การตรวจสอบความถูกต้อง : ~ 150 ภาพที่เป็นของ 10 คลาส
เวลาต่อยุค : ~ 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"
)