ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

别急!看完文章再来说你懂

2021-05-06 15:56:12  阅读:202  来源: 互联网

标签:机器 别急 模型 文章 tf API TensorFlow Lite 来说


TensorFlow 简述


目前深度学习的网络和结构越发复杂和庞大,而TensorFlow的出现让我们可以更方便快捷的处理这些复杂的模型。它非常的灵活且支持众多的终端,能够兼容多种语言,包括Java、C++、GO、C# 等等。作为一个整套工具,TensorFlow能够很直观的查看计算的结果,提供了便捷的调试机制。目前 TensorFlow正在借助开源社区的力量进一步壮大。


TensorFlow APIS

Tf.estimator


目前TensorFlow推出了众多高阶 API 来帮助开发者更有效率的工作。以前通过TensorFlow写线性回归,需要定义众多的参数,在使用新的高级API tf.estimator后只需要使用简单的几行代码,就能将模型搭建出来。而且仅改动一行代码,原来的线性回归模型就会被转化成相对复杂的DNN模型。同时 estimator也支持分布式训练,包括模型类分布和数据类分布,当图比较大时可以将操作并行的分别在不同机器上,或者模型不切分但还是跑在不同机器上同时进行快速的更新。


Tf.layers


Estimator虽然是一个很好的切入点,但是无法满足一些用户的自定义需求。这要通过偏底层的tf.layers API解决问题,下图是个简单的例子,每个 tf.layers强制对应一行代码并将它们一层层的连在一起。


图片

Tf.keras


keras之前在社区一直都是非常火的工具,现在keras的作者来到了google并帮助在TensorFlow中搭建了tf.Keras,方便之前习惯使用keras的用户。它的大部分特性和之前并无区别,还能和tf.layers共存。


Eager Execution


TensorFlow是以静态图的方式进行计算,将众多操作整合在一起减少资源,并且它的资源定义能够减少大量错误。虽然这种方式很不错,但是对于刚开始接触的用户来说使用并不是太方便,他们想要的是能够像编写Python一样一步步的看到结果。针对这一需求TensorFlow提供了Eager Execution模式,让用户每一步都能看到结果。


图片


Eager Execution更多的帮助初学者理解TensorFlow的处理机制以及交互性,能够随时发现错误,并且与大部分的高阶API兼容的。


Input Pipeline:tf.data


目前大部分的应用面临的瓶颈并不是计算,现有的GPU、CPU已经能够很好的应付庞大的计算量。最主要的问题还是在IO上,于是Datasets API出现了。它使用起来非常简单,只需要事先构建TFRecordDataset,之后就可以和正常操作一样,使用repeat、shuffle、filter等。


图片


TensorFlow Lite


出于对手机内存容量限制以及耗电量的考虑,TensorFlow推出了TensorFlow Lite,让模型变的更轻巧以便在移动端运行。


图片


上图是TensorFlow Lite的创建过程,要明确的是使用的依旧是TensorFlow训练好的模型,然后通过Converter转换成TensorFlow Lite模式,之后就能将它部署到手机端。手机端使用TensorFlow Lite Interpreter解释器进行相应的优化,比如合并一些不必要的操作。 


TensorFlow Lite的dependencies相比之前更小。它使用TOCO工具进行图的转换,将TensorFlow的图转换为TF Lite。借助到quantization可以将32位或者64位的模型转化成8位以获得更小的体量。


TensorFlow Applications in Google


早期的翻译软件是基于统计的,在没有足够语言对的情况下正确率无法保障,短语翻译效果也不太好显得生硬。借助神经网络上述问题会得到有效改善。


不光是在翻译领域,google内部的各种应用都用到了TensorFlow ,比如  YouTube和 PlayStore推荐、安卓的个性化。


AutoML


人为的搭建模型挑选网络的结构是非常麻烦的事,要耗费大量的人力物力以及机器计算力。于是我们就想到用机器学习去完成机器学习,这个想法已经得到了验证,它就是 AutoML。


Data Center Optimization


Google内部有很多的机器在运行,如何合理的控制机器开关,以及包括制冷之类的其他事项是相当有难度的问题。在引入机器学习后整个成本大幅的降低。


图片

TensorFlow Roadmap


TensorFlow从各个层次考虑,做出优化,所想达到的唯一目标就是让用户能够更方便快捷的搭建数据模型。为此我们还会在各方面做出改进。


今后对非Python语言的会有更好的支持。同时为了让TensorFlow更加易用,我们将会提供更多的高阶API,另一方面让用户能够使用维护良好的模型直接部署应用。接下来TensorFlow还会提供对OpenCL的支持。


标签:机器,别急,模型,文章,tf,API,TensorFlow,Lite,来说
来源: https://blog.51cto.com/u_15127602/2756735

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有