本文介绍了从 std::vector 创建 tensorflow::tensor 的最有效方法的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
所以我的问题是想知道是否有办法将值从 vector
(但我们也可以考虑 array
)直接传递给 张量流::张量
?
So my question is to know if there is a way to pass directly the values from a vector
(but we could also think about array
) to a tensorflow::tensor
?
我知道的唯一方法是一个一个复制每个值.
The only way I know is to copy each value one by one.
示例(二维矢量):
tensorflow::Tensor input(tensorflow::DT_FLOAT, tensorflow::TensorShape({50, 20}));
auto input_map = input.tensor<float, 2>();
for (int b = 0; b < 50; b++) {
for (int c = 0; c < 20; c++) {
input_map(b, c) = (vector_name)[b][c];
}
}
有没有更方便的方法?
例如array
到vector
:
int x[3] = {1, 2, 3};
std::vector<int> v(x, x + sizeof x / sizeof x[0]);
推荐答案
这个怎么样?std::copy_n(vec.begin(), vec.size(), input.flat().data())
这篇关于从 std::vector 创建 tensorflow::tensor 的最有效方法的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!