专栏首页ATYUN订阅号使用Tensorflow Lite在Android上构建自定义机器学习模型

使用Tensorflow Lite在Android上构建自定义机器学习模型

机器学习有许多用处,并提供了一个充满未知性的世界。然而,有些人可能会退缩,认为它太难了,其实并不是这样的。使用TensorFlow Lite并不一定都是机器学习专家。下面给大家分享我是如何开始在Android上构建自己的定制机器学习模型的。

移动应用市场正在快速发展。前任苹果CEO乔布斯说出“万物皆有应用”这句话时,人们并没有把它当回事。然而,从移动应用的消费方式来看,你不仅有一个适用于所有东西的应用,你的应用往往还会跟随最新的趋势发展。

还记得钢铁侠的助手贾维斯吗?在为数字时代开发Android移动应用程序时,机器学习是不可多得的机会。现在能够使用神经网络为你提供服务的只有像苹果sir一样的语音助手。随着机器学习的发展,当你在现实生活中有一个和贾维斯非常相似的私人助理时,你并不会感到惊讶。机器学习将把用户的体验提升到了另一个层次。

虽然你听到了许多关于机器学习的好处,但是在移动应用程序开发和机器学习之间仍然存在一些差距。Tensorflow Lite旨在缩小这一差距,使机器学习更容易融入其中。更重要的是,你甚至不需要成为Tensorflow Lite或机器学习领域的专家,就可以把它们运用到你开发的Android或iOS应用程序中。

TensorFlow的工作原理

Firebase提供的全新的ML工具包包含一系列API,是把机器学习运用到应用程序开发的一种有效的方法。这些API的范围包括从人脸到图像的一系列检测,而有些API也可以在离线模式下访问。

然而,ML工具包并不能进行特异性鉴别,它无法帮助应用程序识别同一产品的不同类型。所以ML kit和TensorFlow Lite的组合更适用于你的移动应用程序开发工作。使用这种组合是为了简化应用程序的开发过程,完善应用程序的功能。

如何使用TensorFlow Lite

要使用TensorFlow lite定制Android应用程序解决方案,您需要遵循以下几个步骤。

步骤 1

在这里,您要考虑应用程序的先决条件,并确保它们得到了处理。除了TensorFlow Lite,还应该确保安装了PILLOW来运行应用程序。

pip安装-升级“tensorflow==1.7。pip install PILLOW

您甚至可以使用GitHub代码并复制它,以防安装无法使用上面提到的代码工作。

步骤2

下一步是收集数据。例如,你想把电视根据品牌和大小进行分类,那么您需要一个培训模型来帮助将数据传输到应用程序。您需要从可靠的源下载数据集,确保你有足够的培训数据,这将帮助你做出有意义的分析。

步骤3

这一步是将可用数据转换为应用程序可以连接的高质量图像的步骤。你需要采用特定的体系结构模型,把数据转换为可以输入应用程序的图像。

两种最流行的架构包括MobileNet_2.0和Inception V3。

使用GitHub上的两种体系结构,您可以很容易地获得重新培训现有模型所需的脚本。您可以将模型转换为可以使用这些代码连接的图像。

步骤4

这一步是使用tflite_convert命令将模型转换为TensorFlow lite。转换器可以将你在前面步骤中获得的TensorFlow图优化为移动版本。除此之外,你还将获得一些存储在txt文件中的标签。

使用TOCO转换器,你不需要直接从源构建Tensorflow的映像。Firebase控制台直接帮助你优化文件。

步骤5

这是将经过训练的模型合并到机器学习程序中的步骤。你需要从Android Studio中输入Android文件夹来构建项目。在这里,你需要输入图像分类器,并使用TensorFlow Lite优化文件更新类中的两个字段。这两个字段是MODEL_PATH和LABEL_PATH。

一旦完全遵循了这些步骤,您所训练的模型就可以学习了,您的应用程序也可以按照这些步骤工作,根据设备的大小隔离特定的一组设备。

机器学习确实让移动应用程序开发看到了未来,如果你想改善Android应用程序的用户体验,那么TensorFlow Lite是你最好的选择。

本文分享自微信公众号 - ATYUN订阅号(atyun_com)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2019-09-12

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 【科普】精选 7 个生活中的机器学习案例,AI无处不在!

    今天我们就来看看,在日常生活中有哪些最常见的机器学习用例(有时我们甚至没有意识到这些例子涉及机器学习)。本文涵盖了以下常见的机器学习用例:

    昱良
  • 强化学习简介

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

    Steve Wang
  • 快速准确的人脸检测&识别新框架(进阶)(文末附源码)

    上一期“计算机视觉战队”已经和大家分享了相关的人脸检测、识别和验证背景及现状的发展状况,今天我们继续说说人脸领域的一些相关技术以及新框架的人脸检测识别系统。

    计算机视觉战队
  • 机器学习-何为优秀的特征

    选择好的特征能让分类器变得有效,这意味着找到好的特征是机器学习中最重要的工作之一。但是怎么样才能获得好的特征?你怎么才能知道,如果你正处理二分类问题。那么好的特...

    亚乐记
  • 局部人脸识别的动态特征匹配(文末附文章及源码地址)

    【导读】该文章被Trans收录。无约束环境下的局部人脸识别(PFR)是一项非常重要的任务,尤其是在视频监控和移动设备等由于遮挡、视野外、大视角等原因容易捕捉到局...

    计算机视觉战队
  • GBDT梯度提升树

    GBDT的全称是Gradient boosting decision tree,它是通过拟合负梯度Gradient boosting和决策回归树decision...

    opprash
  • 随机森林

    随机森林算法的思想就是通过集成学习和随机的方式将多棵树集成的一种算法,通过多棵树对数据集进行学习训练最后投票选举出最佳的一个最终的输出。这里每一棵树是一颗决策树...

    opprash
  • 全球变脸应用新突破:实时秒变娃娃脸、全机型覆盖,断网也能用

    而且相比P图后“变脸”,这次是拍摄短视频时终端实时进行“变脸”,上至万把元的iPhone下至千元安卓机,都能体验,甚至没有网络也OK。

    量子位
  • ​特征工程系列:特征预处理(上)

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

    MachineLP
  • 基于单层决策树的AdaBoost算法

    Boosting,也称为增强学习或提升法,是一种重要的集成学习技术,能够将预测精度仅比随机猜度略高的弱学习器增强为预测精度高的强学习器,这在直接构造强学习器非常...

    用户6021899

扫码关注云+社区

领取腾讯云代金券