zoukankan      html  css  js  c++  java
  • 莫烦Tensorflow 入门

    Tensorflow 初步尝试

    #https://mofanpy.com/tutorials/machine-learning/tensorflow/example2/
    #创建数据
    #搭建模型
    #计算误差
    #传播误差
    #初始会话
    #不断训练
    
    import tensorflow as tf
    import numpy as np
    
    #创建数据
    x_data = np.random.rand(100).astype(np.float32)
    y_data = x_data * 0.1 + 0.3
    #定义神经元可变参数
    W = tf.Variable(tf.random_uniform([1],-1.0,1.0))
    b = tf.Variable(tf.zeros([1]))
    y = W * x_data + b
    #计算误差
    loss = tf.reduce_mean(tf.square(y - y_data))
    #采用梯度下降法反向传播误差
    optimizer = tf.train.GradientDescentOptimizer(0.2)
    train = optimizer.minimize(loss)
    
    #初始化所有的神经元可变参数
    init = tf.global_variables_initializer()
    #创建会话
    sess = tf.Session()
    #执行初始化步骤
    sess.run(init)
    
    #不断的训练数据,提升网络性能
    for i in range(1000):
        sess.run(train)
        if i % 100 == 0:
            print(i,sess.run(W),sess.run(b))
            print("Loss:%.11f" % sess.run(loss))

    Tensorflow 中的 Session

    Session 是 Tensorflow 为了控制、和输出文件的执行的语句.

    运行 session.run() 可以获得你要得知的运算结果, 或者是你所要运算的部分

    import tensorflow as tf
    
    #创建两个矩阵
    m1 = tf.constant([[3,3]])
    m2 = tf.constant([[2],[2]])
    p = tf.matmul(m1,m2)
    #[12]]
    #使用session 激活p 得到计算结果
    
    ## 方法1 ##
    sess = tf.Session()
    result = sess.run(p)
    print(result)
    sess.close()
    
    ## 方法2 ##
    with tf.Session() as sess:
        result2 = sess.run(p)
        print(result2)

    Tensorflow 中使用 Variable

    Tensorflow 中,定义了某字符串是变量,它才是变量

    import tensorflow as tf
    
    state = tf.Variable(0,name='Jike')
    #定义常量
    one = tf.constant(1)
    
    #定义加法步骤【但没有直接运算】
    new = tf.add(state,one)
    
    #将 State更新成 new
    update = tf.assign(state,new)
    
    #如果定义了Variable,一定要 initialize
    init = tf.global_variables_initializer()
    
    #使用session
    with tf.Session() as sess:
        sess.run(init) #激活
        for i in range(3):
            sess.run(update)
            print(sess.run(state))  #将sess的指针指向 state

    Tensorflow 中的 placeholder

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

    Tensorflow 如果想要从外部传入data, 那就需要用到 tf.placeholder()

    import tensorflow as tf
    
    #在 Tensorflow 中需要定义 placeholder 的 type ,一般为 float32 形式
    x = tf.placeholder(tf.float32)
    y = tf.placeholder(tf.float32)
    
    # mul = multiply 是将input1和input2 做乘法运算,并输出为 output 
    z = tf.multiply(x,y)
    
    #传值的工作交给了 sess.run() , 需要传入的值放在了feed_dict={}
    with tf.Session() as sess:
        print(sess.run(z,feed_dict={x:[4.],y:[2.]}))
  • 相关阅读:
    浅谈Eclipse中maven的搭建
    sdk的相关知识以及浅谈手机模拟自动化
    java开发环境搭建
    Python学习————反序列化器(复习)
    Python学习————序列化器(复习)
    Python学习————jwt
    Python学习————对称加密和非对称加密
    Python学习————drf(七)
    Python学习————集群和分布式
    Python学习————drf(六)
  • 原文地址:https://www.cnblogs.com/expedition/p/13558989.html
Copyright © 2011-2022 走看看