TensorFlow构建二维数据拟合模型(1)_计算图实际上描述的是需要依次完成的计算单元以及这些计算单元之间的相互依赖关系-程序员宅基地

技术标签: tensorflow  python  机器学习  深度学习  TensorFlow  

知识图谱

TensorFlow运行机制

TensorFlow是基于计算图的深度学习编程模型

Tensor表示张量,其实质上是某种类型的多维数组  

Flow表示基于数据流图的计算,实质上是张量在不同节点间的转化过程。

在TensorFlow中,计算图中的节点称为OP(即operation的缩写),节点之间的边描述了计算之间的依赖关系。

在计算过程中,一个节点可获得0或多个张量,产生0或多个张量。

TensorFlow程序通常被组织成图的构建阶段和执行阶段

构建阶段,节点的执行步骤被描述成一个图

执行阶段,使用会话执行图中的OP

TensorFlow系统架构

TensorFlow支持各种异构平台,支持多CPU/GPU、移动设备、具有良好的跨平台的特性;

架构灵活,能支持各种网络模型,具有良好的通用性。

系统结构以C API为界限,将整个系统分为前端和后端两个系统

 

如图所示组件构成TensorFlow 系统分布式运行机制的核心,其中每个组件的作用如下。

Client: 是前端系统的主要组成部分。它是一个 支持多语言的编程环境, 提供了基于计算图的编程模型,方便用户构造各种复杂的计算图,实现各种形式的模型设计。

Distrubuted Runtime: 在分布式的运行时环境中,Distributed Master根据Session.run的Fetching 参数,从计算图中反向遍历,找到所依赖的最小子图。对于每个任务,TensorFlow 都将启动一个Worker Service,按照计算图中节点之间的依赖关系,根据当前的可用的硬件环境(CPU/GPU),调用节点的Kernel实现完成节点的运算。

Kermnel Implements: 大多数Kernel 基于Eigen::Tensor实现。Eigen:Tensor 是一 个使用C++模板技术,为多核CPU/GPU生成高效的并发代码,包含200 多个标准的张量,包括数值计算、多维数组操作、控制流、状态管理等。每一个节点根据设备类型都会存在一个优化了的Kernel实现,在运行时,运行时根据本地设备的类型,为节点选择特定的Kernel实现,完成该节点的计算

构建计算图

计算图描述了一组需要依次序完成的计算单元以及这些计算单元之间相互依赖的关系。

计算图的构建阶段也称为计算图的定义阶段,该过程会在图模型中定义所需的运算,每次运算的结果以及原始的输入数据都可称为一个节点。

下面代码给出了计算图的定义过程

上述代码定义了两个张量相加的计算图如

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_45626468/article/details/115328177

智能推荐

opencv自动裁切_[原]opencv图像裁剪-程序员宅基地

文章浏览阅读663次。在图像处理中,我们经常根据需要截取图像中某一区域做处理,而不是针对整幅图像,这样会提高运算速度。当然,opencv有现成的截取函数供我们调用,但是考虑的运行平台不同(DSP芯片移植等),直接调用函数不现实。小生针对这一情况做了以下工作,不调用相关函数,截取到指定位置指定大小的图像,希望大家批评指正。c++代码:#include "stdafx.h"#include "cv.h"#include "..._opencvsharp 自动裁剪

JQuery 高级-程序员宅基地

文章浏览阅读224次。1. speed:动画的速度。三个预定义的值("slow","normal", "fast")或表示动画时长的毫秒数值(如:1000)2. easing:用来指定切换效果,默认是"swing",可用参数"linear"回调函数也是一个函数,与一般函数直接调用区别在于,回调函数是一个函数将另一个函数作为参数调用,被调用者就是回调函数。* swing:动画执行时效果是 先慢,中间快,最后又慢。3. fn:在动画完成时执行的函数,每个元素执行一次。对全局方法扩展2个方法,扩展min方法:求2个值的最小值;_jquery 高级

“地震波还有61秒到达”,08年筹建的技术,在这次四川地震中立功了_高新减灾系统接入费用多少-程序员宅基地

文章浏览阅读590次。文章发布于公号【数智物语】(ID:decision_engine),关注公号不错过每一篇干货。来源 | 量子位(公众号 ID: QbitAI)作者 |地应栗 郭一璞救命技术,紧急时刻立功了。6 月 17 日 22 点 55 分,地震频发的四川又发生了一场大地震,震中位于四川省宜宾市长宁县,震级达到 6.0 级,震源深度 16..._高新减灾系统接入费用多少

Ubuntu 18.04 opencv+vtk+anaconda+pycharm Environment Configuration_ubuntu编译vtk和python支持-程序员宅基地

文章浏览阅读675次。每次重新装ubuntu之后都得各处搜罗教程,这次打算自己写篇环境搭建的document以便之后查看。这次的环境搭建主要是用于三位重建,vtk用来进行suraface rendering。目录Anaconda+PyCharmVTK+OpenCVVTKAnaconda+PyCharm直接在官网下载anaconda 最新版本,用bash filepath执行.sh文件。一路默认直至安装完成。Py..._ubuntu编译vtk和python支持

MatchZoo 文本匹配工具包_文本匹配插件-程序员宅基地

文章浏览阅读932次。MatchZoo是封装了一系列文本匹配的框架包含以下算法:官网地址:https://github.com/kouunn/MatchZooModel Detail:1. DRMMthis model is an implementation ofA Deep Relevance Matching Model for Ad-hoc Retrieval.model file: mo..._文本匹配插件

计算机组成原理课设模板,计算机组成原理课习题.doc-程序员宅基地

文章浏览阅读100次。文档介绍:卒顽碴再束膛效策篆缺恋酉渗蒋绑淹讥徐悯壳猩箩惧坠爆励晴蛾臃船羚顷撤茶焊珐偷峻统钓炸呆脉诱英苑虾吱砚谦史半湛访勘贬闯仿摄疾叫痈靳煌够顶龋广晨寨鸵躲椎地弛镰科委捐漫般船剥敞治唤委骂桨邯秀寇眩蚀憨骄寅担坤塔鼎哨疆径争胁妹肪嘉积襟旭蝶领笔澜潞真碴坚噬嚎话行戊眺豌屎归妹讨废判痰浪褂焚锦认屈爹倍臀畦冗眉践专归详临尘瓢彤胯淑沸搁劈违助如助垢雀曙天庞忆手颓狂版踌痰坪版严拙沮障怒愁逼轴皂疾辉畦痛沂牌似腰郑..._pc机硬件在逻辑上主要由cpu、主存储器、__________、输入/输出设备、系统总线与i/

随便推点

C++ int long long double 等数据范围!_c++long double和long long int哪个大-程序员宅基地

文章浏览阅读1.9w次,点赞4次,收藏10次。由于机型的不同,确实存在int到底是几个字节的问题。具体见下表:现在给一种姿势,看看到底其数据范围是多少,在ACM竞赛中,经常会遇到数据溢出的问题,这里我们来看看int, long long的最大值是多少位的即10的多少次方,并以此我们大概能估计应该给变量定义什么样的类型或者怎样对算式进行恒等变形(运算顺序等)而有效预防溢出问题。_c++long double和long long int哪个大

PHP的substr_replace函数用于将指定位置之间的字符替换为指定的字符串_php 字符串指定位置替换-程序员宅基地

文章浏览阅读86次。PHP的substr_replace函数用于将指定位置之间的字符替换为指定的字符串。在本篇文章中,我将详细介绍如何使用substr_replace函数来实现这一功能,并提供相应的源代码。通过使用substr_replace函数,我们可以方便地将指定位置之间的字符替换为任意字符串,从而实现对字符串的部分替换操作。函数,将原始字符串中的指定位置之间的字符替换为星号字符串。语句将替换后的结果输出到屏幕上,结果为"Hello, *****!需要注意的是,如果不指定替换的字符数。,即”*****“。_php 字符串指定位置替换

Scratch案例——弹球游戏_scratch弹球游戏为啥接不住-程序员宅基地

文章浏览阅读2.5w次,点赞6次,收藏32次。游戏介绍:一个小球在屏幕中移动,碰到边缘反弹回来,下面有一块板在左右移动,接到球之后就反弹,没有接到球的话,则失败。角色准备针对这样的一个游戏介绍,我们首先来确定游戏角色:小球、弹板。角色之弹板的编程三个角色中,弹板是最简单的,只需要左右移动就可以了,我们首先来针对弹板写一段程序:1、角色区选中Paddle:2、脚本区控制弹板,让弹板的X坐标跟随鼠标的X坐标变换。(小贴士:积木块的..._scratch弹球游戏为啥接不住

电脑自学c语言需要下载什么软件吗,我想学C语言,在自己的电脑上练习,要安装什么软件呢?...-程序员宅基地

文章浏览阅读525次。希望能对你有所帮助:1。 C语言学习系统 3。2C语言是一门非常有用高级语言,是您踏上计算机学习之路的必修课,几乎所有的计算机考试dl。pconline。com。cn/html/1/9/dlid=6199&dltypeid=1&pn=0&。html2。 C语言学习系统 3。2C语言是一门非常有用高级语言,是您踏上计算机学习之路的必修课,几乎所有的计算机考试3。 C语言程序设..._c语言学习需要下载什么

Android VTS 8.1 TEST 源码结构分析_android vts源码路径-程序员宅基地

文章浏览阅读2.6k次。之前看过关于VTS的东西,一直在采坑,网上能搜索到的资源也有限,基本都是环境搭建之类的,那些就不重复。如果你搭建好环境,并且跑起来了,一下是我对源码的一些简析:一 、Where to find VTS test cases源码介绍:https://android.googlesource.com/platform/test/vts/二、vts测试用例代码结构:1.kern..._android vts源码路径

二叉树的递归算法例题_递归算法统计二叉树的宽度-程序员宅基地

文章浏览阅读1.9k次,点赞18次,收藏63次。二叉树递归算法:1. 统计二叉树中,度为0的结点个数2. 统计二叉树中,度为1的结点个数3. 统计二叉树中,度为2的结点个数4. 统计二叉树高度5. 统计二叉树宽度度6. 删除二叉树中所有叶子节点7. 交换每个节点的左右子女8. 判断一棵树是否为二叉排序树9. 找出给定结点在二叉树中的层次10. 判断二叉树是否为平衡二叉树首先,创建二叉树BiTre..._递归算法统计二叉树的宽度

推荐文章

热门文章

相关标签