TensorFlow入门(矩阵基础)

1.placeholder 占位符 可以通过run方法传入值

测试代码如下:

 1 # encoding:utf-8
 2 
 3 import tensorflow as tf
 4 
 5 # placeholder 占位符 可以由用户输入
 6 data1 = tf.placeholder(tf.float32)
 7 data2 = tf.placeholder(tf.float32)
 8 dataAdd = tf.add(data1,data2)
 9 with tf.Session() as sess:
10     print(sess.run(dataAdd,feed_dict={data1:6, data2:2}))
11 print("end!")

运行结果如下:

2.矩阵的定义

类似于二维数组,测试代码如下:

 1 # encoding:utf-8
 2 
 3 import tensorflow as tf
 4 
 5  # 类比 数组M行N列
 6 data1 = tf.constant([[6,6]])  # M=1 N=1
 7 data2 = tf.constant([[2],
 8                      [2]])  # M=2 N=1
 9 data3 = tf.constant([[3,3]])  # M=1 N=1
10 data4 = tf.constant([[1,2],
11                      [3,4],
12                      [5,6]])  # M=3 N=2
13 print(data4.shape)  # 打印该矩阵的维度
14 with tf.Session() as sess:
15     print(sess.run(data4))
16     print(sess.run(data4[0]))  # 打印第一行
17     print(sess.run(data4[:,0]))  # 打印第一列
18     print(sess.run(data4[0,0]))  # 打印一行一列的数
19 print("end!")

运行结果如下:

 

3.矩阵的基本运算

同维度矩阵相加减,内积,外积等,测试代码如下:

 1 # encoding:utf-8
 2 
 3 import tensorflow as tf
 4 
 5 data1 = tf.constant([[6,6]])
 6 data2 = tf.constant([[2],
 7                      [2]])
 8 data3 = tf.constant([[3,3]])
 9 data4 = tf.constant([[1,2],
10                      [3,4],
11                      [5,6]])
12 matMul = tf.matmul(data1,data2)
13 matMul2 = tf.multiply(data1,data2)
14 matAdd = tf.add(data1,data3)
15 with tf.Session() as sess:
16     print(sess.run(matMul))  # 矩阵内积
17     print("---------------------------")
18     print(sess.run(matAdd))  # 矩阵相加 矩阵相减类似
19     print("---------------------------")
20     print(sess.run(matMul2))  # 矩阵外积
21     print("---------------------------")
22     print(sess.run([matMul,matAdd]))  #打印多个内容
23 print("end!")

运行结果如下:

4.特殊矩阵

特殊矩阵的测试代码如下:

 1 # encoding:utf-8
 2 
 3 import tensorflow as tf
 4 
 5 # 特殊矩阵的测试
 6 # 全零矩阵的两种定义方式
 7 mat0 = tf.constant([[0,0,0],[0,0,0]])
 8 mat1 = tf.zeros([2,3])
 9 # 全1矩阵
10 mat2 = tf.ones([3,2])
11 # 填充矩阵
12 mat3 = tf.fill([2,2],16)
13 # 归零矩阵
14 mat4 = tf.constant([[2],[3],[4]])
15 mat5 = tf.zeros_like(mat4)
16 # 等间隔矩阵
17 mat6 = tf.linspace(0.0,2.0,11)
18 #  随机矩阵
19 mat7 = tf.random_uniform([2,3],-1,2)
20 with tf.Session() as sess:
21     print(sess.run(mat0))  #
22     print("---------------------------")
23     print(sess.run(mat1))
24     print("---------------------------")
25     print(sess.run(mat2))
26     print("---------------------------")
27     print(sess.run(mat3))
28     print("---------------------------")
29     print(sess.run(mat4))
30     print("---------------------------")
31     print(sess.run(mat5))
32     print("---------------------------")
33     print(sess.run(mat6))
34     print("---------------------------")
35     print(sess.run(mat7))
36     print("---------------------------")
37 print("end!")

运行结果如下:

 

posted @ 2019-05-19 19:56  wydxry  阅读(1912)  评论(0编辑  收藏  举报
Live2D