如何使用 Tensorflow 在 70k 图像上进行训练
How to train on 70k images using Tensorflow
我是张量流和机器学习的新手。
我有一组 55k 图像的训练集,分为 40 个不同的类别。有些类别有大约 2000 张图像,而其他类别有大约 20k 张图像。
每张图片的分辨率为 1080x1440。
我正在使用 tensorflow inceptionV3 Imagenet 重新训练这些图像,但我得到的结果并不好。该程序无法正确分类图像。在测试集的几乎所有图像中,预期标签的准确性都非常低。
对于再训练,我的命令是 -
python retrain.py --image_dir=train_images --how_many_training_steps=4000 --output_graph=output_graph.pb --output_labels=output_labels.txt --bottleneck_dir=bottlenecks --saved_model_dir=saved_models
我没有使用其他参数,例如 缩放、裁剪、测试批量大小、验证批量大小 等,因为我不熟悉如何使用它们。
对于标签,我的命令是 -
python label_image.py --graph=output_graph.pb --labels=output_labels.txt --input_layer=Placeholder --output_layer=final_result --image=51.jpg
有人可以帮助我了解如何使用这些输入参数以获得最佳结果吗?
提前致谢!
这个问题非常广泛,但有几件事。
我建议将 Keras 与 TensorFlow 后端一起使用,因为抽象可以更容易地理解正在发生的事情。在使用 Keras 框架时,您还可以找到大量示例。
Keras 有一些实用程序 类 可以帮助加载无法放入内存的大量数据。许多 类 预测使用默认的 ImageDataGenerator 可能是不切实际的,因为 ImageDataGenerator 从图像文件所在的目录获取标签。 (意味着 50 类 你需要一个包含 50 个子文件夹的训练数据文件夹以及包含 50 个子文件夹的测试数据文件夹。如果你正在进行交叉验证,则需要复制这些文件夹。)
更多信息在这里:
https://blog.keras.io/building-powerful-image-classification-models-using-very-little-data.html
- 如果您不制作文件夹,那么您需要制作自己的生成器来加载文件以及 returns 这些文件的标签。
对于这种情况,我建议看一下:
https://stanford.edu/~shervine/blog/keras-how-to-generate-data-on-the-fly.html
我是张量流和机器学习的新手。 我有一组 55k 图像的训练集,分为 40 个不同的类别。有些类别有大约 2000 张图像,而其他类别有大约 20k 张图像。 每张图片的分辨率为 1080x1440。
我正在使用 tensorflow inceptionV3 Imagenet 重新训练这些图像,但我得到的结果并不好。该程序无法正确分类图像。在测试集的几乎所有图像中,预期标签的准确性都非常低。
对于再训练,我的命令是 -
python retrain.py --image_dir=train_images --how_many_training_steps=4000 --output_graph=output_graph.pb --output_labels=output_labels.txt --bottleneck_dir=bottlenecks --saved_model_dir=saved_models
我没有使用其他参数,例如 缩放、裁剪、测试批量大小、验证批量大小 等,因为我不熟悉如何使用它们。
对于标签,我的命令是 -
python label_image.py --graph=output_graph.pb --labels=output_labels.txt --input_layer=Placeholder --output_layer=final_result --image=51.jpg
有人可以帮助我了解如何使用这些输入参数以获得最佳结果吗?
提前致谢!
这个问题非常广泛,但有几件事。
我建议将 Keras 与 TensorFlow 后端一起使用,因为抽象可以更容易地理解正在发生的事情。在使用 Keras 框架时,您还可以找到大量示例。
Keras 有一些实用程序 类 可以帮助加载无法放入内存的大量数据。许多 类 预测使用默认的 ImageDataGenerator 可能是不切实际的,因为 ImageDataGenerator 从图像文件所在的目录获取标签。 (意味着 50 类 你需要一个包含 50 个子文件夹的训练数据文件夹以及包含 50 个子文件夹的测试数据文件夹。如果你正在进行交叉验证,则需要复制这些文件夹。)
更多信息在这里:
https://blog.keras.io/building-powerful-image-classification-models-using-very-little-data.html
- 如果您不制作文件夹,那么您需要制作自己的生成器来加载文件以及 returns 这些文件的标签。
对于这种情况,我建议看一下:
https://stanford.edu/~shervine/blog/keras-how-to-generate-data-on-the-fly.html