我正在使用colab 25Ram来实现人类动作识别,我的所有模型总是崩溃,因为我使用了所有内存(即使它们不是很大)。
我现在尝试使用VGG16的转移学习,我从真实模型开始,只是添加了模型的TimeDistributed以使其与我的数据匹配,并添加了一个Dense层来检查该工作是否正常,并且我的colab会话也崩溃了。
video = Input(shape=(350, 288, 384, 3))
cnn_base = VGG16(input_shape=(288, 384, 3), weights="imagenet", include_top=False)
cnn_out = GlobalAveragePooling2D()(cnn_base.output)
cnn = Model(inputs=cnn_base.input, outputs=cnn_out)
cnn.trainable = False
x = TimeDistributed(cnn)(video)
x = Dense(1, activation="sigmoid")(x)
model = Model([video], x)
model.summary()
model.compile(optimizer='SGD', loss='binary_crossentropy',metrics=["accuracy"])
model.fit(x=X, y=y, batch_size=2, epochs=1)
所有建议都会对我有所帮助,因为colab上已经存在OOM问题2个星期了。谢谢