您的位置:首页 > 编程语言 > Python开发

Tensorflow基本概念理解示例

2017-04-04 12:25 381 查看

Tensorflow基本概念理解示例

1.tensorflow的基本组成

TensorFlow代码主要包括两部分:构建图模型和计算图模型。图模型的基本构成是节点,每个节点代表的是一个操作(operation)或者理解成函数,每个节点都有输入输出,每个节点通过线条相连。例如常数节点(constant node)没有输入,输出为常数;变量节点(variable node)可以更新数值;占位符节点(placeholder node)是具有输入的constant node,相当于确定了图的输入。

2.tensorflow的基本命令

(1)init = tf.global_variables_initializer()表示将variable初始化,初始化的数值是作为tf.Variable的输入参数的,tf.global_variables_initializer()只是启动这个初始化的操作。
(2)optimizer = tf.train.GradientDescentOptimizer(0.01)和train = optimizer.minimize(loss)表示设置为梯度下降的更新算法,并对Variable的数值根据LOSS更新一次。

3.tensorflow的计算图命令

在图构建好之后就可以对其进行计算,sess = tf.Session()就是启动图计算的命令,然后可以用sess.run(subgraph)计算任意一个节点或者是中间变量的结果。

4.tensorflow线性回归示例

import numpy as np
import tensorflow as tf

# Model parameters
W = tf.Variable([.3], tf.float32)
b = tf.Variable([-.3], tf.float32)
# Model input and output
x = tf.placeholder(tf.float32)
linear_model = W * x + b
y = tf.placeholder(tf.float32)
# loss
loss = tf.reduce_sum(tf.square(linear_model - y)) # sum of the squares
# optimizer
optimizer = tf.train.GradientDescentOptimizer(0.01)
train = optimizer.minimize(loss)
# training data
x_train = [1,2,3,4]
y_train = [0,-1,-2,-3]
# training loop
init = tf.global_variables_initializer()
sess = tf.Session()
sess.run(init) # reset values to wrong
for i in range(1000):
sess.run(train, {x:x_train, y:y_train})

# evaluate training accuracy
curr_W, curr_b, curr_loss  = sess.run([W, b, loss], {x:x_train, y:y_train})
print("W: %s b: %s loss: %s"%(curr_W, curr_b, curr_loss))
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  numpy tensorflow