0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

tensorflow的构建流程

姚小熊27 来源:网络整理 作者:网络整理 2020-12-04 15:01 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

tensorflow的构建流程

tf.Graph() 表示实例化了一个类,一个用于 tensorflow 计算和表示用的数据流图,通俗来讲就是:在代码中添加的操作(画中的结点)和数据(画中的线条)都是画在纸上的“画”,而图就是呈现这些画的纸,你可以利用很多线程生成很多张图,但是默认图就只有一张。

例如有如下代码:

import tensorflow as tf

g = tf.Graph()

## add nodes to the graph

with g.as_default():

a = tf.constant(1, name=‘a’)

b = tf.constant(2, name=‘b’)

c = tf.constant(3, name=‘c’)

z = 2 * (a - b) + c

## launch the graph

with tf.Session(graph=g) as sess:

writer = tf.summary.FileWriter(“E://PycharmProjects//Graph”, g)

print(‘2*(a-b)+c =》 ’, sess.run(z))

打开cmd命令行,输入tensorboard --logdir=E:\PycharmProjects\Graph

回车后,打开google浏览器,输入得的的网址即可看到 我们生成的流程图了:

TensorFlow执行流程

TensorFlow的基础运算

在搞神经网络之前,先让我们把TensorFlow的基本运算,也就是加减乘除搞清楚。

首先,TensorFlow有几个概念需要进行明确:

1 图(Graph):用来表示计算任务,也就我们要做的一些操作。

2 会话(Session):建立会话,此时会生成一张空图;在会话中添加节点和边,形成一张图,一个会话可以有多个图,通过执行这些图得到结果。如果把每个图看做一个车床,那会话就是一个车间,里面有若干个车床,用来把数据生产成结果。

3 Tensor:用来表示数据,是我们的原料。

4 变量(Variable):用来记录一些数据和状态,是我们的容器。

5 feed和fetch:可以为任意的操作(arbitrary operation) 赋值或者从其中获取数据。相当于一些铲子,可以操作数据。

形象的比喻是:把会话看做车间,图看做车床,里面用Tensor做原料,变量做容器,feed和fetch做铲子,把数据加工成我们的结果。

2.1 创建图和运行图:

下面我们创建一个图,并在Session中执行它,不用担心看不懂,每句代码都会注释,只有有编程基础,都能OK:

上面就是用TensorFlow进行了一个最简单的矩阵乘法。

2.2 创建一个变量,并用for循环对变量进行赋值操作

可以看到,除了变量创建稍微麻烦一些和必须建立session来运行,其他的操作基本和普通Python一样。

2.3 通过feed设置placeholder的值

有的时候,我们会在声明变量的时候不赋值,计算的时候才进行赋值,这个时候feed就派上用场了。


责任编辑:YYX

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • tensorflow
    +关注

    关注

    13

    文章

    331

    浏览量

    61853
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    【上海晶珩睿莓1开发板试用体验】TensorFlow-Lite物体归类(classify)

    目前尚未得知睿莓1开发板上面有NPU或者DPU之类的额外处理器,因此使用树莓派系列使用最广泛的TensorFlow-Lite库进行物体归类,使用CPU运行代码,因此占用的是CPU的算力。在
    发表于 09-12 22:43

    无法将Tensorflow Lite模型转换为OpenVINO™格式怎么处理?

    Tensorflow Lite 模型转换为 OpenVINO™ 格式。 遇到的错误: FrontEnd API failed with OpConversionFailure:No translator found for TFLite_Detection_PostProcess node.
    发表于 06-25 08:27

    FlexBuild构建Debian 12,在“tflite_ethosu_delegate”上构建失败了怎么解决?

    , found in /home/joezhang/workspace/tn_debian_FlexBuild 构建/components_lsdk2412/apps/ml/tflite/tensorflow
    发表于 04-01 06:53

    用树莓派搞深度学习?TensorFlow启动!

    介绍本页面将指导您在搭载64位Bullseye操作系统的RaspberryPi4上安装TensorFlowTensorFlow是一个专为深度学习开发的大型软件库,它消耗大量资源。您可以在
    的头像 发表于 03-25 09:33 963次阅读
    用树莓派搞深度学习?<b class='flag-5'>TensorFlow</b>启动!

    TensorFlow模型转换为中间表示 (IR) 时遇到不一致的形状错误怎么解决?

    使用命令转换为 Tensorflow* 模型: mo --input_model ../models/middlebury_d400.pb --input_shape [1,352,704,6
    发表于 03-07 08:20

    使用OpenVINO™ 2020.4.582将自定义TensorFlow 2模型转换为中间表示 (IR)收到错误怎么解决?

    转换自定义 TensorFlow 2 模型 mask_rcnn_inception_resnet_v2_1024x1024_coco17 要 IR 使用模型优化器命令: 注意上面的链接可能无法
    发表于 03-07 07:28

    Tensorflow Efficientdet-d0模型转换为OpenVINO™ IR失败了,怎么解决?

    使用转换命令 mo --saved_model_dir /home/obs-56/effi/saved_model 将 TensorFlow* efficientdet-d0 模型转换为 IR
    发表于 03-06 08:18

    可以使用OpenVINO™工具包将中间表示 (IR) 模型转换为TensorFlow格式吗?

    无法将中间表示 (IR) 模型转换为 TensorFlow* 格式
    发表于 03-06 06:51

    使用各种TensorFlow模型运行模型优化器时遇到错误非法指令怎么解决?

    使用各种 TensorFlow 模型运行模型优化器时遇到 [i]错误非法指令
    发表于 03-05 09:56

    TensorFlow saved_model格式转换为IR遇到错误怎么解决?

    TensorFlow saved_model格式转换为 IR。 遇到错误: FrontEnd API failed with OpConversionFailure: : No translator found for TensorListFromTensor node.
    发表于 03-05 09:12

    为什么无法使用OpenVINO™模型优化器转换TensorFlow 2.4模型?

    --tensorflow_object_detection_api_pipeline_config /ssd_mobilenet_v2_fpnlite_640x640_coco17_tpu-8/pipeline.config
    发表于 03-05 09:07

    OpenVINO™是否与TensorFlow集成支持Raspberry Pi?

    无法确定OpenVINO™是否与 TensorFlow* 集成支持 Raspberry Pi。
    发表于 03-05 08:26

    为什么无法将自定义EfficientDet模型从TensorFlow 2转换为中间表示(IR)?

    将自定义 EfficientDet 模型从 TensorFlow* 2 转换 为 IR 时遇到错误: [ ERROR ] Exception occurred during running replacer \"REPLACEMENT_ID\" ()
    发表于 03-05 06:29

    DevEco Studio构建分析工具Build Analyzer 为原生鸿蒙应用开发提速

    过程中的关键信息进行细粒度追踪和记录,通过泳道图可直观展示构建过程中线程的执行情况,并与构建日志联动,帮助开发者更直观地跟踪构建流程,快速发现性能问题。可以看出其中最耗时的任务是MyT
    发表于 02-17 18:06

    构建云原生机器学习平台流程

    构建云原生机器学习平台是一个复杂而系统的过程,涉及数据收集、处理、特征提取、模型训练、评估、部署和监控等多个环节。
    的头像 发表于 12-14 10:34 676次阅读