EUnsupervisedSegmenterMetrics Class

Collection of metrics used to evaluate the state of an EUnsupervisedSegmenter.
A metric is a value summarizing a collection of unsupervised segmentation results (see EUnsupervisedSegmenterResult). New results can be added to the object individually with EUnsupervisedSegmenterMetrics::AddResult or collectively with EUnsupervisedSegmenterMetrics::AddMetrics.

EUnsupervisedSegmenterMetrics contains two types of metrics: unsupervised metrics that are computed only on good images and supervised metrics that are computed on both good and bad images. The supervised metrics are accessible only when results for bad images were added to the object. When supervised metrics are accessible, EUnsupervisedSegmenterMetrics::IsTotallyUnsupervised is false.
There is only one unsupervised metric: the error (see EUnsupervisedSegmenterMetrics::Error).
These supervised metrics are:
- The accuracy (see EUnsupervisedSegmenterMetrics::GetAccuracy).
- The confusion matrix (see EUnsupervisedSegmenterMetrics::GetConfusion and EConfusionMatrixElement)
- The ROC curve (see EUnsupervisedSegmenterMetrics::GetROCPoint)
- The area Under ROC curve (see EUnsupervisedSegmenterMetrics::AreaUnderROCCurve)

The accuracy, confusion matrix and the points of the ROC curve depend on the value of the classification threshold. Their default values corresponds to the classification threshold of the segmenter (EUnsupervisedSegmenter::ClassificationThreshold).
However, a EUnsupervisedSegmenterMetrics object computes the metrics for EUnsupervisedSegmenterMetrics::NumberOfClassifiers classification thresholds. You can access the metrics for these classification thresholds by passing an index between 0 and EUnsupervisedSegmenterMetrics::NumberOfClassifiers-1 to the accessor of the metrics.

Namespace: Euresys::Open_eVision_2_11::EasyDeepLearning

Methods

Adds the other metrics to the current metrics of this object.
Adds the given result with the corresponding groundtruth label to the metrics.
The accuracy of the segmenter.
The accuracy is the number of images that were correctly classified over the total number of images that was used to evaluate the classifier.
The area under ROC curve (AUC) of the classifier (see EUnsupervisedSegmenterMetrics::GetROCPoint). It's value is between 0 and 1.
In the context of unsupervised segmentation, the AUC is equal to the probability that good images will have a lower reconstruction error than defective images.
This metrics measure discrimination capacity of a model.
It tells how much the model is capable of distinguishing between classes. The higher the AUC, the better the model is.
Best achievable accuracy.
The classification threshold corresponding to this accuracy is given by EUnsupervisedSegmenterMetrics::BestAccuracyClassificationThreshold.
Classification threshold giving the best achievable accuracy (see EUnsupervisedSegmenterMetrics::BestAccuracy).
Best achievable balanced accuracy.
The classification threshold corresponding to this accuracy is given by EUnsupervisedSegmenterMetrics::BestBalancedAccuracyClassificationThreshold.
Classification threshold giving the best achievable balanced accuracy (see EUnsupervisedSegmenterMetrics::BestBalancedAccuracy).
Best achievable weighted accuracy.
The weighted accuracy is the weighted average of the true positive rate and the true negative rate (which is equal to 1 minus the false positive rate). See EROCPoint.
The classification threshold corresponding to this accuracy is given by EUnsupervisedSegmenterMetrics::GetBestWeightedAccuracyClassificationThreshold.
Classification threshold giving the best achievable weighted accuracy (see EUnsupervisedSegmenterMetrics::GetBestWeightedAccuracy).
Confusion value of one label with another.
The confusion value of a label with another is the number of images belonging to this label that are classified as belonging to the other label.
For a EUnsupervisedSegmenterMetrics there are only 2 labels (good and defective) so the confusion matrix is only composed of 4 values which are called matrix element (see EUnsupervisedSegmenterMetrics).
The confusion matrix is computed for a given threshold (see EUnsupervisedSegmenter::ClassificationThreshold) which means an index can be passed to the method (see EUnsupervisedSegmenterMetrics::NumberOfClassifiers).
The error of the segmenter on good images.
The error, which is also called the loss, is the quantity that is minimized during the training of the deep neural network. For segmentation, the error is the reconstruction loss.
Number of different possible classifiers.
Each classifier is obtained by choosing a different classification threshold (see EUnsupervisedSegmenter::ClassificationThreshold and corresponds to a point in the ROC curve (see EUnsupervisedSegmenterMetrics::GetROCPoint).
ROC (Receiver Operating Characteristic) point.
A ROC point is a point from the ROC curve which is the plot of the true positive rate against the false positive rate (see EConfusionMatrixElement) obtained at various classification threshold (see EUnsupervisedSegmenter::ClassificationThreshold).
The ROC points are stricly ordered by decreasing threshold order meaning the true positive rate and false positive rate (see EConfusionMatrixElement) are sorted in increasing order.
Whether this metrics has results from only good images (true) or from both good and defective images (false).
Some metrics are accessible only if EUnsupervisedSegmenterMetrics::IsTotallyUnsupervised is false.
Indicates whether the object contains at least one result.
Loads an unsupervised segmentation metric. The given ESerializer must have been created for reading.
Assignment operator
Removes the given result with the corresponding groundtruth label to the metrics.
Saves an unsupervised segmentation metric. The given ESerializer must have been created for writing.
Serializes the metrics.

EUnsupervisedSegmenterMetrics Class

Collection of metrics used to evaluate the state of an EUnsupervisedSegmenter.
A metric is a value summarizing a collection of unsupervised segmentation results (see EUnsupervisedSegmenterResult). New results can be added to the object individually with EUnsupervisedSegmenterMetrics::AddResult or collectively with EUnsupervisedSegmenterMetrics::AddMetrics.

EUnsupervisedSegmenterMetrics contains two types of metrics: unsupervised metrics that are computed only on good images and supervised metrics that are computed on both good and bad images. The supervised metrics are accessible only when results for bad images were added to the object. When supervised metrics are accessible, EUnsupervisedSegmenterMetrics::IsTotallyUnsupervised is false.
There is only one unsupervised metric: the error (see EUnsupervisedSegmenterMetrics::Error).
These supervised metrics are:
- The accuracy (see EUnsupervisedSegmenterMetrics::GetAccuracy).
- The confusion matrix (see EUnsupervisedSegmenterMetrics::GetConfusion and EConfusionMatrixElement)
- The ROC curve (see EUnsupervisedSegmenterMetrics::GetROCPoint)
- The area Under ROC curve (see EUnsupervisedSegmenterMetrics::AreaUnderROCCurve)

The accuracy, confusion matrix and the points of the ROC curve depend on the value of the classification threshold. Their default values corresponds to the classification threshold of the segmenter (EUnsupervisedSegmenter::ClassificationThreshold).
However, a EUnsupervisedSegmenterMetrics object computes the metrics for EUnsupervisedSegmenterMetrics::NumberOfClassifiers classification thresholds. You can access the metrics for these classification thresholds by passing an index between 0 and EUnsupervisedSegmenterMetrics::NumberOfClassifiers-1 to the accessor of the metrics.

Namespace: Euresys.Open_eVision_2_11.EasyDeepLearning

Properties

The area under ROC curve (AUC) of the classifier (see EUnsupervisedSegmenterMetrics::GetROCPoint). It's value is between 0 and 1.
In the context of unsupervised segmentation, the AUC is equal to the probability that good images will have a lower reconstruction error than defective images.
This metrics measure discrimination capacity of a model.
It tells how much the model is capable of distinguishing between classes. The higher the AUC, the better the model is.
Best achievable accuracy.
The classification threshold corresponding to this accuracy is given by EUnsupervisedSegmenterMetrics::BestAccuracyClassificationThreshold.
Classification threshold giving the best achievable accuracy (see EUnsupervisedSegmenterMetrics::BestAccuracy).
Best achievable balanced accuracy.
The classification threshold corresponding to this accuracy is given by EUnsupervisedSegmenterMetrics::BestBalancedAccuracyClassificationThreshold.
Classification threshold giving the best achievable balanced accuracy (see EUnsupervisedSegmenterMetrics::BestBalancedAccuracy).
The error of the segmenter on good images.
The error, which is also called the loss, is the quantity that is minimized during the training of the deep neural network. For segmentation, the error is the reconstruction loss.
Number of different possible classifiers.
Each classifier is obtained by choosing a different classification threshold (see EUnsupervisedSegmenter::ClassificationThreshold and corresponds to a point in the ROC curve (see EUnsupervisedSegmenterMetrics::GetROCPoint).

Methods

Adds the other metrics to the current metrics of this object.
Adds the given result with the corresponding groundtruth label to the metrics.
The accuracy of the segmenter.
The accuracy is the number of images that were correctly classified over the total number of images that was used to evaluate the classifier.
Best achievable weighted accuracy.
The weighted accuracy is the weighted average of the true positive rate and the true negative rate (which is equal to 1 minus the false positive rate). See EROCPoint.
The classification threshold corresponding to this accuracy is given by EUnsupervisedSegmenterMetrics::GetBestWeightedAccuracyClassificationThreshold.
Classification threshold giving the best achievable weighted accuracy (see EUnsupervisedSegmenterMetrics::GetBestWeightedAccuracy).
Confusion value of one label with another.
The confusion value of a label with another is the number of images belonging to this label that are classified as belonging to the other label.
For a EUnsupervisedSegmenterMetrics there are only 2 labels (good and defective) so the confusion matrix is only composed of 4 values which are called matrix element (see EUnsupervisedSegmenterMetrics).
The confusion matrix is computed for a given threshold (see EUnsupervisedSegmenter::ClassificationThreshold) which means an index can be passed to the method (see EUnsupervisedSegmenterMetrics::NumberOfClassifiers).
ROC (Receiver Operating Characteristic) point.
A ROC point is a point from the ROC curve which is the plot of the true positive rate against the false positive rate (see EConfusionMatrixElement) obtained at various classification threshold (see EUnsupervisedSegmenter::ClassificationThreshold).
The ROC points are stricly ordered by decreasing threshold order meaning the true positive rate and false positive rate (see EConfusionMatrixElement) are sorted in increasing order.
Whether this metrics has results from only good images (true) or from both good and defective images (false).
Some metrics are accessible only if EUnsupervisedSegmenterMetrics::IsTotallyUnsupervised is false.
Indicates whether the object contains at least one result.
Loads an unsupervised segmentation metric. The given ESerializer must have been created for reading.
Assignment operator
Removes the given result with the corresponding groundtruth label to the metrics.
Saves an unsupervised segmentation metric. The given ESerializer must have been created for writing.
Serializes the metrics.