2017-10-15 44 views
0

如何仅使用C API初始化张量流中的变量。如何初始化张量流中的变量C API

我需要相当的蟒蛇电话:

session.run(tf.global_variables_initializer()) 

或C++ API:

status = session->Run(inputs, {}, {"init_all_vars_op"}, &outputs); 

回答

0

TF_SessionRunsession.run()的C API相当于在Python。 TF_GraphOperationByName可用于根据图中初始化节点的名称获取TF_Operation结构。

像这样的东西应该工作:

TF_Operation* init_op = TF_GraphGetOperationByName(graph, "init"); 
TF_SessionRun(sess, NULL, 
       NULL, NULL, 0, // inputs 
       NULL, NULL, 0, // outputs 
       &init_op, 1, // targets 
       NULL, 
       status); 

命名为“初始化”提供给TF_GraphGetOperationByName将在图中的初始化操作的名称。以上你的问题表明,名称为“init_all_vars_op”,但我看到的只是“初始化”使用这样的事情在Python:

init = tf.global_variables_initializer() 
print(init.name) 

希望有所帮助。