TensorFlow

✍ dations ◷ 2025-11-04 05:31:14 #数据挖掘和机器学习软件,机器学习,Google软件,用Python编程的自由软件,自由统计软件,Python科学库,使用Apache许可证的软件,用C++编程的

TensorFlow是一个开源软件库,用于各种感知和语言理解任务的机器学习。目前被50个团队:min 0:15/2:17用于研究和生产许多Google商业产品:p.2,如语音识别、Gmail、Google 相册和搜索:0:26/2:17,其中许多产品曾使用过其前任软件DistBelief。

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

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

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。

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

2017年5月Google宣布第二代张量处理单元,并在Google Compute Engine(英语:Google Compute Engine)中可用。第二代TPU提供最高180 teraflops性能,组装成64个TPU的集群时提供最高11.5 petaflops性能。

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

Google于2015年10月26日正式发布了RankBrain(英语:RankBrain),由TensorFlow支持。

TensorFlow提供了一个Python API,以及C++、Haskell、Java、Go和Rust API。第三方包可用于 C#、.NET Core、Julia、R和Scala。

TensorFlow的底层核心引擎由C++实现,通过gRPC实现网络互访、分布式执行。虽然它的Python/C++/Java API共享了大部分执行代码,但是有关于反向传播梯度计算的部分需要在不同语言单独实现。目前只有Python API较为丰富的实现了反向传播部分。所以大多数人使用Python进行模型训练,但是可以选择使用其它语言进行线上推理。

TensorFlow在Windows和Linux上支持使用Bazel或CMake构建,在某些平台上也支持直接使用GNU make进行编译。

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

相关

  • 过渡金属过渡元素(英语:Transition element)是指元素周期表中d区的一系列金属元素,(英语:Transition metal)。一般来说,这一区域包括3到12一共十个族的元素,但不包括f区的内过渡元素。“过渡
  • 磁场在电磁学里,磁石、磁铁、电流及含时电场,都会产生磁场:3-4。处于磁场中的磁性物质或电流,会因为磁场的作用而感受到磁力,因而显示出磁场的存在。磁场是一种矢量场;磁场在空间里的
  • 压力油炸压力油炸是在密封的油炸炉中炸制食物的烹饪方法。进行压力油炸时,食物释放的蒸汽不会流失。因为锅中的气压高,油的沸点也随之升高,使烹饪时的油温升高,食物能较快变熟,食物的外观
  • 陈世骧陈世骧(1905年11月5日-1988年1月25日),浙江嘉兴人,中国昆虫学家,中国科学院院士。主要从事昆虫分类学的研究。1919年就读于秀州中学,1924年考入复旦大学生物系。1928年毕业后赴法国
  • 氰离子氰化物是特指带有氰离子(CN−)或氰基(-CN)的化合物,其中的碳原子和氮原子通过叁键相连接。这一叁键给予氰基以相当高的稳定性,使之在通常的化学反应中都以一个整体存在。因该基团
  • 闽南地区闽南(闽南语:.mw-parser-output .sans-serif{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Lato,"Helvetica Neue",Helvetica,Arial,sans-serif} Bân-l
  • 乙酸镁乙酸镁,化学式(CH3COO)2Mg。无色易潮解结晶,溶于水和醇。由氧化镁与乙酸反应而得。用于制备乙酸铀酰镁,后者是测定钠的试剂。
  • 砑头虫目砑头虫目(学名:Proetida),又名蚜头虫目,是三叶虫纲下的其中一目,出现在奥陶纪,是泥盆纪后期的大灭绝中唯一幸存的三叶虫类,最后于二叠纪末的大灭绝中消失。具有流线型的身体,但身上没
  • 库斯加奥恩布德鲁克库斯加奥恩布德鲁克(Kusgaon Budruk),是印度马哈拉施特拉邦浦那县的一个城镇。总人口8567(2001年)。该地2001年总人口8567人,其中男性4559人,女性4008人;0—6岁人口1194人,其中男618
  • D1高速公路 (斯洛伐克)D1高速公路(斯洛伐克语:Diaľnica D1)是斯洛伐克的兴建中一条高速公路,完成后全长517公里。公路横贯全境,西起首都布拉迪斯拉发,经特尔纳瓦、日利纳、马丁、普雷绍夫、科希策等主