CVAIDL 2018-10-30
对您自己的数据进行训练
这将是一个实用的端到端指南,介绍如何使用TensorFlow Lite构建移动应用程序,该应用程序根据项目的数据集对图像进行分类。
此应用程序使用实时相机并立即对图像进行分类。TFLite应用程序比使用TensorFlow Mobile制作的应用程序更小、更快、更准确,因为TFLite专门用于在移动平台上运行神经网络。
我们将使用MobileNet模型来训练我们的网络,这将使应用程序更小。
入门
要求…
此外,打开终端并键入:
别名python = python3
现在,python3将使用python命令打开。这样可以更容易地通过复制粘贴来实现代码,而无需在输入Python后担心3。
TFLite教程包含以下步骤:
第1步:下载代码文件
让我们首先从tensorflow-for-poets GitHub下载代码。(https://github.com/googlecodelabs/tensorflow-for-poets-2)打开要下载文件夹的命令提示符并键入:
这将下载文件并在当前目录中创建一个名为tensorflow-for-poets的新文件夹。
输出
下载GitHub文件
仅供参考:下载后,您可以将文件夹的名称更改为项目名称。
信息:该文件夹包含子文件夹
scripts - 包含机器学习代码.py文件。
tf_files - 它将包含输出文件,如models - graph.pb,labels.txt
android - 包含tfmobile和TFlite的Android应用程序项目。
iOS - 包含使用xCode的iOS应用程序项目文件。
第2步:下载数据集
让我们下载一个200MB的公开数据集,其中有5种不同的鲜花可供分类。然后在tf_files文件夹中提取flower_photos.tgz,它看起来像这样:
信息- 5种不同的类别文件夹是玫瑰,雏菊,蒲公英,向日葵和郁金香。
第3步:重新制作模型
在“tensorflow-for-poets-2”文件夹中打开命令提示符并键入:
输出
这将下载预先训练的冻结图(frozen graph)mobilenet_1.0_244
下载图表
并在tf_files文件夹中创建retrained_graph.pb和retrained_labels.txt文件。
完成的结果
打开Tensorboard
在当前目录中打开另一个命令提示符,并将tensorboard指向summaries_dir:
输出
打开Tensorboard
现在,您可以在浏览器中打开6006端口以查看结果。
可视化
训练和验证
Tensorboard |交叉熵/损失(上)|精度(下)
验证的准确度高于0.90,损失低于0.4。
验证✔️
我在当前文件夹中从Internet上下载了一个随机的rose映像,并使用以下命令运行label_image。py脚本,用于使用图文件检测图像。
输出
结果为new_rose图像提供99%的准确性。
第4步:将模型转换为TFLite格式
Toco用于将文件转换为.lite格式。有关toco参数的更多详细信息,请使用toco --help
这将在tf_files目录中创建optimize_graph.lite文件。
信息:使用toco -h获取更多详细信息
--input_file已更新为--graph_def_file
--input_format不需要mobile_net图。
从这里开始,本教程分为两个部分:iOS和Android。iOS
第5步:安装Xcode Studio和测试运行
下载Xcode
使用您的Apple ID登录- Apple Developer使用您现在注册或注册的Apple ID。developer.apple.com安装Xcode
安装Cocoapods
安装TFLite Cocoapod
使用Xcode打开项目
试运行
按▶️在Xcode中启动模拟器。
第6步:运行您的应用程序
首先将训练过的文件移动到应用程序的assets文件夹中。
替换graph.lite文件。
然后是thelabels.txt文件。
现在只需单击▶️即可打开模拟器并放下图像以查看结果。
祝贺!现在,您可以在下一个价值数十亿美元的应用程序中应用相同的方法,让医生在世界农村地区无需昂贵的设备即可更快更好地工作。
Android
第5步:设置Android Studio和测试运行
有两种方法可以做到这一点:Android Studio和Bazel。我会使用AS,因为更多的人都熟悉它。
如果您尚未安装它,请转到此处并安装它:
下载Android Studio和SDK工具| Android开发者下载官方Android IDE和开发人员工具,为Android手机,平板电脑,可穿戴设备,电视和...构建应用程序developer.android.com试运行
为了确保Android Studio中的一切正常,让我们进行一次测试运行。
打开Android Studio并选择“打开现有的Android Studio项目”。
转到android / tfmobile目录。
如果一切正常,请单击BUILD> BUILD APK按钮。
单击“定位”打开包含app-debug.apk文件的文件夹。
注意:在安装应用程序之前,请打开手机中的开发者模式。
第6步:运行您的应用程序
首先将训练过的文件移动到应用程序的assets文件夹中。
替换graph.lite文件。
然后是labels.txt文件。
现在单击工具>> Build .apk文件。
安装应用程序
在您的手机上安装.apk文件,并查看重新训练的神经网络检测对象。
祝贺!现在,您可以在下一个价值数十亿美元的应用程序中应用相同的方法,让医生在世界农村地区无需昂贵设备的情况下更快更好地工作。