tensorflo学习篇一(常量constant,变量Variable)

import tensorflow as tf
import numpy as np
'''

# 使用 NumPy 生成假数据(phony data), 总共 100 个点.
x_data = np.float32(np.random.rand(2, 100)) # 随机输入
y_data = np.dot([0.100, 0.200], x_data) + 0.300
# 构造一个线性模型
#
b = tf.Variable(tf.zeros([1]))
W = tf.Variable(tf.random_uniform([1, 2], -1.0, 1.0))
y = tf.matmul(W, x_data) + b
# 最小化方差
loss = tf.reduce_mean(tf.square(y - y_data))
optimizer = tf.train.GradientDescentOptimizer(0.5)
train = optimizer.minimize(loss)
# 初始化变量
init = tf.initialize_all_variables()
# 启动图 (graph)
sess = tf.Session()
sess.run(init)
# 拟合平面
for step in range(0, 201):
    sess.run(train)
if step % 20 == 0:
    print (step, sess.run(W), sess.run(b))
# 得
'''
'''
# 测试constant和with语句
matrix1 = tf.constant([[3.,3.]])
matrix2 = tf.constant([[2.],[2.]])
product = tf.matmul(matrix1, matrix2)
#sess = tf.Session()
#print (sess.run(product))
#sess.close()#释放资源
# 可以利用with语句释放资源
with tf.Session() as sess:
    #下面这个with语句用来指定tensorflow默认使用cpu还是gpu
    with tf.device("/cpu:0"):
        print(sess.run(product))
'''

state = tf.Variable(0, name= "counter")
one = tf.constant(1)
new_value = tf.add(state, one)
# assign相当于分配指派,即为 state = new_value
update = tf.assign(state, new_value)

init_op = tf.initialize_all_variables()

with tf.Session() as sess:
    sess.run(init_op)
    print( sess.run(state))

    for _ in range(3):
        sess.run(update)
        print(sess.run(state))

你可能感兴趣的:(tensorflo学习篇一(常量constant,变量Variable))