什么是TensorFlow

阅读本文以了解更多关于TensorFlow的知识,并了解如何在项目中使用它。

TensorFlow教程

目的:在今天的TensorFlow教程中,我们将学习什么是TensorFlow,它在哪里使用,它的不同特性,TensorFlow应用程序,最新版本及其优缺点,以及如何在项目中使用它。

什么是TensorFlow, 有什么新内容?

TensorFlow教程|什么是TensorFlow

TensorFlow的历史

DistBelief是TensorFlow在升级之前被调用的,它是在2011年作为一个基于深度学习神经网络的专有系统构建的。DistBelief的源代码经过修改,被做成了一个更好的基于应用程序的库,2015年,它被称为tensorflow。

TensorFlow是什么?

TensorFlow是一个强大的面向数据流的机器学习库,由谷歌的Brain Team创建,于2015年开源。它被设计成易于使用和广泛应用于数字和神经网络的问题以及其他领域。

本质上,TensorFlow是一个用于处理复杂数学问题的低级工具包,它针对的是那些知道自己在做什么的研究人员,以构建实验学习体系结构,并将其转化为运行中的软件。

它可以被认为是一个编程系统,在这个系统中,你将计算表示为图形。图中的节点表示数学运算,边缘表示它们之间通信的多维数据数组(张量)。

最新版本

TensorFlow的最新版本是1.7.0,可以在tensorflow.org上找到。它的设计理念是深度学习,但它适用于更广泛的问题。

关于张量

现在,顾名思义,它提供了在张量上定义函数并自动计算其导数的原语。

张量是一种高维数组,用于计算机编程,以数字的形式表示大量的数据。在互联网上还有其他n - d数组库,就像Numpy一样,但TensorFlow是独立的,因为它提供了创建张量函数并自动计算导数的方法。

什么是TensorFlow, 有什么新内容?

TensorFlow教程

其他的用途

您可以在其上构建其他的机器学习算法,比如决策树或k近邻。下面是一个由TensorFlow组成的生态系统:

什么是TensorFlow, 有什么新内容?

TensorFlow生态系统。

从上面的描述可以看出,TensorFlow可集成性良好,具有包括GPU处理、python和Cpp在内的依赖关系,您也可以使用它与docker等容器软件集成。

TensorBoard

TensorBoard是一套可视化工具,是TensorFlow的一种简单解决方案,它由创建者提供,允许您可视化图形,并使用其他数据(如图像)来绘制图形的定量度量。

什么是TensorFlow, 有什么新内容?

操作

TensorFlow在各种平台上运行,安装是linux操作系统,安装很简单。它可以使用pip或conda环境进行安装。这些应用程序不仅支持深度学习,还支持其他形式的机器学习,比如强化学习。强化学习把你带入目标导向的任务中,比如赢得视频游戏,或者帮助机器人在不平衡的环境中行走。

TensorFlow应用程序

有无数的机器学习的应用和TensorFlow允许您去探索他们中的大多数包括情绪分析,谷歌翻译,文本摘要和,图像识别,它被世界各地的大公司,包括Airbnb,eBay,Dropbox,Snapchat,Twitter,Uber,SAP、高通、IBM、英特尔、当然,谷歌、Facebook、Instagram,亚马逊用于各种目的。

TensorFlow特性

TensorGlow具有用于Matlab和c++的api,并且具有广泛的语言支持。随着时间的推移,研究人员正在努力让它变得更好,最近,在最新的TensorFlow峰会上,TensorFlow.js是一个用于培训和部署机器学习模型的javascript库,并且在tensorflow官网上可以使用一个开源浏览器集成平台,在那里您可以看到在修改超参数时发生的实时变化。

TensorFlow优势

  • TensorFlow有一个响应性结构,您可以很容易地将图形的每个部分可视化。
  • 平台的灵活性,这意味着它是模块化的,有些部分可以独立而其他人合并。
  • 它可以在CPU和GPU上轻松地进行分布式计算。
  • 它具有自动分化功能,它可以利用基于梯度的机器学习算法,也就是说,你可以通过对其他值来计算值的导数,从而得出图表扩展的结果。
  • 它支持线程、异步计算和队列。
  • 它是可定制的和开放源码的。

TensorFlow局限性

如果在相同的范围内导入GPU内存,则会与Theano发生冲突。

不支持OpenCL

需要有高级微积分和线性代数知识以及对机器学习的了解。

结论

TensorFlow是一个很好的库,可以在创建深度学习网络时对数据进行数值和图形计算,是谷歌Search、谷歌Translate Translate、谷歌Photos等应用最广泛的库。人们使用机器学习做了许多令人惊叹的事情,其中包括与医疗保健相关的应用、电影推荐引擎、音乐、个性化广告和社交媒体情绪挖掘等。随着机器学习和人工智能的进步让人难以置信,TensorFlow是帮助实现这些目标的工具。

猜你喜欢

转载自blog.csdn.net/flysnowjava/article/details/80545774
今日推荐