TensorFlow の初体験
レベル 1: 変数の作成と初期化
import tensorflow as tf
def variables_create():
'''
返回值:
weights: 一个Tensor变量
'''
# 请在此添加代码 完成本关任务
# ********** Begin *********#
weights = tf.Variable(tf.random_normal([784, 200]), name="big_weights")
init_op=tf.global_variables_initializer()
# ********** End **********#
# 返回weights
return weights
レベル 2: 変数の保存
import tensorflow as tf
import time
def variables_save():
'''
参数:
weights: Tensor变量
biase: Tensor变量
const123:Tensor变量
'''
weights=tf.Variable(tf.random_normal([784,200]),name="weights")
biase=tf.Variable(tf.zeros([1]),name='biases')
const123=tf.Variable(([[3]]),name="jjdaren")
init_op=tf.global_variables_initializer()
sess=tf.Session()
# 请在此添加代码 完成本关任务
# ********** Begin *********#
saver = tf.train.Saver() # 创建Saver对象
sess.run(init_op) # 初始化变量
save_dir = 'save_dir/'
saver.save(sess, save_dir + 'store.ckpt') # 保存会话
# ********** End **********#
sess.close()
レベル 3: 変数の回復
import tensorflow as tf
import time
def variable_restore():
'''
参数:
const123:Tensor变量
返回值:
final_result: 一个Tensor类型变量
'''
const123 = tf.Variable(([[2]]), name="jjdaren")
sess=tf.Session()
# 请在此添加代码 完成本关任务
# ********** Begin *********#
saver = tf.train.Saver() # 创建Saver对象
with tf.Session() as sess:
saver.restore(sess, "src/step3/save_dir1/store.ckpt") # 恢复模型
final_result = sess.run(const123) # 获取恢复的变量的值
# ********** End **********#
# 返回 final_result
return final_result
レベル 4: プレースホルダーの使用 - 単純な乗算の実装
import tensorflow as tf
import time
def placer_holders():
'''
参数:
input1:占位符
input2:占位符
input1_value:矩阵
input2_value:矩阵
返回值:
result: 一个Tensor类型变量
'''
input1=tf.placeholder(dtype="float32",shape=[1,2])
input2=tf.placeholder(dtype="float32",shape=[2,1])
input1_value=[[2,4]]
input2_value=[[1],[2]]
# 请在此添加代码 完成本关任务
# ********** Begin *********#
result = tf.matmul(input1, input2) # 执行矩阵乘法
with tf.Session() as sess:
result_value = sess.run(result, feed_dict={input1: input1_value, input2: input2_value}) # 运行图并获取结果
# ********** End **********#
#返回result
return result_value