def get_label_probs(self, c2_data, vector=None):
        if vector is None:
            vector = vectorize_with_sparse_features(self.sparse_features,
                                                    self.total_feature_count,
                                                    c2_data)
        label_results = {}
        label_scores = {}

        best_choice = None
        best_score = 0

        for label in self.decision_trees.keys():
            label_results[label] = {1: 0.0, 0: 0.0}
            for pair in self.decision_trees[label]:
                model = pair["model"]
                probs = model.predict_probs(vector)[0]
                label_results[label][0] += 0.0 if 0 not in probs else probs[0]
                label_results[label][1] += 0.0 if 1 not in probs else probs[1]
            #print label_results[label]
            score = label_results[label][1] - label_results[label][0]
            score = float(score) / float(len(self.decision_trees[label]))
            label_scores[label] = score
            if score > best_score:
                best_choice = label
                best_score = score

        return best_choice, label_results, label_scores
Пример #2
0
    def get_label_probs(self, c2_data, vector=None):
        if vector is None:
            vector = vectorize_with_sparse_features(self.sparse_features, self.total_feature_count, c2_data)
        label_results = {}
        label_scores = {}

        best_choice = None
        best_score = 0

        for label in self.decision_trees.keys():
            label_results[label] = {1: 0.0, 0: 0.0}
            for pair in self.decision_trees[label]:
                model = pair["model"]
                probs = model.predict_probs(vector)[0]
                label_results[label][0] += 0.0 if 0 not in probs else probs[0]
                label_results[label][1] += 0.0 if 1 not in probs else probs[1]
            #print label_results[label]
            score = label_results[label][1] - label_results[label][0]
            score = float(score) / float(len(self.decision_trees[label]))
            label_scores[label] = score
            if score > best_score:
                best_choice = label
                best_score = score

        return best_choice, label_results, label_scores
Пример #3
0
    def get_label_scores(self, c2_data, vector=None):
        if vector is None:
            vector = vectorize_with_sparse_features(self.sparse_features, self.total_feature_count, c2_data)
        label_results = {}

        best_choice = None
        best_score = 0

        for label in self.decision_trees.keys():
            label_results[label] = []
            for pair in self.decision_trees[label]:
                model = pair["model"]
                label_results[label].append(float(model.predict(vector)[0]))
            #print label_results[label]
            score = sum(label_results[label])
            if score > best_score:
                best_choice = label
                best_score = score

        return best_choice, label_results
    def get_label_scores(self, c2_data, vector=None):
        if vector is None:
            vector = vectorize_with_sparse_features(self.sparse_features,
                                                    self.total_feature_count,
                                                    c2_data)
        label_results = {}

        best_choice = None
        best_score = 0

        for label in self.decision_trees.keys():
            label_results[label] = []
            for pair in self.decision_trees[label]:
                model = pair["model"]
                label_results[label].append(float(model.predict(vector)[0]))
            #print label_results[label]
            score = sum(label_results[label])
            if score > best_score:
                best_choice = label
                best_score = score

        return best_choice, label_results