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 Evaluate (HostDeviceVector< bst_float > const &preds, std::shared_ptr< DMatrix > p_fmat)=0
 Evaluate a metric with DMatrix as input. 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, Context const *ctx)
 create a metric according to name. More...
 

Protected Attributes

Context const * ctx_ {nullptr}
 

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,
Context const *  ctx 
)
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.
ctxA global context
Returns
the created metric.

◆ Evaluate()

virtual double xgboost::Metric::Evaluate ( HostDeviceVector< bst_float > const &  preds,
std::shared_ptr< DMatrix p_fmat 
)
pure virtual

Evaluate a metric with DMatrix as input.

Parameters
predsPrediction
p_fmatDMatrix that contains related information like labels.

◆ 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

◆ ctx_

Context const* xgboost::Metric::ctx_ {nullptr}
protected

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