xgboost
Public Member Functions | Static Public Member Functions | Protected Attributes | List of all members
xgboost::Metric Class Referenceabstract

interface of evaluation metric used to evaluate model performance. This has nothing to do with training, but merely act as evaluation purpose. More...

#include <metric.h>

Inheritance diagram for xgboost::Metric:
Inheritance graph
Collaboration diagram for xgboost::Metric:
Collaboration graph

Public Member Functions

virtual void Configure (const std::vector< std::pair< std::string, std::string > > &)
 Configure the Metric with the specified parameters. More...
 
void LoadConfig (Json const &) override
 Load configuration from JSON object By default, metric has no internal configuration; override this function to maintain internal configuration. More...
 
void SaveConfig (Json *p_out) const override
 Save configuration to JSON object By default, metric has no internal configuration; override this function to maintain internal configuration. More...
 
virtual double Eval (const HostDeviceVector< bst_float > &preds, const MetaInfo &info, bool distributed)=0
 evaluate a specific metric More...
 
virtual const char * Name () const =0
 
 ~Metric () override=default
 virtual destructor More...
 
- Public Member Functions inherited from xgboost::Configurable
virtual ~Configurable ()=default
 

Static Public Member Functions

static MetricCreate (const std::string &name, GenericParameter const *tparam)
 create a metric according to name. More...
 

Protected Attributes

GenericParameter const * tparam_
 

Detailed Description

interface of evaluation metric used to evaluate model performance. This has nothing to do with training, but merely act as evaluation purpose.

Constructor & Destructor Documentation

◆ ~Metric()

xgboost::Metric::~Metric ( )
overridedefault

virtual destructor

Member Function Documentation

◆ Configure()

virtual void xgboost::Metric::Configure ( const std::vector< std::pair< std::string, std::string > > &  )
inlinevirtual

Configure the Metric with the specified parameters.

Parameters
argsarguments to the objective function.

◆ Create()

static Metric* xgboost::Metric::Create ( const std::string &  name,
GenericParameter const *  tparam 
)
static

create a metric according to name.

Parameters
namename of the metric. name can be in form metric[@]param and the name will be matched in the registry.
tparamA global generic parameter
Returns
the created metric.

◆ Eval()

virtual double xgboost::Metric::Eval ( const HostDeviceVector< bst_float > &  preds,
const MetaInfo info,
bool  distributed 
)
pure virtual

evaluate a specific metric

Parameters
predsprediction
infoinformation, including label etc.
distributedwhether a call to Allreduce is needed to gather the average statistics across all the node, this is only supported by some metrics

◆ LoadConfig()

void xgboost::Metric::LoadConfig ( Json const &  )
inlineoverridevirtual

Load configuration from JSON object By default, metric has no internal configuration; override this function to maintain internal configuration.

Parameters
inJSON object containing the configuration

Implements xgboost::Configurable.

◆ Name()

virtual const char* xgboost::Metric::Name ( ) const
pure virtual
Returns
name of metric

◆ SaveConfig()

void xgboost::Metric::SaveConfig ( Json p_out) const
inlineoverridevirtual

Save configuration to JSON object By default, metric has no internal configuration; override this function to maintain internal configuration.

Parameters
outpointer to output JSON object

Implements xgboost::Configurable.

Member Data Documentation

◆ tparam_

GenericParameter const* xgboost::Metric::tparam_
protected

The documentation for this class was generated from the following file: