tensorflow学习遇到函数--随时更新

1、代表产生截断正太分布函数,shape是[784,500],均值默认为0,标准差为0.1

tf.truncated_normal([784,500],stddev=0.1)

2、tf.argmax(vector, 1):返回的是vector中的最大值的索引号,如果vector是一个向量,那就返回一个值,如果是一个矩阵,那就返回一个向量,这个向量的每一个维度都是相对应矩阵行的最大值元素的索引号。

A = [[1,3,4,5,6]]
B = [[1,3,4], [2,4,1]]
    print(sess.run(tf.argmax(A, 1)))
    print(sess.run(tf.argmax(B, 1)))

输出:

[4]

[2 1]

3、模型持久化

https://blog.csdn.net/leviopku/article/details/78510977?utm_medium=distribute.pc_relevant.none-task-blog-title-2&spm=1001.2101.3001.4242

4、训练过程中的初始化

init = tf.global_variables_initializer()  #初始化函数
sess = tf.Session()
sess.run(init)  

5、tf.trainable_variables和tf.all_variables的对比

  • tf.trainable_variables返回的是需要训练的变量列表
  • tf.all_variables返回的是所有变量的列表

6、TensorFlow-sess.run()使用方法

import tensorflow as tf

# 创建一个变量, 初始化为标量 0.
state = tf.Variable(0.0, dtype=tf.float32)

# 创建一个 op, 其作用是使 state 增加 1
one = tf.constant(1.0, dtype=tf.float32)
new_val = tf.add(state, one)
update = tf.assign(state, new_val)  # 返回tensor, 值为new_val

update2 = tf.assign(state, 10000)  # 没有fetch,便没有执行

# 启动图后, 变量必须先经过`初始化` (init) op 初始化,
# 首先必须增加一个`初始化` op 到图中.
init = tf.initialize_all_variables()

# 启动图, 运行 op
with tf.Session() as sess:
    # 运行 'init' op
    sess.run(init)
    for _ in range(3):
        print sess.run(update)

  

posted @ 2020-12-15 15:42  罗罗诺亚·熊  阅读(64)  评论(0)    收藏  举报