caffe中用到的返回数组最大值的前 N 个序号数组

来源:互联网 发布:淘宝第二次申请售后 编辑:程序博客网 时间:2024/06/05 22:36

读caffe代码中用到的方法,Mark一下

static bool PairCompare(const std::pair<float, int>& lhs,                        const std::pair<float, int>& rhs) {  return lhs.first > rhs.first;}/* Return the indices of the top N values of vector v. *///返回数组最大值的前 N 个序号数组static std::vector<int> Argmax(const std::vector<float>& v, int N) {  std::vector<std::pair<float, int> > pairs;  for (size_t i = 0; i < v.size(); ++i)    pairs.push_back(std::make_pair(v[i], static_cast<int>(i)));  std::partial_sort(pairs.begin(), pairs.begin() + N, pairs.end(), PairCompare);  std::vector<int> result;  for (int i = 0; i < N; ++i)    result.push_back(pairs[i].second);  return result;}


0 0
原创粉丝点击