美文网首页
TesnsorFlow简介

TesnsorFlow简介

作者: Liu91 | 来源:发表于2018-08-06 21:50 被阅读0次

一. Tensorflow中的基本概念

【1】Graph(图)来表示计算任务
【2】Session(会话)执行Graph
【3】Tensor表示数据
【4】Variable维护状态
【5】FeedFetch为任意的操作赋值或者从中获取数据
【6】Tensor(张量)是某一类型的多维数组
【7】OP节点操作

二. Tensorflow的计算图

TensorFlow是基于计算流图的,其命名来源于自身的运行原理。Tensorflow使用图来表示计算任务,如下图所示:

图中的节点被称为op(operation)。一个op获得0个或多个tensor。op执行计算,产生0个或多个tensor。TensorFlow的一个Graph描述(定义)了计算的过程,图只有在Session中启动,才能使op返回具体的tensor。
所以Tensorflow的程序通常分为构建阶段执行阶段。执行的过程就是tensor在计算图中的flow,所以称之为Tensorflow。
# -*- coding: UTF-8 -*-
import tensorflow as tf
# 创建常量op
a = tf.constant([1, 2, 3])
b = tf.constant([4, 5 ,6])
# 创建add的op
c = tf.add(a, b)
print('c before:', c)
# 建立session,用with即用python中的上下文管理器管理这个session,当上下文管理器退出时,会释放资源,结束session
with tf.Session() as sess:
    print(sess.run(c))

输出的结果为:

('c before:', <tf.Tensor 'Add:0' shape=(3,) dtype=int32>)
[5 7 9]

通过session,数据才能在计算图中流动起来,这时候可以得到具体的数值。

(1) Fetch

取回操作是使用Session对象的run()调用执行图时,传入tensor,这些tensor会帮助我们取回结果。
上面的例子我们只取回了一个tensor,也可以取回多个tensor

# -*- coding: UTF-8 -*-

import tensorflow as tf
# 创建常量op
a = tf.constant([1, 2, 3])
b = tf.constant([4, 5 ,6])
# 创建add的op
c = tf.add(a, b)
d = a+c
print('c before:', c)
# 建立session,用with即用python中的上下文管理器管理这个session,当上下文管理器退出时,会释放资源,结束session
with tf.Session() as sess:
    print(sess.run([c, d]))

(2) Feed

feed可以理解为一个占位符,当运行的时候可以临时代替计算图中任意操作中的tensor。

# -*- coding: UTF-8 -*-

import tensorflow as tf
# 创建常量op
a = tf.placeholder(tf.float32)
b = tf.placeholder(tf.float32)
# 创建add的op
c = tf.add(a, b)

# 建立session,用with即用python中的上下文管理器管理这个session,当上下文管理器退出时,会释放资源,结束session
with tf.Session() as sess:
    print(sess.run(c, feed_dict={a: [1.], b: [2.]}))

这里的placeholder就是占位符,在run的时候feed具体的数值。

Tensorflow的发展背景及运行机制

这里可以参见背景&&运行机制

相关文章

  • TesnsorFlow简介

    一. Tensorflow中的基本概念 【1】Graph(图)来表示计算任务【2】Session(会话)执行Gra...

  • Tesnsorflow

    启动tensorboard命令,模型放在model文件夹中tensorboard --logdir=./model

  • 技术分享 | TensorRT详细入门指北,如果你还不了解Ten

    Tensor是一个有助于在NVIDIA图形处理单元(GPU)上高性能推理c++库。它旨在与TesnsorFlow、...

  • 在Windows下使用Anaconda安装TesnsorFlow

    作者 | 弗拉德来源 | 弗拉德(公众号:fulade_me) 下载 Anaconda 首先打开Anaconda官...

  • 18旅游二班各组自我简介汇总

    一组简介 二组简介 三组简介 四组简介 五组简介 六组简介 七组简介 八组简介

  • 简介

    上辈子,洛幽喜欢了东凡一辈子,没有结果,之后她死了,她不后悔,只是为什么她一睁眼,嗯?捏了捏自己的脸,她这是回到了...

  • 简介

    1.主动地去阅读。 2.阅读目的:获得资讯,获得理解 前者为了增进资讯,获得信息,不能增加理解力。后者为了理解更多...

  • 简介

    姓名:赵金星 电话:13903984903 坐标:河南三门峡市陕州区。 三个标签的自我介绍: 1.时间管理践行者 ...

  • 简介

    朱凝不过打错个字,便被天打雷劈回古代。 为毛别人穿个废柴嫡女,她穿个废柴庶女?地位更低了哎 哇喔,别人嫁王爷,她嫁...

  • 简介

    凌波网络考试系统,是一套运行于Windows系统之上的无纸化网络考试软件。包括试卷编辑、分发试卷、学生答卷、自动阅...

网友评论

      本文标题:TesnsorFlow简介

      本文链接:https://www.haomeiwen.com/subject/sypgvftx.html