美文网首页
前向传播

前向传播

作者: king2king | 来源:发表于2019-09-26 16:28 被阅读0次

    前向传播 ->搭建模型,实现推理(以全连接网络为例)

    • 生产一批零件将体积X1和重量X2为特征输入NN,通过NN后输出一个数值。


      2.png
      微信截图_20190924222755.png
    3.png
    # 两层简单神经网络
    import tensorflow as tf
    
    # 定义输入和参数
    x = tf.constant([[0.7, 0.5]])
    w1 = tf.Variable(tf.random_normal([2, 3], stddev=1, seed=1))
    w2 = tf.Variable(tf.random_normal([3,1], stddev=1,seed=1))
    # 定义前向传播过程
    a = tf.matmul(x, w1)
    y = tf.matmul(a, w2)
    
    # 用会话计算结果
    with tf.Session() as sess:
        init_op = tf.global_variables_initializer()
        sess.run(init_op)
        print("y is %s"%sess.run(init_op))
    
    # 两层简单神经网络
    import tensorflow as tf
    
    # 定义输入和参数
    x = tf.constant([[0.7, 0.5]])
    w1 = tf.Variable(tf.random_normal([2, 3], stddev=1, seed=1))
    w2 = tf.Variable(tf.random_normal([3, 1], stddev=1, seed=1))
    
    # 定义前向传播过程
    a = tf.matmul(x, w1)
    y = tf.matmul(a, w2)
    
    # 用会话计算结果
    with tf.Session() as sess:
        init_op = tf.global_variables_initializer()
        sess.run(init_op)
        print("y is %s" % sess.run(y, feed_dict={x: [[0.7, 0.5]]}))
    
    
    # 两层简单神经网络(全连接)
    
    import tensorflow as tf
    
    # 定义输入和参数
    # 用placeholder定义输入(sess.run喂多组数据)
    x = tf.placeholder(tf.float32, shape=(None, 2))
    w1 = tf.Variable(tf.random_normal([2, 3], stddev=1, seed=1))
    w2 = tf.Variable(tf.random_normal([3, 1], stddev=1, seed=1))
    
    # 定义前向传播过程
    a = tf.matmul(x, w1)
    y = tf.matmul(a, w2)
    
    # 调用会话计算结果
    with tf.Session() as sess:
        init_op = tf.global_variables_initializer()
        sess.run(init_op)
        print("the result is %s" % sess.run(y, feed_dict={x: [[0.7, 0.5], [0.2, 0.3], [0.3, 0.4], [0.4, 0.5]]}))
        print("w1:%s" % sess.run(w1))
        print("w2:%s" % sess.run(w2))
    
    

    相关文章

      网友评论

          本文标题:前向传播

          本文链接:https://www.haomeiwen.com/subject/fonbuctx.html