简体   繁体   English

如何在C ++中调用tf.initialize_all_variables()? tensorflow

[英]How to invoke tf.initialize_all_variables() in C++? tensorflow

I'm newbie in tensorflow. 我是tensorflow的新手。 Btw, how to execute ops in C++ such as tf.initialize_all_variables() or some ops returned by optimizers self.train_op = self.optimizer.apply_gradients(gradients) ? 顺便说一句,如何在C ++中执行ops,如tf.initialize_all_variables()或优化器返回的一些操作self.train_op = self.optimizer.apply_gradients(渐变)? I've tried 我试过了

init_all_vars_op = tf.initialize_variables(tf.all_variables(), name='init_all_vars_op')
...
tf.train.write_graph(session.graph_def, 'models/', 'graph.pb', as_text=False)

in python and then in C++: 在python中,然后在C ++中:

status = session->Run(inputs, {"init_all_vars_op"}, {}, &outputs);
if (!status.ok()) {
    std::cout << "tf error: " << status.ToString() << "\n";
    return;
}

so I got 所以我得到了

tf error: Invalid argument: FetchOutputs init_all_vars_op: output index too large, must be < 0

I've changed 我改变了

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

to

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

And now it works fine. 现在它工作正常。

According to https://www.tensorflow.org/versions/master/api_docs/cc/ClassSession.html#virtual_Status_tensorflow_Session_Run Second parameter is for operations which returns output tensors and third for operations which don't return tensors. 根据https://www.tensorflow.org/versions/master/api_docs/cc/ClassSession.html#virtual_Status_tensorflow_Session_Run第二个参数用于返回输出张量的操作,第三个参数用于不返回张量的操作。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 如何初始化除tf.global_variables_initializer()之外未保存的tensorflow变量 - How to initialize tensorflow variable that wasn't saved other than with tf.global_variables_initializer() 了解Tensorflow initialize_all_variables - Understanding Tensorflow initialize_all_variables 如何使用tf.train.Checkpoint在Tensorflow 2.0中保存和加载选定变量以及所有变量? - How to save and load selected and all variables in tensorflow 2.0 using tf.train.Checkpoint? 如何初始化包含张量流中元组列表的变量? - How to initialize variables that contains list of tuples in tensorflow? 如何初始化tensorflow函数中定义的变量? - How to initialize variables defined in tensorflow function? 在张量流中初始化集合中的变量 - Initialize variables in collection in the tensorflow 在TensorFlow中获取与特定张量相关的所有tf.Variables - Get all tf.Variables related to a specific tensor in TensorFlow 在TensorFlow图中初始化变量 - initialize variables in TensorFlow graph (Python)张量流中保存的权重未在C ++ tf中加载 - Weights saved in (Python) tensorflow not loaded in C++ tf 警告:不推荐使用tensorflow - initialize_all_variables(来自tensorflow.python.ops.variables) - WARNING:tensorflow - initialize_all_variables (from tensorflow.python.ops.variables) is deprecated
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM