热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

TF

雷锋网AI科技评论按:为了顺应“在本地设备上运行机器学习模型”的潮流,以及具体点来说,给自家Pixel2以及未来的手机上的AI加速芯片(thePixelVisualCore)提供运

雷锋网 AI 科技评论按:为了顺应“在本地设备上运行机器学习模型”的潮流,以及具体点来说,给自家Pixel 2以及未来的手机上的AI加速芯片(the Pixel Visual Core)提供运行库,谷歌正式发布了TensorFlow Lite,作为TensorFlow Mobile API的升级版进入公众视野,同时开源+长期更新。

TensorFlow桌面和TensorFlow Lite的定位固然有所不同,前者可以兼顾训练和推理,后者则是专门考虑如何在移动设备上高效运行;这导致它们的技术特点有所区别,TensorFlow桌面的模型也需要经过转换后才能在TensorFlow Lite上运行。

另一方面,在发布TensorFlow Lite软件的同时,谷歌研究院也另外发出一篇博文介绍了一种新的模型压缩方法,不仅有优秀的压缩效果,压缩后的模型也可以直接在TensorFlow Lite上运行,可谓是一个重大好消息。雷锋网 AI 科技评论把这篇博文翻译如下。

TF Lite只是故事的一部分,谷歌还一并介绍了新的模型压缩方法

TensorFlow Lite

2017年早些时候,谷歌发布了Android Wear 2.0,首次支持在移动设备上运行机器学习模型,用来提供智能化的消息处理。之前在谷歌的Gmail、Inbox、Allo里提供的基于云服务的“智能回复”功能也就首次可以在任何程序中工作,包括第三方的即时消息软件。有了本地的机器学习计算能力后就再也不需要连接到云服务上,在路上就可以直接从智能手表回复聊天消息。

美国时间11月14日,谷歌正式发布了TensorFlow Lite,这是TensorFlow用于移动设备和嵌入式设备的轻量化版本。这个开发框架专门为机器学习模型的低延迟推理做了优化,专注于更少的内存占用以及更快的运行速度。作为软件资源库的一部分,谷歌也发布了一个可以运行在设备上的聊天模型以及一个demo app,它们是谷歌编写的运行在TensorFlow Lite上的自然语言应用的样例,供开发人员和研究者们研究学习、开发更多新的本地运行的机器智能功能。输入聊天对话消息以后,这个模型就可以生成一条建议的回复;它的推理过程非常高效,可以轻松嵌入到各种聊天软件中,利用设备自身的计算能力提供智能的聊天功能。

谷歌发布的这个本地运行的聊天模型运用了一种训练紧凑神经网络(以及其它机器学习模型)的新机器学习架构,它基于一个联合优化范式,最初发表在论文 ProjectionNet: Learning Efficient On-Device Deep Networks Using Neural Projections 中。这种架构可以高效地运行在计算能力和内存都较为有限的移动设备上,通过高效的“投影”操作,它可以把任意输入转换成一个紧凑的位向量表征,这个过程中类似的输入会被投影到相邻的向量中;根据投影类型的不同这些向量可以是密集的也可以是稀疏的。比如,“嘿如何了?”和“兄弟你如何了?”两条消息就有可能被投影到相同的向量表征上去。

通过这样的想法,谷歌的聊天模型就以很低的计算开销和内存消耗加入了这些高效的操作。这个在设备本地运行的模型是谷歌用端到端的方法训练的,训练过程中使用了联合训练两个不同模型的机器学习框架;这两个训练的模型,一个是紧凑的“投影”模型(如上文所述),同时还结合了一个“训练器”模型。两个模型是联合训练的,投影模型从训练器模型中学习;训练器模型有着专家的特质,它是用更大、更复杂的机器学习架构创建的,而投影模型就像一个跟在后面学习的学生。在训练过程中,也可以叠加其它的量化、蒸馏之类的技术,达到更紧凑的压缩效果,或者也可以选择性地优化目标函数的某些部分。一旦训练结束,这个更小的投影模型就可以直接在设备上做推理任务。

TF Lite只是故事的一部分,谷歌还一并介绍了新的模型压缩方法

在推理过程中,训练后的投影模型会被编译成一系列 TensorFlow Lite 的操作,而这些操作都是为移动平台的快速执行优化过的,可以直接在设备上执行。这个本地运行的聊天模型的TensorFlow Lite推理图如下所示。

TF Lite只是故事的一部分,谷歌还一并介绍了新的模型压缩方法

这个用上述的联合训练方法端到端训练的聊天模型是开源的,今天(美国时间11月14日)就会和代码一起发布出来。同时还会发布一个demo app,这样研究人员和开发人员就可以轻松地下载它们、在自己的移动设备上试试看它提供的一键智能回复功能。这个架构能根据应用需求提供不同模型大小、不同预测质量的配置功能,操作也很方便。除了一些已知的模型可以给出很好回复的消息之外,系统还可以把一组固定的聊天对话中观察到、然后学习编译到模型中的流行的回复语句作为预测失败后的备选语句。它背后的模型和谷歌在自家应用中提供“智能回复”功能的模型有一些区别。

在聊天模型之后

有趣的是,上面描述的机器学习架构保证了背后隐含的模型具有各种灵活的选择。谷歌的研究人员们把这个架构设计得可以与不同的机器学习方法兼容,比如,与TensorFlow深度学习共同使用时,就可以为隐含模型学到一个轻量化的神经网络(“投影网络”),并用一个图框架(“投影图”)来表征这个模型,不再是神经网络的形式。

联合训练框架也可以用来给使用其它机器学习建模架构的任务训练轻量级的本地运行模型。比如,谷歌把一个复杂的前向传输或者循环网络架构(比如LSTM)作为训练器模型,训练得到的投影架构就可以简单地由动态投影操作和寥寥几层全连接层组成。整个架构是以端到端的方式在TensorFlow中通过反向传播训练的。训练结束后,紧凑的投影网络就可以直接用来做推理。通过这样的方法,谷歌的研究人员们成功训练了不少小巧的投影模型,它们不仅在模型大小方面有大幅度下降(最高可以缩小几个数量级),而且在多种视觉和语言分类任务中可以保证同样的准确率但性能高得多。类似地,他们也用图学习范式训练了其它的轻量级模型,即便是在半监督学习的设定中。

TF Lite只是故事的一部分,谷歌还一并介绍了新的模型压缩方法

谷歌表示,他们在开源TensorFlow Lite后会持续改进以及发布新版本。通过这些机器学习架构学到的模型,不管是已经发布的还是将在未来发布的,都不仅可以应用在多种自然语言和计算机视觉应用中,也可以嵌入已有的应用中提供机器智能的功能。同时谷歌当然也希望及机器学习和自然语言处理大家庭中的其它研究者和开发者也可以在这些基础上共同应对谷歌尚未发现或者尚未解决的新问题。

via Google Research Blog,雷锋网(公众号:雷锋网) AI 科技评论编译。

相关文章:

Google正式发布TensorFlow Lite预览版,针对移动/嵌入设备的轻量级解决方案

TensorFlow全新的数据读取方式:Dataset API入门教程

谷歌发布TensorFlow 1.4版本:支持分布式训练,迎来三大新变化

紧跟未来深度学习框架需求,TensorFlow推出Eager Execution

雷锋网版权文章,未经授权禁止转载。详情见。


TF Lite只是故事的一部分,谷歌还一并介绍了新的模型压缩方法


推荐阅读
  • 2017年人工智能领域的十大里程碑事件回顾
    随着2018年的临近,我们一同回顾过去一年中人工智能领域的重要进展。这一年,无论是政策层面的支持,还是技术上的突破,都显示了人工智能发展的迅猛势头。以下是精选的2017年人工智能领域最具影响力的事件。 ... [详细]
  • 吴恩达推出TensorFlow实践课程,Python基础即可入门,四个月掌握核心技能
    量子位报道,deeplearning.ai最新发布了TensorFlow实践课程,适合希望使用TensorFlow开发AI应用的学习者。该课程涵盖机器学习模型构建、图像识别、自然语言处理及时间序列预测等多个方面。 ... [详细]
  • 资源推荐 | TensorFlow官方中文教程助力英语非母语者学习
    来源:机器之心。本文详细介绍了TensorFlow官方提供的中文版教程和指南,帮助开发者更好地理解和应用这一强大的开源机器学习平台。 ... [详细]
  • 机器学习中的相似度度量与模型优化
    本文探讨了机器学习中常见的相似度度量方法,包括余弦相似度、欧氏距离和马氏距离,并详细介绍了如何通过选择合适的模型复杂度和正则化来提高模型的泛化能力。此外,文章还涵盖了模型评估的各种方法和指标,以及不同分类器的工作原理和应用场景。 ... [详细]
  • 毕业设计:基于机器学习与深度学习的垃圾邮件(短信)分类算法实现
    本文详细介绍了如何使用机器学习和深度学习技术对垃圾邮件和短信进行分类。内容涵盖从数据集介绍、预处理、特征提取到模型训练与评估的完整流程,并提供了具体的代码示例和实验结果。 ... [详细]
  • 尽管深度学习带来了广泛的应用前景,其训练通常需要强大的计算资源。然而,并非所有开发者都能负担得起高性能服务器或专用硬件。本文探讨了如何在有限的硬件条件下(如ARM CPU)高效运行深度神经网络,特别是通过选择合适的工具和框架来加速模型推理。 ... [详细]
  • Coursera ML 机器学习
    2019独角兽企业重金招聘Python工程师标准线性回归算法计算过程CostFunction梯度下降算法多变量回归![选择特征](https:static.oschina.n ... [详细]
  • 机器学习核心概念与技术
    本文系统梳理了机器学习的关键知识点,涵盖模型评估、正则化、线性模型、支持向量机、决策树及集成学习等内容,并深入探讨了各算法的原理和应用场景。 ... [详细]
  • 强人工智能时代,区块链的角色与前景
    随着强人工智能的崛起,区块链技术在新的技术生态中扮演着怎样的角色?本文探讨了区块链与强人工智能之间的互补关系及其在未来技术发展中的重要性。 ... [详细]
  • 卷积神经网络(CNN)基础理论与架构解析
    本文介绍了卷积神经网络(CNN)的基本概念、常见结构及其各层的功能。重点讨论了LeNet-5、AlexNet、ZFNet、VGGNet和ResNet等经典模型,并详细解释了输入层、卷积层、激活层、池化层和全连接层的工作原理及优化方法。 ... [详细]
  • 深入浅出TensorFlow数据读写机制
    本文详细介绍TensorFlow中的数据读写操作,包括TFRecord文件的创建与读取,以及数据集(dataset)的相关概念和使用方法。 ... [详细]
  • 本文探讨了现代分布式架构的多样性,包括高并发、多活数据中心、容器化、微服务、高可用性和弹性架构等,并介绍了与这些架构相关的重要管理技术,如DevOps、应用监控和自动化运维。文章还深入分析了分布式系统的核心概念、主要用途及类型,同时对比了单体应用与分布式服务化的优缺点。 ... [详细]
  • 解决PyCharm中安装PyTorch深度学习d2l包的问题
    本文详细介绍了如何在PyCharm中成功安装用于PyTorch深度学习的d2l包,包括环境配置、安装步骤及常见问题的解决方案。 ... [详细]
  • 收割机|篇幅_国内最牛逼的笔记,不接受反驳!!
    收割机|篇幅_国内最牛逼的笔记,不接受反驳!! ... [详细]
  • 李宏毅机器学习笔记:无监督学习之线性方法
    无监督学习主要涵盖两大类别:一是聚类与降维,旨在简化数据结构;二是生成模型,用于从编码生成新的数据样本。本文深入探讨了这些技术的具体应用和理论基础。 ... [详细]
author-avatar
so直接离我远点儿
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有