Exemple #1
0
    def produceScore(self, analyzedDatasets: Dataset,
                     currentScore: ClassificationResults,
                     completeDataset: Dataset, oa: OperatorAssignment,
                     candidateAttribute) -> float:
        if candidateAttribute != None:
            analyzedDatasets.addColumn(candidateAttribute)

        evaluationResults = self.runClassifier(
            Properties.classifier, analyzedDatasets.generateSet(True),
            analyzedDatasets.generateSet(False))

        # in order to deal with multi-class datasets we calculate an average of all AUC scores (we may need to make this weighted)
        auc = self.CalculateAUC(evaluationResults, analyzedDatasets,
                                evaluationResults.actualPred)

        if currentScore != None:
            return auc - currentScore.getAuc()
        else:
            return auc
Exemple #2
0
 def GenerateAndAddColumnToDataset(self, dataset: Dataset,
                                   oaList: List[OperatorAssignment]):
     for oa in oaList:
         ci = OperatorsAssignmentsManager.generateColumn(dataset, oa, True)
         dataset.addColumn(ci)