3.4 总结

本章首先简要介绍了微调神经网络的基本原理,接着详细介绍了如何使用TensorFlow Slim微调预训练模型,包括数据准备、定义新的datasets文件、训练、验证、导出模型并测试单张图片等。如果读者需要训练自己的数据,可以参考从第3.2节开始的步骤,修改对应的代码,来打造自己的图像识别模型。

拓展阅读

✪ TensorFlow Slim是TensorFlow中用于定义、训练和验证复杂网络的高层API。官方已经使用TF-Slim定义了一些常用的图像识别模型,如AlexNet、VGGNet、Inception模型、ResNet等。本章介绍的Inception V3模型也是其中之一,详细文档请参考:https://github.com/tensorflow/models/tree/master/research/slim

✪ 在第3.2节中,将图片数据转换成了TFRecord文件。TFRecord是TensorFlow提供的用于高速读取数据的文件格式。读者可以参考博文(http://warmspringwinds.github.io/tensorflow/tf-slim/2016/12/21/tfrecords-guide/)详细了解如何将数据转换为TFRecord文件,以及如何从TFRecord文件中读取数据。

✪ Inception V3是Inception模型(即GoogLeNet)的改进版,可以参考论文Rethinking the Inception Architecture for Computer Vision了解其结构细节。