TensorFlow 是什么

子凡 问答 2019-05-20 14:20:28 阅读(...)

TensorFlow是一个开源软件库,用于各种感知和语言理解任务的机器学习。当前被50个团队用于研究和生产许多Google商业产品,如语音识别、Gmail、Google 相册和搜索。

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

TensorFlow

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

DistBelief

从 2010 年开始,谷歌大脑创建 DistBelief 作为他们的第一代专有的机器学习系统。50 多个团队在 Google 和其他 Alphabet 公司在商业产品部署了 DistBelief 的深度学习神经网络,包括 Google 搜索、Google 语音搜索、广告、Google 相册、Google 地图、Google 街景、Google 翻译和 YouTube。Google 指派计算机科学家,如 Geoffrey Hinton 和 Jeff Dean,简化和重构 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 的名字来源于这类神经网络对多维数组执行的操作。这些多维数组被称为张量。2016 年 6 月,Jeff Dean 称在 GitHub 有 1500 个库提到了 TensorFlow,其中只有 5 个来自 Google。

张量处理单元(TPU)

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

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

TensorFlow Lite

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

应用

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

特性

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

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

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

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

1个人收藏头像 收藏

评论交流

泪雪默认头像 请「登录」后参与评论
  1. 加载中..

相关推荐

  • 网页优化 Web page optimization

    网页优化是什么

    网页优化是指针对网站的用户体验,来提高以及完善网站各方面功能作为基础的全面优化。网页优化是指通过改进网页的内容和代码结构来提高搜索引擎排名的过程。优化后的网页可以更容易被搜索引擎找到,从而提高网站的可见性和曝光率。
  • 共享托管 Shared hosting

    共享托管是什么

    共享托管是指多个网站共用一台服务器进行网站托管,这种方式通常是最为实惠的网站托管方式,因为多个网站共享服务器的资源,让服务提供商能够在成本上做出相应的调整。然而,由于多个网站共享同一台服务器,因此该服务器的性能可能受到其他网站的影响。
  • 网站托管 Website hosting

    网站托管是什么

    网站托管是指将网站的所有服务器、软件、网络等资源托付给专业的服务提供商,由其对网站进行管理和维护。通过网站托管,网站的所有者不需要拥有专业的技术知识和设备,也不需要花费大量的时间和金钱进行网站的维护,因此可以更专注于网站内容的开发和更新。
  • 排名 ranking

    淘宝号降权是什么意思

    淘宝号降权是指淘宝平台对于某些卖家账号进行的降低搜索排名和展示频率的处罚。这意味着被降权的账号的商品在淘宝搜索结果中排名会更低,展示频率也会变小,这会影响商品的销量和曝光率。
  • 腾讯 WeTest

    腾讯WeTest是什么

    WeTest是腾讯官方出品的一站式质量云,致力于产品质量标准建设和产品品质提升,依托10余年腾讯产品品质管理经验,历经千款腾讯产品磨砺。平台集成云手机、兼容测试、功能测试、性能测试、安全测试、自动化测试等优秀产品服务,满足众多开发者从研发到运营各阶段的测试需求。
  • Bitlocker

    Bitlocker分区解密软件是什么

    Bitlocker分区解密软件是一款针对因各种原因导致Bitlocker分区打不开从而数据丢失进行恢复的软件。Bitlocker是微软自Vista后开始提供的一个自带的加密工具。而这一功能最大的好处就是更好的防止数据失窃或恶意泄漏问题的发生。