TensorFlow 是什么?有什么作用?

TensorFlow 是什么?有什么作用?

谷歌大脑团队在 2011 年启动了一个项目,目的是探索超大规模深度神经网络的服务,并应用于谷歌产品的研究和部署以提高谷歌的服务性能。

在早期,Google 构建了 DistBelief,这是第一代可扩展的分布式训练和推理系统。它可以利用具有数千台机器的计算集群来训练大型模型。

谷歌在这方面进行了许多项目,包括无监督学习、语言表示、图像和对象检测模型、人脸和语音识别、强化学习等。

随后,基于对 DistBelief 的实验以及对权宜之计的系统属性以及训练和使用神经网络的需求的全面了解,Google 构建了 TensorFlow

Tensorflow 是第二代系统,用于提高大规模机器学习模型的性能。在最顶级的机器学习系统中,TensorFlow 是由谷歌开发的开源库软件,用于执行机器学习和深度学习实践。

什么是 TensorFlow?

TensorFlow 是一个用于机器学习的开源平台,它拥有一个包罗万象、灵活的工具和技术生态系统、图书馆和社区资源。

它勾勒出一组中众多设备上的数据流图节点,以及多个计算设备上的一个设备内的数据流图节点,涵盖 CPU、GPU 和张量处理单元 (TPU)。

它允许开发人员试验现代训练和优化算法,因为它拥有一系列完全专注于深度学习模型训练和接口的应用程序。

它的开发是为了使计算堆栈更明显、更快速,适用于广泛的机器学习和深度学习应用程序。它是一个开放的端到端符号数学库,用于管理不同的编程。

在构建满足收集训练模型所需数据的过程的神经网络时,经常使用它。它是直接或通过包装库制作深度学习模型的基础库,以简化在 TensorFlow 上设计的过程。

它具有高可扩展性,可以促进不同类型的高级数值计算,而这些高级数值计算是为大规模机器学习应用程序训练深度学习模型所需的。它以方便的语言“ Python ”执行任务,并以“ C++ ”执行它们。

TensorFlow 的主要特点

  • 使用包含多空间阵列的数学表达式精确地发挥作用。
  • 对机器和大型数据集进行复杂计算的高度校准。
  • 借助深度神经网络和机器学习理论。
  • 它使用数据流图执行计算;

TensorFlow 的主要构成

  • TensorFlow:之所以称为 TensorFlow,是因为它将输入视为多维数组,也称为张量。所有的计算都涉及张量。张量是描述所有类型数据的 n 维向量或矩阵。
  • 图形:构建了一种流程图或一组各种操作的计算,这些操作在输入时执行。输入从一端进入,经过各种操作并作为输出从另一端退出。所有的操作都发生在一个图中,每个操作被称为“操作节点”并相互链接。

TensorFlow 生态系统

它结合了多种工具和库来帮助和更有效地工作;

  • TensorBoard:是一组用于检查、可视化和了解 TensorFlow 图形和执行的 Web 应用程序。它可用于查看 TensorFlow 图并放大图子部分的详细信息。它的使用包括绘制训练运行期间的损失和准确度、可视化张量随时间变化的直方图、描述图像等额外数据、比较训练运行和运行时统计数据、总内存使用量、张量形状等。

  • Datalab:Jupyter notebooks 方便探索数据、解释 TensorFlow 模型和强制训练运行。Google Cloud Datalab 提供了一个基于 Jupyter 的工作区,其中包含所有工具,例如用于数据集的 BigQuery、用于数据处理的 Apache Beam,以及 NumPy、Pandas、Scikit-learn、Matplotlib 等其他工具。

  • Facets:是最近发布的用于数据可视化的开源工具,可帮助识别 ML 数据集并获得每个属性的形状和特征的想法,并观察模式和相互之间的交互。

TensorFlow 的优势

作为 Google 开发的应用程序,TensorFlow 具有多种优势,其中一些将在下面讨论;

TensorFlow 为 ML 提供的最大好处是“抽象”,而不是纠结于实现算法的细节。它确定有意义的方法,将一个函数的输出附加到另一个函数的输入,使开发人员可以专注于应用程序的完整逻辑。

TensorFlow 为调试 TensorFlow 应用程序的开发人员提供了额外的便利。它具有“ Eager Execution ”模式,可以独立且清晰地检查和修改每个图形操作,而不是将整个图形构建为单个对象并立即对其进行评估。同样,“ TensorBoard ”可视化有助于检查和安排基于 Web 的交互式仪表板中的图形执行。

TensorFlow 在 Google 的支持下获得了许多优势。谷歌一直在支持该项目的开发步伐,并围绕 TensorFlow 做出了许多重要贡献,使其易于部署和使用。这些是一个“在线中心”,用于共享使用该框架开发的模型以及该框架在浏览器和移动设备中的整合。

TensorFlow 的同类深度学习框架

TensorFlow 与许多机器学习框架竞争,例如PyTorch、CNTK、MXNet,这些都是深度学习领域的主要框架。接下来将为您比较它们与 TensorFlow 差异:

  • PyTorch 具有使用 Python 开发的优势,与 TensorFlow 有许多相似之处;它允许根据业务的要求进行设计,以及许多有益的元素。显然,对于需要在更短时间内运行的项目的快速开发,TensorFlow 更受欢迎,而 TensorFlow 更适合大型项目和更复杂的任务。

  • CNTK是 Microsoft 认知工具包,可以更快地运行许多神经网络任务,并包含大量 API(C、C++、Java、Python)。但CNTK的学习和部署不如 TensorFlow 方便。相反,TensorFlow 使用图形格式来解释数据流和建模深度学习神经网络的目标。

  • Apache MXNet被亚马逊认可为 AWS 上的主要深度学习框架,可以计算大量 GPU 和机器,并加强广泛的语言 API,如 Python、R、Scala、C++、Pearl、Go、JavaScript、Julia。但是,其原始 API 不适用于 TensorFlow。

TensorFlow:应用程序

  1. 它应用在了各种 Google 产品和应用程序中,包括 Gmail、Google翻译、Google地图、Google搜索、照片、语音、Android、YouTube 和 Play等。

  2. 世界各地的领先企业都在使用它,其中包括 Airbnb、Ebay、Dropbox、Snapchat、Twitter、IBM、Uber,当然还有 Google。

总结

在本教程中,您发现了用于深度学习和机器学习的 TensorFlow 开源库。您了解 TensorFlow 是用于快速数值计算的库,专门针对为机器学习应用程序开发的大型深度学习模型的演化和验证所需的各种类型的操作而开发。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:TensorFlow 是什么?有什么作用? - Python技术站

(1)
上一篇 2023年4月8日 上午11:52
下一篇 2023年4月5日 下午9:11

相关文章

  • Ubuntu16.04下安装tensorflow(CPU)spyder+pycharm

    1.下载并安装Anaconda 1.1 下载 从Anaconda官网(https://www.continuum.io/downloads)上下载Linux版本 https://repo.continuum.io/archive/(推荐python3.5) https://mirrors.tuna.tsinghua.edu.cn/tensorflow/lin…

    tensorflow 2023年4月7日
    00
  • Tensorflow中的变量 assign()函数 Tensorflow数据读取的方式 assign()函数

    从初识tf开始,变量这个名词就一直都很重要,因为深度模型往往所要获得的就是通过参数和函数对某一或某些具体事物的抽象表达。而那些未知的数据需要通过学习而获得,在学习的过程中它们不断变化着,最终收敛达到较好的表达能力,因此它们无疑是变量。 正如三位大牛所言:深度学习是一种多层表示学习方法,用简单的非线性模块构建而成,这些模块将上一层表示转化成更高层、更抽象的表示…

    tensorflow 2023年4月8日
    00
  • 浅谈tensorflow之内存暴涨问题

    1. 简介 在使用TensorFlow进行深度学习模型训练时,可能会遇到内存暴涨的问题。本攻略将浅谈TensorFlow内存暴涨问题及其解决方法。 2. 内存暴涨问题 在TensorFlow中,内存暴涨问题通常是由于模型训练过程中,数据量过大导致的。当模型训练过程中需要处理大量数据时,TensorFlow会将数据存储在内存中,如果数据量过大,就会导致内存暴涨…

    tensorflow 2023年5月15日
    00
  • (原创)使用tensorflow及anaconda(spyder)时遇到的问题

    (1)问题一:如何在tensorflow环境下使用spyder 答:在anaconda navigator中environment中搜索tensorflow,安装适合tensorflow的spyder (2)问题二:在在tensorflow环境下使用spyder时有些库文件(比如matplotlib)显示no module,如何解决 答:anaconda下已…

    tensorflow 2023年4月5日
    00
  • 解决Jupyter notebook[import tensorflow as tf]报错

     参考: https://blog.csdn.net/caicai_zju/article/details/70245099

    tensorflow 2023年4月6日
    00
  • 远程ubuntu虚拟机Tensorflow搭建 – 1 SSH连接

    感谢英才计划,我们每个人收获了一台清华的虚拟机。 4 core CPU 16GB Memory 80GB Disk 配置不错了。。。   用ssh密钥登录。赠送hadoop-key.pem一把。   先用sudo ssh ubuntu@ipipipipip登录一个接口虚拟机吧。 很好,然后把这个作为跳板上自己的虚拟机:ssh ubuntu@myipipipi…

    2023年4月8日
    00
  • TensorFlow2报错:tf.placeholder() is not compatible with eager execution.

      当我们将TensorFlow1.x中的程序迁移到2.0+版本时,在之前1.x版本中有函数tf.placeholder(),替换成tf.compat.v1.placeholder(),运行时报如下错误: tf.placeholder() is not compatible with eager execution.   解决方案: 在代码前加入下面一行即可…

    tensorflow 2023年4月8日
    00
  • tensorflow 2.0 学习 (十五)自编码器 FashionMNIST数据集图像重建与生成

    这里就不更新上一文中LSTM情感分类问题了, 它只是网络结构中函数,从而提高准确率。 这一篇更新自编码器的图像重建处理, 网络结构如下: 代码如下: 1 import os 2 import numpy as np 3 import tensorflow as tf 4 from tensorflow import keras 5 from tensorfl…

    2023年4月8日
    00
合作推广
合作推广
分享本页
返回顶部