TTK
|
#include <ClusteringMetrics.h>
Public Member Functions | |
ClusteringMetrics () | |
int | execute (const int *clustering1, const int *clustering2, const size_t n, double &nmiValue, double &ariValue) const |
int | computeContingencyTables (const int *clust1, const int *clust2, const size_t nPoint, std::vector< std::vector< int > > &contingencyMatrix, std::vector< int > &sumLin, std::vector< int > &sumCol) const |
int | computeARI (const std::vector< std::vector< int > > &contingencyMatrix, const std::vector< int > &sumLin, const std::vector< int > &sumCol, const size_t nPoint, double &ariValue) const |
int | computeNMI (const std::vector< std::vector< int > > &contingencyMatrix, const std::vector< int > &sumLin, const std::vector< int > &sumCol, const size_t nPoint, double &nmiValue) const |
![]() | |
Debug () | |
~Debug () override | |
virtual int | setDebugLevel (const int &debugLevel) |
int | setWrapper (const Wrapper *wrapper) override |
int | printMsg (const std::string &msg, const debug::Priority &priority=debug::Priority::INFO, const debug::LineMode &lineMode=debug::LineMode::NEW, std::ostream &stream=std::cout) const |
int | printMsg (const std::vector< std::string > &msgs, const debug::Priority &priority=debug::Priority::INFO, const debug::LineMode &lineMode=debug::LineMode::NEW, std::ostream &stream=std::cout) const |
int | printErr (const std::string &msg, const debug::LineMode &lineMode=debug::LineMode::NEW, std::ostream &stream=std::cerr) const |
int | printWrn (const std::string &msg, const debug::LineMode &lineMode=debug::LineMode::NEW, std::ostream &stream=std::cerr) const |
int | printMsg (const std::string &msg, const double &progress, const double &time, const int &threads, const double &memory, const debug::LineMode &lineMode=debug::LineMode::NEW, const debug::Priority &priority=debug::Priority::PERFORMANCE, std::ostream &stream=std::cout) const |
int | printMsg (const std::string &msg, const double &progress, const double &time, const debug::LineMode &lineMode=debug::LineMode::NEW, const debug::Priority &priority=debug::Priority::PERFORMANCE, std::ostream &stream=std::cout) const |
int | printMsg (const std::string &msg, const double &progress, const double &time, const int &threads, const debug::LineMode &lineMode=debug::LineMode::NEW, const debug::Priority &priority=debug::Priority::PERFORMANCE, std::ostream &stream=std::cout) const |
int | printMsg (const std::string &msg, const double &progress, const debug::LineMode &lineMode=debug::LineMode::NEW, const debug::Priority &priority=debug::Priority::PERFORMANCE, std::ostream &stream=std::cout) const |
int | printMsg (const std::string &msg, const double &progress, const debug::Priority &priority, const debug::LineMode &lineMode=debug::LineMode::NEW, std::ostream &stream=std::cout) const |
int | printMsg (const std::vector< std::vector< std::string > > &rows, const debug::Priority &priority=debug::Priority::INFO, const bool hasHeader=true, const debug::LineMode &lineMode=debug::LineMode::NEW, std::ostream &stream=std::cout) const |
int | printMsg (const debug::Separator &separator, const debug::LineMode &lineMode=debug::LineMode::NEW, const debug::Priority &priority=debug::Priority::INFO, std::ostream &stream=std::cout) const |
int | printMsg (const debug::Separator &separator, const debug::Priority &priority, const debug::LineMode &lineMode=debug::LineMode::NEW, std::ostream &stream=std::cout) const |
int | printMsg (const std::string &msg, const debug::Separator &separator, const debug::LineMode &lineMode=debug::LineMode::NEW, const debug::Priority &priority=debug::Priority::INFO, std::ostream &stream=std::cout) const |
void | setDebugMsgPrefix (const std::string &prefix) |
![]() | |
BaseClass () | |
virtual | ~BaseClass ()=default |
int | getThreadNumber () const |
virtual int | setThreadNumber (const int threadNumber) |
Additional Inherited Members | |
![]() | |
int | printMsgInternal (const std::string &msg, const std::string &right, const std::string &filler, const debug::Priority &priority=debug::Priority::INFO, const debug::LineMode &lineMode=debug::LineMode::NEW, std::ostream &stream=std::cout) const |
int | printMsgInternal (const std::string &msg, const debug::Priority &priority, const debug::LineMode &lineMode, std::ostream &stream=std::cout) const |
int | welcomeMsg (std::ostream &stream) |
![]() | |
int | debugLevel_ |
std::string | debugMsgPrefix_ |
std::string | debugMsgNamePrefix_ |
![]() | |
bool | lastObject_ |
int | threadNumber_ |
Wrapper * | wrapper_ |
![]() | |
static COMMON_EXPORTS debug::LineMode | lastLineMode = ttk::debug::LineMode::NEW |
The ClusteringMetrics class provides methods to compute two scores comparing two clustering of the same points. It can compute the NMI score and the ARI score.
This module defines the ClusteringMetrics class that computes both the NMI (normalized mutual information) and the ARI (adjusted rand index) scores between two clustering of the same points.
Related publication:
'Principal Geodesic Analysis of Merge Trees (and Persistence Diagrams)' Mathieu Pont, Jules Vidal and Julien Tierny. IEEE Transactions on Visualization and Computer Graphics, 2023.
Definition at line 30 of file ClusteringMetrics.h.
ttk::ClusteringMetrics::ClusteringMetrics | ( | ) |
Definition at line 7 of file ClusteringMetrics.cpp.
int ttk::ClusteringMetrics::computeARI | ( | const std::vector< std::vector< int > > & | contingencyMatrix, |
const std::vector< int > & | sumLin, | ||
const std::vector< int > & | sumCol, | ||
const size_t | nPoint, | ||
double & | ariValue | ||
) | const |
Definition at line 103 of file ClusteringMetrics.cpp.
int ttk::ClusteringMetrics::computeContingencyTables | ( | const int * | clust1, |
const int * | clust2, | ||
const size_t | nPoint, | ||
std::vector< std::vector< int > > & | contingencyMatrix, | ||
std::vector< int > & | sumLin, | ||
std::vector< int > & | sumCol | ||
) | const |
Definition at line 49 of file ClusteringMetrics.cpp.
int ttk::ClusteringMetrics::computeNMI | ( | const std::vector< std::vector< int > > & | contingencyMatrix, |
const std::vector< int > & | sumLin, | ||
const std::vector< int > & | sumCol, | ||
const size_t | nPoint, | ||
double & | nmiValue | ||
) | const |
Definition at line 153 of file ClusteringMetrics.cpp.
int ttk::ClusteringMetrics::execute | ( | const int * | clustering1, |
const int * | clustering2, | ||
const size_t | n, | ||
double & | nmiValue, | ||
double & | ariValue | ||
) | const |
Definition at line 205 of file ClusteringMetrics.cpp.