我正在使用 TensorFlow 训练 MobileNet_v1_1.0_224。我正在使用 TensorFlow-Slim image classification model library 中存在的 python 脚本进行训练。我的 4 个类的数据集分布如下:
normal_faces:42070
oncall_faces:13563(通话时图像中的人脸带有手机)
吸烟脸:5949
打哈欠:1630
数据集中的所有图像都是方形图像并且大于224x224
我正在使用 train_image_classifier.py 训练模型,并带有以下参数,
python train_image_classifier.py \
--train_dir=${TRAIN_DIR} \
--dataset_name=custom \
--dataset_split_name=train \
--dataset_dir=${DATASET_DIR} \
--model_name=mobilenet_v1 \
--batch_size=32\
--max_number_of_steps=25000
在训练模型后,eval_image_classifier.py 在验证集上显示出高于 95% 的准确率,但是当我导出冻结图并将其用于预测时,它的表现非常糟糕。 >
我也试过这个 notebook 但这也产生了类似的结果。
日志:Training Log
情节:Loss 和 Accuracy
这是什么原因?我该如何解决这个问题?
我在 SO 上看到过类似的问题,但没有与 MobileNets 相关的具体问题。
答案 0 :(得分:0)
您是否使用了验证集?如果是这样,验证准确度是多少? 如果您使用了验证集,则检查您是否正确进行预测的一个好方法是在验证集上运行 model.predict。