TensorFlow

TensorFlow是一个开源软件库，用于各种感知和语言理解任务的机器学习。"TensorFlow: Open source machine learning"  "It is machine learning software being used for various  kinds of perceptual and language understanding tasks" — Jeffrey Dean, minute 0:47 / 2:17 from Youtube clip目前广泛地用于研究和生产中，比如Google商业产品，如语音辨識、Gmail、Google 相册和搜索，其中许多产品曾使用过其前任软件DistBelief。

TensorFlow最初由谷歌大脑团队开发，用于Google的研究和生产，于2015年11月9日在Apache 2.0开源许可证下发布。

 历史 

 DistBelief 
从2010年开始，谷歌大脑建立DistBelief作为他们的第一代专有的机器学习系统。50多个团队在Google和其他Alphabet公司在商业产品部署了DistBelief的深度学习神经网络，包括Google搜索、Google语音搜索、广告、Google 相册、Google地图、Google街景、Google翻译和YouTube。Google指派计算机科学家，如杰弗里·辛顿和傑夫·迪恩，简化和重构DistBelief的代码库，使其变成一个更快、更健壮的应用级别代码库，形成了TensorFlow。2009年，Hinton领导的研究小组大大减少使用DistBelief的神经网络的错误数量，通过Hinton在广义反向传播的科学突破。最值得注意的是，Hinton的突破直接使Google语音识别软件中的错误减少至少25%。

 TensorFlow 
TensorFlow是谷歌大脑的第二代机器学习系统。

从0.8.0版本（发布于2016年4月）开始原生的支持分布式运行。

从0.9.0版本（发布于2016年6月）开始支持iOS。

从0.12.0版本（发布于2016年12月）开始支持Windows系统。该移植代码主要由微软贡献。

1.0.0版本发布于2017年2月11日。虽然参考实现运行在单台设备，TensorFlow可以运行在多个CPU和GPU（和可选的CUDA扩展和图形处理器通用计算的SYCL扩展）。TensorFlow可用于64位Linux、macOS和Windows，以及移动计算平台，包括Android和iOS。

TensorFlow的计算使用有状态的数据流图表示。TensorFlow的名字来源于这类神经网络对多维数组执行的操作。这些多维数组被称为张量（Tensor）。2016年6月，Jeff Dean称在GitHub有1500个库使用了TensorFlow，其中只有5个来自Google。Machine Learning: Google I/O 2016 Minute 07:30/44:44  accessdate=2016-06-05

 张量处理单元（TPU） 
2016年5月，Google宣布了张量处理单元（TPU），一个专为机器学习和TensorFlow全定制的专用集成电路。TPU是一个可编程的人工智能加速器，提供高吞吐量的低精度计算（如8位），面向使用或运行模型而不是训练模型。Google宣布他们已经在数据中心中运行TPU长达一年多，发现它们对机器学习提供一个数量级更优的每瓦特性能。

2017年5月Google宣布第二代张量处理单元，并在Google计算引擎中可用。第二代TPU提供最高180 teraflops性能，组装成64个TPU的集群时提供最高11.5 petaflops性能。

TensorFlow Lite
2017年5月Google宣布从Android Oreo开始，提供一个专用于Android开发的软件栈TensorFlow Lite。

用于搜索引擎
Google于2015年10月26日正式发布了，由TensorFlow支持。

 TensorFlow 2 
随着TensorFlow在研究论文上的市场份额因PyTorch的优势而衰减，在2019年9月TensorFlow团队宣布了程序库的一个新的主要版本。TensorFlow 2.0介入了很多变更，最重要的是TensorFlow eager，它将自动微分的方案，从静态计算的图，变更为“运行时定义”的方案，它最初因和后来的PyTorch而流行。其他主要的变更包括移除一些旧库，在不同版本的TensorFlow的训练模型之间的交叉兼容性，还有在GPU上性能的显著改进。

 使用 
TensorFlow充当机器学习的核心平台和函数库。TensorFlow的API使用Keras来允许用户制作自己的机器学习模型。除了建造和训练它他们的模型之外，TensorFlow还能帮助装载数据来训练模型，并使用TensorFlow Serving来部署它。

TensorFlow提供了一个Python API，以及C++、HaskellHaskell、JavaJava、GoGo和RustRustAPI。第三方包可用于C#C#、.NET Core.NET Core、JuliaJulia、RR和ScalaScala。

 应用 
广泛的应用程序使用TensorFlow作为基础，其中它已成功实现自动化图像字幕软件，例如。2015年10月26日，Google正式启用了由TensorFlow提供支持的。RankBrain现在处理大量的搜索查询，替换和补充传统的静态算法搜索结果。

参见
 人工神经网络


 深度学习
 机器学习
 卷积神经网络

 引用 

 外部链接 




Category:数据挖掘和机器学习软件
Category:机器学习
Category:Google軟體
Category:用Python編程的自由軟體
Category:自由統計軟件
Category:Python科学库
Category:使用Apache许可证的软件
Category:用C++編程的自由軟體
Category:开源人工智能