zoukankan      html  css  js  c++  java
  • TensorFlow实战第一课(session、Variable、Placeholder、Activation Function)

    莫烦tensorflow教学

    1.session会话控制

     Tensorflow 中的SessionSession是 Tensorflow 为了控制,和输出文件的执行的语句. 运行session.run() 可以获得你要得知的运算结果, 或者是你所要运算的部分。

    我们首先尝试将两个矩阵相乘并输出结果

    import tensorflow as tf
    
    # create two matrixes
    
    matrix1 = tf.constant([[3,3]])
    matrix2 = tf.constant([[2],
                           [2]])
    product = tf.matmul(matrix1,matrix2)

    因为product不是直接计算的步骤,所以我们会使用session来激活码product并得到计算结果。

    有两种形式使用会话控制session。

    # method 1
    sess = tf.Session()
    result = sess.run(product)
    print(result)
    sess.close()
    # [[12]]
    
    # method 2
    with tf.Session() as sess:
        result2 = sess.run(product)
        print(result2)
    # >>[[12]]

    2.Variable 变量

    看得莫烦的tensorflow课程 讲的很有趣,有兴趣的同学也可以去看看

    tensorflow中 只有定义了某字符串是变量,他才是变量,这一点与python不同

    定义语法:state = tf.Variable( )

    import tensorflow as tf
    
    state = tf.Variable(0, name='counter')
    
    # 定义常量 one
    one = tf.constant(1)
    
    # 定义加法步骤 (注: 此步并没有直接计算)
    new_value = tf.add(state, one)
    
    # 将 State 更新成 new_value
    update = tf.assign(state, new_value)

    定义完变量后,最终要的是初始化!init = tf.initialize-all_variables()

    到这里变量还没有激活,需要在sess中 sess.run(init)  激活init这一步

    # 如果定义 Variable, 就一定要 initialize
    # init = tf.initialize_all_variables() # tf 马上就要废弃这种写法
    init = tf.global_variables_initializer()  # 替换成这样就好
     
    # 使用 Session
    with tf.Session() as sess:
        sess.run(init)
        for _ in range(3):
            sess.run(update)
            print(sess.run(state))

    注意:直接print(state)是不可以的

    应该把sess的指针指向state再进行print才能得到想要的结果!

    3.Placeholder 传入值

     placeholder是tensorflow中的占位符,暂时存储变量

    tensorflow如果想从外部传入数据,那么就需要tf.placehoder(),然后以这种形式传输数据

    sess.run(***,feed_dict={input:*****})

    #placeholder
    import tensorflow as tf
    
    input1 = tf.placeholder(tf.float32)
    #大部分情况 只能处理float32数据形式
    input2 = tf.placeholder(tf.float32)
    
    output =  tf.multiply(input1,input2)
    
    with tf.Session() as sess:
        print(sess.run(output,feed_dict={input1:[7],input2:[2]}))

    传值工作交给sess.run() ,需要穿的值放在了feed_dict={},并一一对应每个input

    4.激励函数Activation Function

    激励函数运行时激活神经网络中某一部分神经元,将激活信息向后传入下一层神经系统。

    激励函数的实质是非线性方程。tensorflow的神经网络里面处理较为复杂的问题时都会需要运用激励函数

  • 相关阅读:
    并发编程-process对象的其他属性方法
    Python json格式处理
    msf制作反弹shell
    Windows渗透备忘录
    WPF listbox实现多列显示数据
    Postgresql插入或更新操作upsert
    Windows 10 IoT Core Samples
    物联网平台开源
    实现领域驱动设计
    wpf Visibility 动画
  • 原文地址:https://www.cnblogs.com/baobaotql/p/11251375.html
Copyright © 2011-2022 走看看