pytorch/caffe2/operators/quantile_op.cc
Dehua Cheng 685f090ac8 [Rowwise Pruning][c2 op] Add Quantile Op (#32448)
Summary:
Pull Request resolved: https://github.com/pytorch/pytorch/pull/32448

Using binary search to compute the value for the given quantile among the input tensors.

Test Plan: Newly added unittests;

Reviewed By: jspark1105

Differential Revision: D19487604

fbshipit-source-id: 0dc6627b78d1310ac35b3f1d53b89cc89a697ece
2020-01-22 16:59:56 -08:00

18 lines
614 B
C++

#include "quantile_op.h"
namespace caffe2 {
REGISTER_CPU_OPERATOR(Quantile, QuantileOp<CPUContext>);
OPERATOR_SCHEMA(Quantile)
.NumInputs(1, INT_MAX)
.NumOutputs(1)
.SetDoc(R"DOC(
Calculate the quantile for the value in the given list of tensors.
)DOC")
.Input(0, "X1, X2, ...", "*(type: Tensor`<float>`)* List of input tensors.")
.Output(0, "quantile_value", "Value at the given quantile")
.Arg("abs", "If true (default), apply abs() on the tensor values.")
.Arg("tol", "multiplicative tolerance of the quantile_value.");
SHOULD_NOT_DO_GRADIENT(Quantile);
} // namespace caffe2