2 矩阵基础

数据实时插入

上节中数据在初始化的时候就定义了值,面临数据需要实时插入的时候,用placeholder

import tensorflow as tf
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!')

sess.run()
第一个参数是运算后的张量dataAdd;
第二个参数是需要追加的数据:feed_dict={};
{}里第一个参数和第二个参数根据前面的计算数据来定 (用冒号)。

tensorflow中的矩阵

矩阵:最外面是一个[ ],内部由一个个[ ]组成,每个[ ]里面由列数据组成,每个[ ]整体作为行数据(类比于数组,只是里面的每一行需要加上[ ])。
eg:一行两列 [ [6,6] ]
两行一列 [ [2],[2] ]
三行两列[ [1,2], [3,4], [5,6] ]

1.打印矩阵的维度

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]])
print(data4.shape)

2.读取矩阵中的内容

data4[0],里面若只有一个元素,表示行;
data4[:,0],第一列(一共包含三行)
data4[0,0],第一行第一列
data4[0,1],第一行第二列

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]])
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[00]))

3.矩阵的运算

在这里插入图片描述
#矩阵乘法:tf.matmul()

matMul = tf.matmul(data1,data2)

#普通乘法:tf.multiply()

matMul = tf.multiply(data1,data2)

4.print打印多个内容

print(sess.run(matMul,matAdd))

(1)特殊矩阵的相关定义

①全0矩阵

import tensorflow as tf
mat0 = tf.constant([[0,0,0],[0,0,0]])
with tf.Session() as sess:
    print(sess.run(mat0))

[ [0 0 0]
[0 0 0] ]

mat1 = tf.zeros([2,3])

[ [0. 0. 0.]
[0. 0. 0.] ]

②全1矩阵

mat3 = tf.ones([3,2])

[ [1. 1.]
[1. 1.]
[1. 1.] ]

③ 填充矩阵

mat4 = tf.fill([2,3],15)

[ [15 15 15]
[15 15 15] ]

(2)其他更为特殊的矩阵

①定义一个全0矩阵,维度跟mat1一样

import tensorflow as tf
mat1 = tf.constant([[2],[3],[4]])
mat2 = tf.zeros_like(mat1)
with tf.Session() as sess:
     print(sess.run(mat2))

[ [0]
[0]
[0] ]

②把0~2 之间分成相等的10份(一共11个数据)
linspace

mat3 = tf.linspace(0.0,2.0,11)  

③随机矩阵序列
定义一个两行三列的矩阵,数据内容随机产生于-1~2

mat4 = tf.random_uniform([2,3],-1,2)

numpy中的矩阵

1.定义矩阵

import numpy as np
data1 = np.array([1,2,3,4,5])
print(data1)

输出为[1 2 3 4 5]

2.打印相关内容

(1)维度

import numpy as np
data1 = np.array([1,2,3,4,5])
print(data1)
data2 = np.array([[1,2],
                 [3,4]])
print(data2)
print(data1.shape,data2.shape)

输出结果为:
[1 2 3 4 5]
[[1 2]
[3 4]]
(5,) (2, 2)

(2)初始化一些特殊矩阵

print(np.zeros([2,3]),'\n',np.ones([2,2]))

输出为:
[[0. 0. 0.]
[0. 0. 0.]]
[[1. 1.]
[1. 1.]]

(3)矩阵的修改查看

import numpy as np
data = np.array([[1,2],
                 [3,4]])
print(data)
data[1,0] = 5
print(data)
print(data[1,1])

输出为:
[[1 2]
[3 4]]
[[1 2]
[5 4]]
4

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值