Tensorflow = Tensor(张量) + flow(数据流图)

1、张量

张量可不是“麻辣烫”!张量是一个很抽象的概念,直观的来说,张量在tensorflow中就像一个杯子,起到保存数据的作用,我们也可以把张量看成一个不同维度的数组。

0阶的张量是一个标量,就是一个数值;

1阶的张量是一个向量;

2阶的张量是一个矩阵;

3阶的张量是一个三维矩阵。

以此类推...

  1. #定义0阶张量
  2. a = tf.constant(2.,name="a")
  3. #定义1阶张量
  4. b = tf.constant([3],name="b")
  5. #定义2阶张量
  6. c = tf.constant([[4,5]],name="c")
  7. print(a)
  8. print(b)
  9. print(c)

输出结果:

  1. Tensor("a:0", shape=(), dtype=float32)
  2. Tensor("b:0", shape=(1,), dtype=int32)
  3. Tensor("c:0", shape=(1, 2), dtype=int32)

a、b、c三个张量分别是0阶、1阶、2阶,可以看出来Tensor有类型、形状两个属性。

2、数据流图

如果大家看过官方的教程,那么对上图肯定很熟悉。所谓Tensorflow,简单的说,就是tensor(张量)数据在图中flow(流动)计算的过程。

  1. import tensorflow as tf
  2. tf.reset_default_graph()
  3.  
  4. with tf.variable_scope("a"):
  5. a = tf.constant(1,name="a")
  6.  
  7. with tf.variable_scope("b"):
  8. b = tf.constant(2,name="b")
  9.  
  10. with tf.variable_scope("c"):
  11. c = tf.constant(3,name="c")
  12.  
  13. output1 = tf.add(a,b,name="out1")
  14. output2 = tf.add(c,output1,name="out2")
  15. write = tf.summary.FileWriter("E://logs",tf.get_default_graph())
  16. write.close()

我这里使用tensorboard来查看数据流图,将数据流图存储在e://logs目录下,然后终端执行:

  1. tensorboard --logdir=e://logs//

打开tensorboard可以看到如图结果:

这个数据流图就为我们很好的演示了“tensor(张量)数据在图中flow(流动)计算的过程”。我们定义三个张量a,b,c,其中out1=a+b,out2=out1+c,得到最终结果。

Tensorflow教程(3)什么是张量?什么是数据流图?的更多相关文章

  1. Tensorflow教程(2)Tensorflow的常用函数介绍

    1.tf.constant tf.constant用来定义一个常量,所谓常量,广义上讲就是“不变化的量”.我们先看下官方api是如何对constant函数来定义的: tf.constant( valu ...

  2. Windows10下用Anaconda3安装TensorFlow教程

    这是我在自己的笔记本电脑上用Anaconda3安装TensorFlow的教程 1. 安装好Anaconda3版本 (1) 注:可以发现最新版本是Anaconda5了(没关系,下载就是了) (2) 注意 ...

  3. EffectiveTensorflow:Tensorflow 教程和最佳实践

    Tensorflow和其他数字计算库(如numpy)之间最明显的区别在于Tensorflow中的操作是符号. 这是一个强大的概念,允许Tensorflow进行所有类型的事情(例如自动区分),这些命令式 ...

  4. AI学习---TensorFlow框架介绍[图+会话+张量+变量OP+API]

    TensorFlow的数据流图 TensorFlow的结构分析: 图 + 会话 TensorFlow = 构图阶段(数据与操作的执行步骤被描绘出一个图) + 执行图阶段(使用回话执行构建好的图中操作) ...

  5. 【适合N卡独显电脑的环境配置】Tensorflow教程-Windows 10下安装tensorflow 1.5.0 GPU with Anaconda

    注意: 1.目前Anaconda 更新原命令activate tensorflow 改为 conda activate tensorflow 2. 目前windows with anaconda 可以 ...

  6. TensorFlow框架(一) 张量、计算图、会话

    参考:中国大学MOOC 北京大学 曹健<TensorFlow笔记> 基于TensorFlow的NN:用张量表示数据,用计算图搭建神经网络,用会话执行计算图,优化线上的权重(参数),得到模型 ...

  7. TensorFlow进阶(二)---张量的操作

    张量操作 在tensorflow中,有很多操作张量的函数,有生成张量.创建随机张量.张量类型与形状变换和张量的切片与运算 生成张量 固定值张量 tf.zeros(shape, dtype=tf.flo ...

  8. TensorFlow教程——Bi-LSTM+CRF进行序列标注(代码浅析)

    https://blog.csdn.net/guolindonggld/article/details/79044574 Bi-LSTM 使用TensorFlow构建Bi-LSTM时经常是下面的代码: ...

  9. tensorflow 教程 文本分类 IMDB电影评论

    昨天配置了tensorflow的gpu版本,今天开始简单的使用一下 主要是看了一下tensorflow的tutorial 里面的 IMDB 电影评论二分类这个教程 教程里面主要包括了一下几个内容:下载 ...

随机推荐

  1. Java实现第八届蓝桥杯最大公共子串

    最大公共子串 最大公共子串长度问题就是: 求两个串的所有子串中能够匹配上的最大长度是多少. 比如:"abcdkkk" 和 "baabcdadabc", 可以找到 ...

  2. Ansible facts详解

    Ansible是一个系列文章,我会尽量以通俗易懂.诙谐幽默的总结方式给大家呈现这些枯燥的知识点,让学习变的有趣一些. Ansible系列博文直达链接:Ansible入门系列 前言 如果你跟着前面的文章 ...

  3. Android开发项目中常用到的开源库

    圆形头像 https://github.com/hdodenhof/CircleImageView ButterKnife https://github.com/JakeWharton/butterk ...

  4. KMP 知识点整理

    1.扩展KMP 2.最大表示法 3.最小表示法 (扩展KMP) hdu2594  模板题 #include <iostream> #include <cstdio> #incl ...

  5. kafka能做什么?kafka集群配置 (卡夫卡 大数据)

    什么是Kafka 官网介绍: 几个概念: 详细介绍 : 操作kafka: kafka集群 消息测试 问题检测 什么是Kafka 官网介绍: ApacheKafka是一个分布式流媒体平台.这到底是什么意 ...

  6. 杨辉三角 js 练习

    //打印杨辉三角a[[],[],[]] function fn(n){ //i=0 1 2 3.. var a = new Array(n); //行 1 2 3 4.. 创建二维数组. for(va ...

  7. 微信小程序实现连续扫码功能(uniapp)

    注:本文使用的是 uniapp 语法. 微信小程序提供了扫码API:wx.scanCode,但它只能扫一次码,想要实现连续扫码,需要借用 camera 组件.camera 组件不仅能拍照,还具有扫码功 ...

  8. 【分区】使用 GPT 分区表分区并格式化 (非 FreeBSD 系统)

    新购买的 Linux 云服务器,由于数据盘未做分区和格式化,无法使用. 注意: 数据盘中的数据在格式化后将全部被清空.请在格式化之前,确保数据盘中没有数据或已对重要数据进行备份.为避免服务发生异常,格 ...

  9. D2大全

    年初看到cnblogs上有人说看这本旧书,自己也只是瞟了下,后来在看些OOP东西时,想想没事也看看老古董,于是网购了一本电子版可参考下,它们是怎么一步步来,还没来得及多看,贴图于此.

  10. PIVOT | UNPIVOT_1

    Pivot应用 /* <Microsoft SQL Server 2008 T-SQL Fundamentals (PRO-Developer)> <Microsoft SQL Se ...