def testAucFromRoc(self): self.treeRankForest = TreeRankForestR() self.treeRankForest.setLeafRank(self.treeRankForest.getTreeRankLib().LRsvm) self.treeRankForest.learnModel(self.X, self.Y) roc = self.treeRankForest.predictROC(self.X, self.Y) auc = self.treeRankForest.aucFromROC(roc) logging.debug(self.treeRankForest) self.assertAlmostEquals(auc, 0.7603246, 1) self.assertTrue(0 <= auc <= 1)
def setUp(self): logging.basicConfig(stream=sys.stdout, level=logging.DEBUG) self.baseLib = importr('base') self.treeRankLib = importr('TreeRank') utilLib = importr("utils") utilLib.data("TRdata") XY = numpy.array(robjects.r["Gauss2D.learn"]).T self.X = XY[:, 0:2] self.Y = numpy.array([XY[:, 2]], numpy.int).T trainExamples = 500 self.trainX = self.X[0:trainExamples, :] self.trainY = self.Y[0:trainExamples, :] self.testX = self.X[trainExamples:, :] self.testY = self.Y[trainExamples:, :] self.treeRankForest = TreeRankForestR()
def profileLearnModel(self): treeRankForest = TreeRankForestR() treeRankForest.printMemStats = True treeRankForest.setMaxDepth(2) treeRankForest.setNumTrees(5) numExamples = 650 numFeatures = 950 X = numpy.random.rand(numExamples, numFeatures) Y = numpy.array(numpy.random.rand(numExamples) < 0.1, numpy.int) def run(): for i in range(10): print("Iteration " + str(i)) treeRankForest.learnModel(X, Y) #print(treeRank.getTreeSize()) #print(treeRank.getTreeDepth()) ProfileUtils.profile('run()', globals(), locals())
def testInit(self): self.treeRankForest = TreeRankForestR()