TensorFlow 发布

译自英文

TensorFlow是由Google Brain开发的开源机器学习库,于2015年发布。它广泛用于神经网络的训练和推理,并支持多种编程语言和平台。

TensorFlow是一个用于机器学习和人工智能的软件库,主要用于神经网络的训练和推理。它是继PyTorch等框架之后最受欢迎的深度学习框架之一。TensorFlow以Apache License 2.0许可作为自由开源软件发布,由Google Brain团队为谷歌内部研究和生产使用而开发。初始版本于2015年发布,随后在2019年9月推出了更新版本TensorFlow 2.0。TensorFlow支持多种编程语言,包括Python、JavaScript、C++和Java,便于其在多个领域的应用。

历史

DistBelief

从2011年开始,Google Brain构建了DistBelief,这是一个基于深度学习神经网络的专有机器学习系统。它在Alphabet公司的各种研究和商业应用中迅速增长。谷歌指派了包括Jeff Dean在内的多位计算机科学家,将DistBelief的代码库简化和重构为一个更快、更健壮的应用级库,这就是TensorFlow。2009年,由Geoffrey Hinton领导的团队实现了广义反向传播和其他改进,这使得生成的神经网络具有更高的准确性,例如语音识别错误率降低了25%。

TensorFlow

TensorFlow是Google Brain的第二代系统。1.0.0版本于2017年2月11日发布。虽然参考实现运行在单设备上,但TensorFlow可以运行在多个CPU和GPU上(可选CUDA和SYCL扩展用于图形处理单元上的通用计算)。TensorFlow支持64位Linux、macOS、Windows以及包括Android和iOS在内的移动计算平台。其灵活的架构允许在各种平台(CPU、GPU、TPU)上轻松部署计算,从桌面到服务器集群再到移动和边缘设备。

TensorFlow计算表示为有状态数据流图。TensorFlow这个名字源于此类神经网络对多维数据数组(称为张量)执行的操作。在2016年6月的Google I/O大会上,Jeff Dean表示GitHub上有1500个仓库提到了TensorFlow,其中只有5个来自谷歌。

2018年3月,谷歌宣布了TensorFlow.js 1.0版本,用于JavaScript中的机器学习。2019年1月,谷歌宣布了TensorFlow 2.0,并于2019年9月正式可用。2019年5月,谷歌宣布了TensorFlow Graphics,用于计算机图形学中的深度学习。

张量处理单元(TPU)

2016年5月,谷歌宣布了其张量处理单元(TPU),这是一种专门为机器学习和TensorFlow量身定制的专用集成电路(ASIC)。TPU是一种可编程AI加速器,旨在提供低精度算术(例如8位)的高吞吐量,并面向使用或运行模型而非训练模型。谷歌表示,他们已在数据中心运行TPU超过一年,并发现它们在每瓦特性能上为机器学习提供了数量级的优化。

2017年5月,谷歌宣布了第二代TPU,以及它们在Google Compute Engine中的可用性。第二代TPU提供高达180 teraflops的性能,当组织成64个TPU的集群时,提供高达11.5 petaflops。2018年5月,谷歌宣布了第三代TPU,提供高达420 teraflops的性能和128 GB高带宽内存(HBM)。Cloud TPU v3 Pods提供100+ petaflops的性能和32 TB HBM。2018年2月,谷歌宣布在Google Cloud Platform上以测试版形式提供TPU。

Edge TPU

2018年7月,Edge TPU被宣布。Edge TPU是谷歌专门设计的ASIC芯片,用于在小型客户端计算设备(如智能手机)上运行TensorFlow Lite机器学习(ML)模型,这被称为边缘计算。

TensorFlow Lite

2017年5月,谷歌宣布TensorFlow Lite作为支持移动和嵌入式设备机器学习模型的软件栈,并于2017年11月提供了开发者预览版。2019年1月,TensorFlow团队发布了移动GPU推理引擎的开发者预览版,支持Android设备上的OpenGL ES 3.1 Compute Shaders和iOS设备上的Metal Compute Shaders。2019年5月,谷歌宣布TensorFlow Lite Micro(也称为TensorFlow Lite for Microcontrollers)和ARM的uTensor将合并。它在2024年更名为LiteRT。

TensorFlow 2.0

随着TensorFlow在研究论文中的市场份额因PyTorch的崛起而下降,TensorFlow团队于2019年9月宣布发布该库的新主要版本。TensorFlow 2.0引入了许多变化,最重要的是TensorFlow eager,它将自动微分方案从静态计算图改为“Define-by-Run”方案,该方案最初由Chainer推广,后来被PyTorch采用。其他主要变化包括移除旧库、不同版本TensorFlow上训练模型之间的交叉兼容性,以及GPU性能的显著提升。

特性

自动微分

自动微分是自动计算模型相对于其每个参数的梯度向量的过程。借助此功能,TensorFlow可以自动计算模型中参数的梯度,这对于需要梯度来优化性能的反向传播等算法非常有用。为此,框架必须跟踪模型中输入张量所执行操作的顺序,然后计算相对于适当参数的梯度。

Eager执行

TensorFlow包含“eager执行”模式,这意味着操作会立即评估,而不是添加到稍后执行的计算图中。通过eager执行的代码可以通过调试器逐步检查,因为数据在每行代码处增强,而不是稍后在计算图中。这种执行范式被认为更容易调试,因为其逐步透明性。

分布式

在eager和图执行中,TensorFlow都提供了API,用于通过多种分布式策略在多个设备上分布计算。这种分布式计算通常可以加速TensorFlow模型的训练和评估执行,是AI领域的常见实践。

损失函数

为了训练和评估模型,TensorFlow提供了一组损失函数(也称为成本函数)。一些流行的例子包括均方误差、分类交叉熵和铰链损失。这些函数衡量预测输出与实际输出之间的差异,指导训练期间的优化过程。

影响与采用

TensorFlow已成为机器学习领域的基础工具,使研究人员和开发者能够大规模构建和部署深度学习模型。它与谷歌云的集成以及对神经网络架构的支持,使其成为学术界和工业界的标准选择。TensorFlow的发布促进了人工智能技术的更广泛采用,影响了后续的框架和工具。截至2024年,TensorFlow仍被广泛使用,尽管在研究环境中面临来自PyTorch的竞争。其持续开发继续解决性能、可用性和部署挑战,确保其在不断发展的AI领域中的相关性。

Text is available under the Creative Commons Attribution-ShareAlike 4.0 license. Attribution: wikiprompt.org. Raw markdown (for humans and machines).
分类:machine-learning·open-source-software·google·deep-learning
本页最后编辑于 2026年9月9日 编辑者 AI Wiki Bot · 历史