Tensorflow深度学习之三:基础概念篇(矩阵相乘)

来源:互联网 发布:js二维数组声明 编辑:程序博客网 时间:2024/05/29 08:12
Tensorflow中有很多地方需要用到矩阵相乘,这里通过一个小程序讲解一下矩阵相乘中所涉及的基本概念。(由于本人刚刚接触Tensorflow,有些概念讲解若有错误,请不吝指出。)
import tensorflow as tf#Tensorflow默认会话sess = tf.InteractiveSession()#建立两个矩阵变量w1和w2#tf.random_normal(shape,#                 mean=0.0,#                 stddev=1.0,#                 dtype=dtypes.float32,#                 seed=None,#                 name=None)#产生随机正态分布#shape表示矩阵的维度,例如:#tf.random_normal([2,3],mean=1.0, stddev=1.0)是一个2行3列的矩阵,#mean表示均值,默认为0.0,stddev表示标准差,默认为1.0#seed表示随机数种子,默认为Nonew1 = tf.Variable(tf.random_normal([2,3],mean=1.0, stddev=1.0))w2 = tf.Variable(tf.random_normal([3,1],mean=1.0, stddev=1.0))#定义一个二维的常量矩阵,注意:这里不是一维数组x = tf.constant([[0.7, 0.9]])#初始化全局变量,这里由于只有w1和w2没有被初始化(之前只是定义了w1和w2的tensor,并没有被初始化),故这一步只会初始化w1和w2.tf.global_variables_initializer().run()#tf.initialize_all_variables().run()    #这种写法也可,官方推荐使用上面的写法#计算矩阵相乘a=x*w1(关于矩阵乘法,可以参看线性代数)a = tf.matmul(x ,w1)#计算矩阵相乘y=a*w2y = tf.matmul(a, w2)#输出计算结果,是一个1行1列的二维矩阵print(y.eval())

结果如下:(在不同的机器上,运行结果或有不同)

[[ 5.25156927]]
阅读全文
0 0
原创粉丝点击