gpt4 book ai didi

python - Tensorflow c++,张量和馈送问题

转载 作者:行者123 更新时间:2023-11-28 05:50:31 25 4
gpt4 key购买 nike

我是 TensorFlow C++ API 的新手,我试图用 Python 构建一个非常简单的图形,然后在 C++ API 中加载/测试它。这是创建图形的 python 代码:

with tf.Session() as sess: 
a = tf.placeholder(tf.float32, shape=[2,2], name='a')
b = tf.placeholder(tf.float32, shape=[2,2], name='b')
c = tf.matmul(a, b, name="c")

sess.run(tf.initialize_all_variables())

tf.train.write_graph(sess.graph_def, 'models/', 'graph.pb', as_text=False)

这是加载和运行图形的 C 代码:

Tensor a(DT_FLOAT, TensorShape({2,2}));

Tensor b(DT_FLOAT, TensorShape({2,2}));
std::vector<std::pair<string, tensorflow::Tensor>> inputs = {
{ "a", a },
{ "b", b },
};

std::vector<tensorflow::Tensor> outputs;

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

但是我收到此错误消息:

./tensorflow/core/framework/tensor.h:500] Check failed: 1 == NumElements() (1 vs. 4)Must have a one element tensor

可能是什么问题?我注意到如果我在 python 和 C++ 中将我的张量定义为 [1,1],它会毫无问题地通过!

最佳答案

看看here ,我试图完全解释一切 总而言之,您应该使用“freeze_graph”文件使经过训练的变量保持不变,然后将其导入到您的 C++ 文件中。

关于python - Tensorflow c++,张量和馈送问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35358786/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com