TensorFlow入门(矩阵基础)
1.placeholder 占位符 可以通过run方法传入值
测试代码如下:
# encoding:utf-8 import tensorflow as tf # placeholder 占位符 可以由用户输入
data1 = tf.placeholder(tf.float32)
data2 = tf.placeholder(tf.float32)
dataAdd = tf.add(data1,data2)
with tf.Session() as sess:
print(sess.run(dataAdd,feed_dict={data1:6, data2:2}))
print("end!")
运行结果如下:

2.矩阵的定义
类似于二维数组,测试代码如下:
# encoding:utf-8 import tensorflow as tf # 类比 数组M行N列
data1 = tf.constant([[6,6]]) # M=1 N=1
data2 = tf.constant([[2],
[2]]) # M=2 N=1
data3 = tf.constant([[3,3]]) # M=1 N=1
data4 = tf.constant([[1,2],
[3,4],
[5,6]]) # M=3 N=2
print(data4.shape) # 打印该矩阵的维度
with tf.Session() as sess:
print(sess.run(data4))
print(sess.run(data4[0])) # 打印第一行
print(sess.run(data4[:,0])) # 打印第一列
print(sess.run(data4[0,0])) # 打印一行一列的数
print("end!")
运行结果如下:

3.矩阵的基本运算
同维度矩阵相加减,内积,外积等,测试代码如下:
# encoding:utf-8 import tensorflow as tf data1 = tf.constant([[6,6]])
data2 = tf.constant([[2],
[2]])
data3 = tf.constant([[3,3]])
data4 = tf.constant([[1,2],
[3,4],
[5,6]])
matMul = tf.matmul(data1,data2)
matMul2 = tf.multiply(data1,data2)
matAdd = tf.add(data1,data3)
with tf.Session() as sess:
print(sess.run(matMul)) # 矩阵内积
print("---------------------------")
print(sess.run(matAdd)) # 矩阵相加 矩阵相减类似
print("---------------------------")
print(sess.run(matMul2)) # 矩阵外积
print("---------------------------")
print(sess.run([matMul,matAdd])) #打印多个内容
print("end!")
运行结果如下:

4.特殊矩阵
特殊矩阵的测试代码如下:
# encoding:utf-8 import tensorflow as tf # 特殊矩阵的测试
# 全零矩阵的两种定义方式
mat0 = tf.constant([[0,0,0],[0,0,0]])
mat1 = tf.zeros([2,3])
# 全1矩阵
mat2 = tf.ones([3,2])
# 填充矩阵
mat3 = tf.fill([2,2],16)
# 归零矩阵
mat4 = tf.constant([[2],[3],[4]])
mat5 = tf.zeros_like(mat4)
# 等间隔矩阵
mat6 = tf.linspace(0.0,2.0,11)
# 随机矩阵
mat7 = tf.random_uniform([2,3],-1,2)
with tf.Session() as sess:
print(sess.run(mat0)) #
print("---------------------------")
print(sess.run(mat1))
print("---------------------------")
print(sess.run(mat2))
print("---------------------------")
print(sess.run(mat3))
print("---------------------------")
print(sess.run(mat4))
print("---------------------------")
print(sess.run(mat5))
print("---------------------------")
print(sess.run(mat6))
print("---------------------------")
print(sess.run(mat7))
print("---------------------------")
print("end!")
运行结果如下:

TensorFlow入门(矩阵基础)的更多相关文章
- 1 TensorFlow入门笔记之基础架构
------------------------------------ 写在开头:此文参照莫烦python教程(墙裂推荐!!!) ---------------------------------- ...
- (转)TensorFlow 入门
TensorFlow 入门 本文转自:http://www.jianshu.com/p/6766fbcd43b9 字数3303 阅读904 评论3 喜欢5 CS224d-Day 2: 在 Da ...
- TensorFlow 入门之手写识别(MNIST) softmax算法
TensorFlow 入门之手写识别(MNIST) softmax算法 MNIST flyu6 softmax回归 softmax回归算法 TensorFlow实现softmax softmax回归算 ...
- #tensorflow入门(1)
tensorflow入门(1) 关于 TensorFlow TensorFlow™ 是一个采用数据流图(data flow graphs),用于数值计算的开源软件库.节点(Nodes)在图中表示数学操 ...
- TensorFlow入门(五)多层 LSTM 通俗易懂版
欢迎转载,但请务必注明原文出处及作者信息. @author: huangyongye @creat_date: 2017-03-09 前言: 根据我本人学习 TensorFlow 实现 LSTM 的经 ...
- [译]TensorFlow入门
TensorFlow入门 张量(tensor) Tensorflow中的主要数据单元是张量(tensor), 一个张量包含了一组基本数据,可以是列多维数据.一个张量的"等级"(ra ...
- 转:TensorFlow入门(六) 双端 LSTM 实现序列标注(分词)
http://blog.csdn.net/Jerr__y/article/details/70471066 欢迎转载,但请务必注明原文出处及作者信息. @author: huangyongye @cr ...
- TensorFlow 入门之手写识别CNN 三
TensorFlow 入门之手写识别CNN 三 MNIST 卷积神经网络 Fly 多层卷积网络 多层卷积网络的基本理论 构建一个多层卷积网络 权值初始化 卷积和池化 第一层卷积 第二层卷积 密集层连接 ...
- TensorFlow 入门之手写识别(MNIST) softmax算法 二
TensorFlow 入门之手写识别(MNIST) softmax算法 二 MNIST Fly softmax回归 softmax回归算法 TensorFlow实现softmax softmax回归算 ...
- Qt入门之基础篇 ( 二 ) :Qt项目建立、编译、运行和发布过程解析
转载请注明出处:CN_Simo. 题解: 本篇内容主讲Qt应用从创建到发布的整个过程,旨在帮助读者能够快速走进Qt的世界. 本来计划是讲解Qt源码静态编译,如此的话读者可能并不能清楚地知道为何要静态编 ...
随机推荐
- JS实现斐波那契数列的几种方法
斐波那契数列指的是这样一个数列:1.1.2.3.5.8.13.21.34.…… 前两项为1,从第三项起,每一项等于前两项的和,即F(1)=1,F(2)=1, F(n)=F(n-1)+F(n-2)(n& ...
- NCE L6
- 深浅COPY浅谈
通俗地谈一下深浅COPY的区别,顺便做个笔记.(纯手打,如有不对之处还望大牛指导改正.) 个人觉得区分这个概念需要从数据类型来切入: 1.如果“被复制对象”(后面简称“原对象”)的数据类型为不可变数据 ...
- ASPNetCore 发布到IIS
ASPNetCore 发布到IIS 准备工作 1.1. 安装IIS.(具体操作不再说明) 安装成功后再浏览器输入localhost得到的页面如下 1.2. 安装dotnet-hosting-2.2 ...
- 掌握这13个MySQL索引知识点,让你面试通过率翻倍
数据库索引有关的知识,说实在的,真的是很复杂,本来想好好看看这方面的东西,然后写篇文章详细谈谈的,后来发现索引的知识太难太深,要谈得全面又详细真的很难,所以最后还是把自己学到的和想到的变成下面一个个的 ...
- vue移动端下拉刷新、上拉加载
由于自身的项目比较简单,只有几个H5页面,用来嵌入app中,所有没有引入移动端的UI框架,但是介于能让用户在浏览H5页面时有下拉刷新和上拉加载,有更好的用户体验,自己写组件实现. 1.下拉刷新Drop ...
- 通过sql的stuff 把一列几行的记录拼接在一行一个字段
---通过sql的stuff 把一列几行的记录拼接在一行一个字段 select FID,a.FCustomerID as 工地ID , 应验收节点 = (stuff((select ',' + isn ...
- Mac 下如何快速重启 Dock 栏?
两种方法. 如果Dock栏出现了问题或是没有反应,请打开Launchpad并按下Command+D键. 这样就可以关闭Dock栏并重启它,效果和经常用到的killall Dock命令相同.
- Node.js核心模块-net
net.Socket 类 socket.remotePort 访问服务器的远程端口 const http = require('http'); const server = http.createSe ...
- python函数的使用
python函数的使用 制作人:全心全意 函数的定义 def 函数名(参数): 函数体 参数的使用 def 函数名(a): 函数体 函数名(5) 默认函数 def 函数名(a=5): 函数体 函数名( ...