zoukankan      html  css  js  c++  java
  • 用Tensorflow搭建网络

    创建层

    创建密集连接层,并应用激活函数

    x = tf.placeholder(tf.float32, shape=[None, 3])
    linear_model = tf.layers.Dense(units=1)
    y = linear_model(x)

    初始化层

    包含变量的层都需要经过初始化

    init = tf.global_variables_initializer()
    sess.run(init)

    执行层

    print(sess.run(y, {x: [[1, 2, 3],[4, 5, 6]]}))
    # [[-3.41378999]
    #  [-9.14999008]]

    层函数的快捷方式

    快捷方式是在单次调用中创建和运行层

    x = tf.placeholder(tf.float32, shape=[None, 3])
    y = tf.layers.dense(x, units=1)
    
    init = tf.global_variables_initializer()
    sess.run(init)
    
    print(sess.run(y, {x: [[1, 2, 3], [4, 5, 6]]}))

    尽管这种方式很方便,但是无法访问 tf.layers.Layer 对象。这会让自省和调试变得困难,并且无法重复的使用相同的层。

    训练

    定义数据

    定义一些输入x,以及每个输入值的预期输出值 y_true:

    x = tf.constant([[1], [2], [3], [4]], dtype=tf.float32)
    y_true = tf.constant([[0], [-1], [-2], [-3]], dtype=tf.float32)

    定义模型

    接下来,创建一个简单的线性模型,其输出值只有1个:

    linear_model = tf.layers.Dense(units=1)
    
    y_pred = linear_model(x)

    搭建好模型后,我们可以运行一次,看看第一次运行的预测值:

    sess = tf.Session()
    init = tf.global_variables_initializer()
    sess.run(init)
    
    print(sess.run(y_pred))
    
    # [[ 0.02631879]
    #  [ 0.05263758]
    #  [ 0.07895637]
    #  [ 0.10527515]]

    损失

    我们使用均方误差来定义损失函数,虽然可以使用用较低级别的数学运算手动定义,但 tf.losses 模块提供了一系列常用的损失函数。

    loss = tf.losses.mean_squared_error(labels=y_true, predictions=y_pred)
    
    print(sess.run(loss))        # 2.23962

    训练,TensorFlow提供了执行标准化算法啊的优化器 (tf.train.Optimizer),最简单的是梯度下降法,由实现 tf.train.GradientDescentOptimizer 

    optimizer = tf.train.GradientDescentOptimizer(0.01)
    train = optimizer.minimize(loss)
    
    for i in range(100):
        _, loss_value = sess.run((train, loss))
        print(loss_value)
    print(sess.run(y_pred))

     

  • 相关阅读:
    UnityGUI Keynote
    Unity3D Asset 导入&导出
    Unity3d平台信息设置
    Unity3D自带Demo AngryBots路径
    如何判定Unity已破解成功
    fbx模型
    Init & Deinit & ARC
    Subscript & Inheritance
    Properties & Method
    Enumeration & Class & Structure
  • 原文地址:https://www.cnblogs.com/LXP-Never/p/10264493.html
Copyright © 2011-2022 走看看