TensorFlow笔记-03-张量,计算图,会话

  • 搭建你的第一个神经网络,总结搭建八股
  • 基于TensorFlow的NN:用张量表示数据,用计算图搭建神经网络,用会话执行计算图,优化线上的权重(参数),得到模型
  • 张量(tensor):多维数组(列表)
  • 阶:表示张量的维数

·· 维 数 ···· 阶 ········· 名 字 ········· 例 子 ············

·· 0-D ······ 0 ····· 标量 scalar ···· s=1 2 3

·· 1-D ······ 0 ····· 向量 vector ···· s=[1,2,3]

·· 2-D ······ 0 ····· 矩阵 matrix ···· s=[ [1,2,3], [4,5,6],[7,8,9] ]

·· n-D ······ 0 ····· 标量 tensor ···· s=[[[[[....n个

  • 张量可以表示0阶到n阶的数组(列表)
  • **数据类型:Tensorflow 的数据类型有 tf.float32,tf.int32 等

案例:两个张量的加法

  1. # 两个张量的加法
  2. import tensorflow as tf
  3. a = tf.constant([1.0, 2.0])
  4. b = tf.constant([3.0, 4.0])
  5. result = a+b
  6. print(result)

运行结果:

  • 结果分析:

计算图

  • 计算图(Graph):搭建神经网络的计算过程,是承载一个或多个计算机结点的一张图,只搭建网络,不运算

  • 这里要提到另一个概念:神经元 (不是很好理解,慢慢就懂了)

  • 神经网络的基本模型的神经元,神经元的基本模型其实就是数学中的乘加运算

  • 我们搭建如下计算图:

  • X1,X2 表示输入,W1,W2分别是X1到X2的权重

  • 该计算图表示:y = X1W1 + X2W2

    (不能理解就记住,该计算图表示上面的这种含义)

  • 代码tf03文件:https://xpwi.github.io/py/TensorFlow/tf03.py

  1. # 两个张量的加法
  2. import tensorflow as tf
  3. # x 是一个一行两列的张量
  4. x = tf.constant([[1.0, 2.0]])
  5. # x 是一个两行一列的张量
  6. w = tf.constant([[3.0], [4.0]])
  7. '''
  8. 构建计算图,但不运算
  9. y = XW
  10. = x1*w1 + x2*w2
  11. '''
  12. # 矩阵相乘
  13. y = tf.matmul(x, w)
  14. print(y)

运行结果

Tensor("MatMul:0", shape=(1, 1), dtype=float32)

会话

  • 会话(Session):执行计算图中的结点运算
  • 我们用 with 结构实现,语法如下:

with tf.Session() as sess :

print(sess.run(y))

  1. # 两个张量的加法
  2. import tensorflow as tf
  3. # x 是一个一行两列的张量
  4. x = tf.constant([[1.0, 2.0]])
  5. # x 是一个两行一列的张量
  6. w = tf.constant([[3.0], [4.0]])
  7. '''
  8. 构建计算图,但不运算
  9. y = XW
  10. = x1*w1 + x2*w2
  11. '''
  12. # 矩阵相乘
  13. y = tf.matmul(x, w)
  14. print(y)
  15. # 会话:执行节点运算
  16. with tf.Session() as sess:
  17. print(sess.run(y))

运行结果

  • y = 1.03.0 + 2.04.0 = 11

  • 我们可以看到打印出了运算结果

更多文章:Tensorflow 笔记


- 本笔记不允许任何个人和组织转载

TensorFlow笔记-03-张量,计算图,会话的更多相关文章

  1. 吴裕雄 python 神经网络——TensorFlow 图、张量及会话

    import tensorflow as tf g1 = tf.Graph() with g1.as_default(): v = tf.get_variable("v", [1] ...

  2. 20180929 北京大学 人工智能实践:Tensorflow笔记03

    更改的程序部分如下: 另: 难?????????????见链接: https://www.bilibili.com/video/av22530538/?p=17 + (完)

  3. Tensorflow 笔记

    TensorFlow笔记-08-过拟合,正则化,matplotlib 区分红蓝点 TensorFlow笔记-07-神经网络优化-学习率,滑动平均 TensorFlow笔记-06-神经网络优化-损失函数 ...

  4. 20180929 北京大学 人工智能实践:Tensorflow笔记04

    20180929 北京大学 人工智能实践:Tensorflow笔记03(2018-09-30 00:01)

  5. TensorFlow 中的张量,图,会话

    tensor的含义是张量,张量是什么,听起来很高深的样子,其实我们对于张量一点都不陌生,因为像标量,向量,矩阵这些都可以被认为是特殊的张量.如下图所示: 在TensorFlow中,tensor实际上就 ...

  6. TensorFlow笔记-06-神经网络优化-损失函数,自定义损失函数,交叉熵

    TensorFlow笔记-06-神经网络优化-损失函数,自定义损失函数,交叉熵 神经元模型:用数学公式比表示为:f(Σi xi*wi + b), f为激活函数 神经网络 是以神经元为基本单位构成的 激 ...

  7. TensorFlow笔记-04-神经网络的实现过程,前向传播

    TensorFlow笔记-04-神经网络的实现过程,前向传播 基于TensorFlow的NN:用张量表示数据,用计算图搭建神经网络,用会话执行计算图,优化线上的权重(参数),得到模型 张量(tenso ...

  8. TensorFlow笔记-01-开篇概述

    人工智能实践:TensorFlow笔记-01-开篇概述 从今天开始,从零开始学习TensorFlow,有相同兴趣的同志,可以互相学习笔记,本篇是开篇介绍 Tensorflow,已经人工智能领域的一些名 ...

  9. TensorFlow笔记-05-反向传播,搭建神经网络的八股

    TensorFlow笔记-05-反向传播,搭建神经网络的八股 反向传播 反向传播: 训练模型参数,在所有参数上用梯度下降,使用神经网络模型在训练数据上的损失函数最小 损失函数:(loss) 计算得到的 ...

随机推荐

  1. 『Os』常用方法记录

    os.rename(name_old, name_new) 『Scrapy』爬取斗鱼主播头像 重命名函数os.rename比win下的重命名强多了,它可以对路径重命名达到修改文件位置的功效. os.p ...

  2. 072——VUE中vuex之使用mutations修改购物车仓库数据

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  3. 获取URL的数据

    <!doctype html><html><head><meta charset="utf-8"><meta name=&qu ...

  4. HttpWebRequest HttpClient

    HttpWebRequest HttpClient 简单封装使用,支持https HttpWebRequest using System; using System.Collections.Gener ...

  5. dom4j解析xml报错:Nested exception: org.xml.sax.SAXParseException: White space is required between the processing instruction target and data.

    采用dom4j方式解析string类型的xml xml:        String string="<?xmlversion=\"1.0\" encoding=\ ...

  6. struts2 正确配置通配符方式访问,报错解决

    今天遇到正确配置通配符访问action的方法,但是还是报错,原因struts 2.3 以后会内部会验证是否允许该方法,而我用的刚好是2.5的版本 要action配置中加上<allowed-met ...

  7. php抓取文章内容分析

    preg_match_all — 执行一个全局正则表达式匹配 int preg_match_all ( string pattern, string subject, array matches [, ...

  8. 投资银行的IT部门——不同之处与常见误解

    投资银行的IT部门——不同之处与常见误解 说了这么多投资银行,投行里面的IT部门究竟是做什么的呢?在过去,投资银行仅靠纸.笔.计算器就能做生意了.但是在今天,所有的部门都要依靠IT技术.交易部门甚至是 ...

  9. 结合P2P软件使用Ansible分发大文件

    一 应用场景描述 现在我需要向50+数量的服务器分发Logstash新版本的rpm包,大概220MB左右,直接使用Ansible的copy命令进行传输,命令如下: 1 ansible all  -m  ...

  10. LSTM神经网络

    LSTM是什么 LSTM即Long Short Memory Network,长短时记忆网络.它其实是属于RNN的一种变种,可以说它是为了克服RNN无法很好处理远距离依赖而提出的. 我们说RNN不能处 ...