微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

c – 从std :: vector创建tensorflow :: tensor的最有效方法

所以我的问题是要知道是否有一种方法可以直接将向量中的值(但我们也可以考虑数组)传递给tensorflow :: tensor?

我知道的唯一方法是逐个复制每个值.

示例(2D矢量):

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];
  }
}

有更方便的方法吗?

例如,数组到矢量:

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< float>().data())

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐