#include "components/segmentation_platform/internal/post_processor/post_processor.h"
#include "base/time/time.h"
#include "components/segmentation_platform/internal/metadata/metadata_utils.h"
#include "base/check_op.h"
#include "base/logging.h"
#include "base/notreached.h"
#include "components/segmentation_platform/public/result.h"
namespace segmentation_platform {
namespace {
constexpr int kInvalidResult = …;
constexpr int kNoWinningLabel = …;
constexpr int kUnderflowBinIndex = …;
bool IsValidResult(const proto::PredictionResult& prediction_result) { … }
bool IsScoreBelowMultiClassThreshold(
const proto::Predictor::MultiClassClassifier& multi_class_classifier,
const float class_score,
const int class_index) { … }
}
bool PostProcessor::IsClassificationResult(
const proto::PredictionResult& prediction_result) { … }
std::vector<std::string> PostProcessor::GetClassifierResults(
const proto::PredictionResult& prediction_result) { … }
std::vector<std::string> PostProcessor::GetBinaryClassifierResults(
const std::vector<float>& model_scores,
const proto::Predictor::BinaryClassifier& binary_classifier) const { … }
std::vector<std::string> PostProcessor::GetMultiClassClassifierResults(
const std::vector<float>& model_scores,
const proto::Predictor::MultiClassClassifier& multi_class_classifier)
const { … }
std::vector<std::string> PostProcessor::GetBinnedClassifierResults(
const std::vector<float>& model_scores,
const proto::Predictor::BinnedClassifier& binned_classifier) const { … }
ClassificationResult PostProcessor::GetPostProcessedClassificationResult(
const proto::PredictionResult& prediction_result,
PredictionStatus status) { … }
int PostProcessor::GetIndexOfTopLabel(
const proto::PredictionResult& prediction_result) { … }
base::TimeDelta PostProcessor::GetTTLForPredictedResult(
const proto::PredictionResult& prediction_result) { … }
RawResult PostProcessor::GetRawResult(
const proto::PredictionResult& prediction_result,
PredictionStatus status) { … }
}