TensorFlow基础(二)——前向传播

代码实现:

#coding:utf-8
#两层简单神经网络(全连接)
import tensorflow as tf

#定义输入和参数
x = tf.constant([[0.7, 0.5]]) #用一行两列的二维张量表示x的体积和重量
w1 = tf.Variable(tf.random_normal([2, 3], stddev=1, seed=1)) 2行3列组成的随机矩阵,标准差为1
w2 = tf.Variable(tf.random_normal([3, 1], stddev=1, seed=1))

#定义前向传播过程
a = tf.matmul(x, w1) #a = x与w1的矩阵乘法
y = tf.matmul(a, w2)

#用会话计算结果
with tf.Session() sa sess:
    init_op = tf.global_variables_initializer()
    sess.run(init_op) #初始化所有节点
    print("y in tf3_3.py is:\n",sess.run(y))

计算结果:

                                                         



在sess.run()中喂入一组数据

#coding:utf-8
#两层简单神经网络(全连接)
import tensorflow as tf

#定义输入和参数
x = tf.placeholder(tf.float32, shape=(1,2)) #用placeholder定义输入,可以在with中喂入一组输入特征,方便批量处理,x时1行2列
w1 = tf.Variable(tf.random_normal([2, 3], stddev=1, seed=1)) 2行3列组成的随机矩阵,标准差为1
w2 = tf.Variable(tf.random_normal([3, 1], stddev=1, seed=1))

#定义前向传播过程
a = tf.matmul(x, w1) #a = x与w1的矩阵乘法
y = tf.matmul(a, w2)

#用会话计算结果
with tf.Session() sa sess:
    init_op = tf.global_variables_initializer()#初始化所有节点
    sess.run(init_op) #进行计算
    print("y in tf3_3.py is:\n",sess.run(y, feed_dict={x: [[0.7, 0.5]]})) #喂入x的一组特征

结果:

                                                                



在sess.run()中喂入一组数据

#coding:utf-8
#两层简单神经网络(全连接)
import tensorflow as tf

#定义输入和参数
x = tf.placeholder(tf.float32, shape=(None,2)) #用placeholder定义输入,可以在with中喂入多组输入特征,方便批量处理,x时1行2列。2:表示体积和重量这俩特征
w1 = tf.Variable(tf.random_normal([2, 3], stddev=1, seed=1)) 2行3列组成的随机矩阵,标准差为1
w2 = tf.Variable(tf.random_normal([3, 1], stddev=1, seed=1))

#定义前向传播过程
a = tf.matmul(x, w1) #a = x与w1的矩阵乘法
y = tf.matmul(a, w2)

#用会话计算结果
with tf.Session() sa sess:
    init_op = tf.global_variables_initializer()#初始化所有节点
    sess.run(init_op) #进行计算
    print("y in tf3_3.py is:\n",sess.run(y, feed_dict={x: [[0.7, 0.5], [0.2, 0.3], [0.4, 0.5], [.05, 0.8]]})) #喂入x的一组特征
    print("w1:\n", sess.run(w1)
    print("w2:\n", sess.run(w2)

run会根据这四组特征计算出四种值

猜你喜欢

转载自blog.csdn.net/qq_37764129/article/details/94344908
今日推荐