TensorFlow

简介: 【6月更文挑战第26天】TensorFlow。

TensorFlow的关注数在GitHub上表示为star的数量,截止到2019年6月,已经超过了12万,不同框架的star数如图所示。

不同框架的star数
TensorFlow中文社区对自己的框架给出的定义是:TensorFlow是一个采用数据流图(Data Flow Graphs)的,用于数值计算的开源软件库。它灵活的架构允许用户在多种平台上展开计算,如台式计算机中的一个或多个CPU(或GPU)、服务器、移动设备等。
该社区还对TensorFlow的六大优势做了重点阐述。
(1)高度的灵活性。TensorFlow不是一个严格的“神经网络”库。只要用户可以将计算表示为一个数据流图,就可以使用TensorFlow。用户通过构建图描写驱动计算的内部循环。TensorFlow提供了有用的工具来帮助用户组装“子图”(常用于神经网络),用户可以在TensorFlow的基础上完成“上层库”的搭建,并且不会产生性能损耗。若找不到想要的底层数据操作,可以通过C++代码来丰富其底层操作。
(2)可移植性(Portability)。TensorFlow可以在CPU和GPU上运行,如可以运行在台式机、服务器、手机移动设备上等。TensorFlow可以在用户的笔记本电脑上实现机器学习算法,或者不改变代码就可以实现将训练的模型在多个CPU上规模化运算。TensorFlow还可以将训练好的模型放入手机App里,并可以将模型作为云端服务运行在服务器上,或者运行在Docker容器里。
(3)将科研和产品联系在一起。过去如果要将科研中的机器学习算法用到产品中,需要大量的代码重写工作。开发者可使用TensorFlow尝试新的算法,产品团队使用TensorFlow来训练和使用计算模型,并直接提供给在线用户。使用TensorFlow可以让应用型研究者将想法迅速运用到产品中,也可以让学术型研究者更直接地分享代码,从而提高科研产出率。
(4)自动求微分。基于梯度的机器学习算法会受益于TensorFlow自动求微分的功能。用户只需要定义预测模型的结构,将这个结构和目标函数(Objective Function)结合在一起,并添加数据,TensorFlow就将自动为用户计算相关的微分导数。计算某个变量相对于其他变量的导数仅仅是通过扩展图来完成的,所以用户能一直了解计算过程。
(5)多语言支持。TensorFlow具有合理的C++使用界面,也有一个易用的Python使用界面来构建和执行Graphs。用户可以直接写Python、C++程序,也可以通过交互式的IPython界面用TensorFlow尝试某些想法,它可以帮助用户将笔记、代码、可视化内容等有条理地归置好。
支持TensorFlow的语言包括Python、C++、Java、C#等,如图所示,但运用最多的还是Python。

支持TensorFlow的语言
(6)性能最优化。由于TensorFlow提供了对线程、队列、异步操作等的支持,因此可以将用户硬件的计算潜能全部发挥出来。用户可以自由地将TensorFlow图中的计算元素分配到不同设备上,TensorFlow可以管理好这些不同的计算副本。
现在,很多公司都在使用TensorFlow做产品。谷歌在2017年就有6000多个产品在使用TensorFlow。当然,国内的京东、小米等公司也在使用TensorFlow做人工智能的开发。

目录
相关文章
|
1月前
|
机器学习/深度学习 算法 TensorFlow
精通 TensorFlow 1.x:11~15(4)
精通 TensorFlow 1.x:11~15(4)
41 0
|
1月前
|
机器学习/深度学习 自然语言处理 算法
精通 TensorFlow 1.x:6~10(3)
精通 TensorFlow 1.x:6~10(3)
44 0
|
1月前
|
机器学习/深度学习 TensorFlow API
精通 TensorFlow 1.x:1~5(2)
精通 TensorFlow 1.x:1~5(2)
89 0
|
10月前
|
机器学习/深度学习 TensorFlow API
tensorflow详解
@[TOC](目录) TensorFlow 是一个由 Google Brain 团队开发的高级开源机器学习框架,旨在为开发者提供一种灵活、高效的方式来构建和训练神经网络模型,以及进行各种机器学习任务,如文本分析、图像识别、自然语言处理等。TensorFlow 提供了丰富的 API 和工具,使开发者可以轻松地构建、训练和部署深度学习模型 # 1. 基本介绍 TensorFlow 是一个开源的深度学习框架,由 Google Brain 团队开发和维护。它可以用于构建各种类型的神经网络,包括卷积神经网络、循环神经网络、生成对抗网络等。TensorFlow 提供了丰富的 API 和工具,使得开发者可以
210 0
|
9月前
|
机器学习/深度学习 自然语言处理 搜索推荐
TensorFlow详解
TensorFlow是一个开源的机器学习框架,由Google开发。它是一个强大、高度可扩展的计算框架,可以用于各种机器学习任务,包括图像和语音识别、自然语言处理、推荐系统等。 TensorFlow 是一种由 Google 开发的开源机器学习框架,它可以帮助我们构建和训练机器学习模型。无论您是一名初学者还是一名专业人士,本文将为您提供一份完整的 TensorFlow 指南,帮助您了解 TensorFlow 的基础知识,以及如何在实际项目中应用它。
127 0
|
1月前
|
机器学习/深度学习 TensorFlow API
TensorFlow 2.0简单介绍及使用
TensorFlow 2.0简单介绍及使用
|
1月前
|
机器学习/深度学习 自然语言处理 算法
精通 TensorFlow 1.x:6~10(2)
精通 TensorFlow 1.x:6~10(2)
59 0
|
1月前
|
机器学习/深度学习 算法 数据可视化
精通 TensorFlow 1.x:11~15(3)
精通 TensorFlow 1.x:11~15(3)
55 0
|
1月前
|
TensorFlow API 算法框架/工具
精通 TensorFlow 1.x:1~5(1)
精通 TensorFlow 1.x:1~5
87 0
|
1月前
|
TensorFlow API 算法框架/工具
精通 TensorFlow 1.x:16~19
精通 TensorFlow 1.x:16~19
51 0