def _make_tree(sf): model = tc.decision_tree_classifier.create(sf, 'target', validation_set=None, max_depth=10) tree = DecisionTree.from_model(model) return tree
def setUpClass(self): sf = tc.SFrame({ 'cat1': ['1', '1', '2', '2', '2'] * 100, 'cat2': ['1', '3', '3', '1', '1'] * 100, 'target': ['1', '2', '1', '2', '1'] * 100, }) model = tc.classifier.boosted_trees_classifier.create( sf, 'target', validation_set=None, max_depth=2) tree = DecisionTree.from_model(model) self.tree = tree
def setUpClass(self): sf = tc.SFrame({ "cat1": ["1", "1", "2", "2", "2"] * 100, "cat2": ["1", "3", "3", "1", "1"] * 100, "target": ["1", "2", "1", "2", "1"] * 100, }) model = tc.classifier.boosted_trees_classifier.create( sf, "target", validation_set=None, max_depth=2) tree = DecisionTree.from_model(model) self.tree = tree
def _run_test(self, sf): sf['target'] = [i < sf.num_rows()/2 for i in range(sf.num_rows())] for model in [ tc.regression.boosted_trees_regression, tc.classifier.boosted_trees_classifier, tc.regression.random_forest_regression, tc.classifier.random_forest_classifier, tc.regression.decision_tree_regression, tc.classifier.decision_tree_classifier]: m = model.create(sf, 'target', validation_set = None, max_depth=2) tree = DecisionTree.from_model(m) for nid, node in tree.nodes.items(): val = tree.get_prediction_score(nid) if node.is_leaf: self.assertTrue(type(val) in {float, int}) else: self.assertEqual(val, None)