tensorflow 初始化未初始化的变量实例

今日在Stack Overflow上看到一个问如何只初始化未初始化的变量,有人提供了一个函数,特地粘贴过来共大家品鉴:

import tensorflow as tf

def initialize_uninitialized(sess):

global_vars = tf.global_variables()

is_not_initialized = sess.run([tf.is_variable_initialized(var) for var in global_vars])

not_initialized_vars = [v for (v, f) in zip(global_vars, is_not_initialized) if not f]

print [str(i.name) for i in not_initialized_vars] # only for testing

if len(not_initialized_vars):

sess.run(tf.variables_initializer(not_initialized_vars))

通过tf.global_variables()返回一个全局变量的列表global_vars, 然后以python列表解析式的方式判断全局变量列表global_vars中每个变量是否都被初始化了,并返回一个对应的True/False的布尔值列表is_not_initialized;

然后再把global_vars中的变量和布尔值列表进行打包配对,并选出没有初始化的变量的列表,得到所有未初始化变量的列表not_initialized_vars;打印出这些变量的名字;

对于这些未初始化的变量,通过会话(sess)运行tf.variables_initializer(not_initialized_vars)使所有未初始化的变量都初始化。

以上这篇tensorflow 初始化未初始化的变量实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

以上是 tensorflow 初始化未初始化的变量实例 的全部内容, 来源链接: utcz.com/z/344168.html

回到顶部