float_t OperationTestModWavelet::testWithCharacteristicNumber( SGPP::base::DataVector& alpha, SGPP::base::DataMatrix& data, SGPP::base::DataVector& classes, SGPP::base::DataVector& charaNumbers) { base::WaveletModifiedBasis<unsigned int, unsigned int> base; return test_datasetWithCharacteristicNumber(this->storage, base, alpha, data, classes, charaNumbers, 0.0); }
void test_calculateROCcurve(base::GridStorage* storage, BASIS& basis, base::DataVector& alpha, base::DataMatrix& data, base::DataVector& classes, base::DataVector& thresholds, base::DataMatrix& ROC_curve) { size_t num_points = thresholds.getSize(); if (ROC_curve.getNrows() != num_points) { ROC_curve.resize(num_points); } base::DataVector charNum(4); for (size_t i = 0; i < num_points; i++) { test_datasetWithCharacteristicNumber(storage, basis, alpha, data, classes, charNum, thresholds.get(i)); float_t tp = charNum.get(0); float_t tn = charNum.get(1); float_t fp = charNum.get(2); float_t fn = charNum.get(3); // 1-spec. ROC_curve.set(i, 0, (fp / (fp + tn))); // sensi. ROC_curve.set(i, 1, (tp / (tp + fn))); } }
float_t OperationTestModPoly::testWithCharacteristicNumber(SGPP::base::DataVector& alpha, SGPP::base::DataMatrix& data, SGPP::base::DataVector& classes, SGPP::base::DataVector& charaNumbers) { return test_datasetWithCharacteristicNumber(this->storage, base, alpha, data, classes, charaNumbers, 0.0); }
double OperationTestModLinear::testWithCharacteristicNumber(DataVector& alpha, DataMatrix& data, DataVector& classes, DataVector& charaNumbers) { modified_linear_base<unsigned int, unsigned int> base; return test_datasetWithCharacteristicNumber(this->storage, base, alpha, data, classes, charaNumbers); }