ppforest2 v0.1.0
Projection Pursuit Decision Trees and Random Forests
Loading...
Searching...
No Matches
ppforest2::stats::ConfusionMatrix Struct Reference

A confusion matrix comparing predicted vs actual group labels. More...

#include <ConfusionMatrix.hpp>

Public Member Functions

 ConfusionMatrix ()=default
 Default-construct an empty confusion matrix.
 
 ConfusionMatrix (types::ResponseVector const &predictions, types::ResponseVector const &actual)
 Construct a confusion matrix from predictions and actual labels.
 
float error () const
 Compute the overall error rate (1 - accuracy).
 
types::Vector< float > group_errors () const
 Compute per-group error rates.
 

Public Attributes

std::map< int, int > label_index
 Map from group label to matrix row/column index.
 
types::Matrix< int > values
 The NxN confusion matrix (actual x predicted).
 

Detailed Description

A confusion matrix comparing predicted vs actual group labels.

Rows correspond to actual groups and columns to predicted groups. Provides overall error rate, per-group error rates, JSON serialization, and formatted terminal printing with diagonal highlighting and marginal errors.

types::ResponseVector preds = model.predict(x_test);
ConfusionMatrix cm(preds, y_test);
float err = cm.error(); // overall error rate
auto per_class = cm.group_errors(); // per-group error rates
Eigen::Matrix< Response, Eigen::Dynamic, 1 > ResponseVector
Dynamic-size column vector of group labels.
Definition Types.hpp:29
ConfusionMatrix()=default
Default-construct an empty confusion matrix.

Constructor & Destructor Documentation

◆ ConfusionMatrix() [1/2]

ppforest2::stats::ConfusionMatrix::ConfusionMatrix ( )
default

Default-construct an empty confusion matrix.

◆ ConfusionMatrix() [2/2]

ppforest2::stats::ConfusionMatrix::ConfusionMatrix ( types::ResponseVector const & predictions,
types::ResponseVector const & actual )

Construct a confusion matrix from predictions and actual labels.

Parameters
predictionsThe predicted group labels.
actualThe true group labels (must have the same size).
Exceptions
std::invalid_argumentIf predictions and actual have different sizes.

Member Function Documentation

◆ error()

float ppforest2::stats::ConfusionMatrix::error ( ) const

Compute the overall error rate (1 - accuracy).

Returns
The proportion of misclassified samples.

◆ group_errors()

types::Vector< float > ppforest2::stats::ConfusionMatrix::group_errors ( ) const

Compute per-group error rates.

Returns
A vector of error rates (one per group), where 0 = perfect, 1 = all wrong.

Member Data Documentation

◆ label_index

std::map<int, int> ppforest2::stats::ConfusionMatrix::label_index

Map from group label to matrix row/column index.

◆ values

types::Matrix<int> ppforest2::stats::ConfusionMatrix::values

The NxN confusion matrix (actual x predicted).


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