如何使用 c++ API 获取秩 3 张量流::张量的最大值的索引
How can I get the indices of the max values of a rank 3 tensorflow::Tensor using the c++ api?
假设我有一个形状{3, 4, 5}
的Tensor t
。我想找到第一和第二维度的最大值,因此此操作的结果将是形状{5, 2}
矩阵。
到目前为止,我已经尝试通过从tensorflow::Tensor
获取Eigen::Tensor
并在循环中使用maxCoeff
来做到这一点,因此:
auto t_mapped = t.tensor<float, 3>();
Eigen::Matrix<float, 5, 2> maximums;
for (int i = 0; i < 5; i++){
MatrixXf::Index maxRow, maxCol;
t_mapped.maxCoeff(&maxRow, &maxCol);
maximums(i, 0) = maxRow;
maximums(i, 1) = maxCol;
}
但这不起作用,因为t.tensor<float, 3>()
返回一个Eigen::TensorMap<Eigen::Tensor<float, 3, 1, long>, 16, MakePointer>
,而不是一个Eigen::Tensor
。似乎没有太多关于Eigen::TensorMap
类的文档。
我怎样才能从Eigen::TensorMap
中获取Eigen::Tensor
,或者做我想用张量流API做的事情?
为什么不用axis=0
来称呼tf.argmax
呢?
相关文章:
- 比较并显示使用最小值(a,b)和最大值(a、b)升序排列的4个数字
- 使用指针从C++中的数组中获取最大值
- 如何将这个C++哈希表转换为动态扩展和收缩,而不是使用硬设置的最大值
- 如何创建一个函数来计算并返回平均值、最大值和最小值
- 在二维数组中查找最小值和最大值?
- 整数溢出,最大值为 pow(10,19)
- 以C++递归方式查找向量中的最大值
- C++ - 如何在结构向量中找到结构体一个成员的最大值?
- 查找数组中第一个最小值和最后一个最大值元素之间的算术平均值
- C++ 函数,用于查找传入的 N 个数字的平均值、总和、最小值和最大值
- 我的 If Else 语句无法在向量 (C++) 中提供最大值
- 如何使用可变参数模板类使用模板元编程获得最大值
- C++不同的最小最大值实现
- Vec3b:r/g/b 颜色的最大值为 254,而不是 255
- CUDA - 将 float3 数组的 (x,y,z) 分量的最小值/最大值分开?
- 是否可以将无符号 int 的最大值转换为 int 并将结果转换为 -1?
- 查找包含 N 个元素的数组的最小值和最大值
- 井字游戏具有奇怪行为的最小最大值算法(C++)
- 如何使用 c++ API 获取秩 3 张量流::张量的最大值的索引
- Linux C++ 创建具有最大值的信号量