Tensorflow 脚手架和tf.train.MonitoredTrainingSession

Tensorflow 脚手架和tf.train.MonitoredTrainingSession,tensorflow,Tensorflow,我想知道如何将Scaffold与tf.train.MonitoredTrainingSession一起使用,并使用从Numpy数组中导入的特定值初始化图形权重。我找不到任何类似用途的明确例子。谢谢所以实际上有几种方法可以继续这样做 保存图形检查点方法 构建图形 初始化所有变量 运行会话为每个变量分配值 保存要在培训时加载的检查点 在火车时刻使用检查站 使用模型初始化和恢复 您可以在此处查看更多详细信息:。基本上,您可以创建tf.train.Scaffold并使用init函数分配init_fn

我想知道如何将Scaffold与tf.train.MonitoredTrainingSession一起使用,并使用从Numpy数组中导入的特定值初始化图形权重。我找不到任何类似用途的明确例子。谢谢

所以实际上有几种方法可以继续这样做

保存图形检查点方法
  • 构建图形
  • 初始化所有变量
  • 运行会话为每个变量分配值
  • 保存要在培训时加载的检查点
  • 在火车时刻使用检查站
使用模型初始化和恢复 您可以在此处查看更多详细信息:。基本上,您可以创建tf.train.Scaffold并使用init函数分配init_fn

我只测试了第一种方法可以共享一些代码:

  with tf.Graph().as_default():

    # build the graph as it is in training
    some code...

    sess = tf.Session()
    with sess.as_default():

        # Add an op to initialize the variables.
        init_op = tf.global_variables_initializer()
        sess.run(init_op)

        #Update your graph with starting variables
        data_dict = np.load('your_pass/model.npy', encoding='latin1').item()
        #
        var = tf.get_variable(param_name)
        sess.run(var.assign(data_dict))
        print('assignment done!')

    saver = tf.train.Saver()

    # Save the variables to disk.
    save_path = saver.save(sess, FLAGS.train_dir)
    print("Model saved in file: %s" % save_path)