foldId] = evaluation.getAverageOperationCosts( testLabels, predictedTestLabels, avgTestFeatureCosts, falsePositiveCost) print("NEW ULTRA FAST VERSION") print("dataName = ", dataName) print("NUMBER_OF_FOLDS = ", constants.NUMBER_OF_FOLDS) print("onlyLookingOneStepAhead = ", onlyLookingOneStepAhead) print("densityRegressionModelName = ", densityRegressionModelName) print("falseNegativeCost = ", falseNegativeCost) print("RESULTS WITH DYNAMIC ACQUISTION (SLOW VERSION): ") print( "*************************** AVERAGE OVER ALL FOLDS *******************************************" ) evaluation.showHelper("total costs = ", testTotalCostsAllFolds) evaluation.showHelper("feature costs = ", testFeatureCostsAllFolds) evaluation.showHelper("misclassification costs = ", testMisClassificationCostsAllFolds) evaluation.showHelper("accuracy = ", testAccuracyAllFolds) evaluation.showHelper("AUC = ", testAUCAllFolds) resultsRecorder.addAll( falsePositiveCost, (testTotalCostsAllFolds, testFeatureCostsAllFolds, testMisClassificationCostsAllFolds, testAccuracyAllFolds, testAUCAllFolds, testRecallAllFolds, testFDRAllFolds, testOperationCostsAllFolds, testRecallAllFolds_exactRecall, testFDRAllFolds_exactRecall, testOperationCostsAllFolds_exactRecall)) print("variationName = ", variationName)
print("*************************** GREEDY MISER *******************************************") totalCostsValidResult, validAccuracy, validFeatureCosts, bestLambdaId, bestTreeId, avgBestTotalCostsValidResult = evaluation.getBestAverage10TrainFoldTotalCostsResultSymmetricForGreedyMiser(dataName, testFoldId, misclassificationCostsSymmetric, sameClassCost) allTestFoldAvgBestTotalCostsValidResult[testFoldId] = avgBestTotalCostsValidResult allBestSettings[testFoldId, 0] = bestLambdaId allBestSettings[testFoldId, 1] = bestTreeId validTotalCostsAllFolds[testFoldId] = totalCostsValidResult validFeatureCostsAllFolds[testFoldId] = validFeatureCosts validMisClassificationCostsAllFolds[testFoldId] = (1.0 - validAccuracy) * misclassificationCostsSymmetric + validAccuracy * sameClassCost validAccuracyAllFolds[testFoldId] = validAccuracy # print("bestLambdaId = ", bestLambdaId) print("*************************** AVERAGE OVER ALL FOLDS (misclassification costs = " + str(misclassificationCostsSymmetric) + ", sameClassCost = " + str(sameClassCost) + ") *******************************************") evaluation.showHelper("total costs = ", validTotalCostsAllFolds) evaluation.showHelper("feature costs = ", validFeatureCostsAllFolds) evaluation.showHelper("misclassification costs = ", validMisClassificationCostsAllFolds) evaluation.showHelper("accuracy = ", validAccuracyAllFolds) evaluation.showHelper("average best validation costs (for analysis only) = ", allTestFoldAvgBestTotalCostsValidResult) # save best settings from validation data outputFilename = "/export/home/s-andrade/dynamicCovariateBaselines/GreedyMiser/" + dataName + "_" + str(int(misclassificationCostsSymmetric)) + "_allBestSettings" matlabDict = {} matlabDict["allBestSettings"] = numpy.asmatrix(allBestSettings, dtype = numpy.int) scipy.io.savemat(outputFilename, matlabDict) if os.path.isfile(experimentSetting.MATLAB_DATA_FOLDER_RESULTS + "greedyMiser/" + dataName + "_" + str(int(misclassificationCostsSymmetric)) + "_forFinalTrainingAndTesting_" + str(4) + "_allResults.mat"):