假设我在Python中有一个训练有素的SVM分类器,标志为“Probability = True”,如下所示:
classifier = SVC(C = 1000000, gamma = 10, probability=True)
classifier.fit(my_data, the_labels)
当我执行新数据的分类时,我想仅保留概率高于阈值的分类新数据,假设为0.90 . 我怎样才能做到这一点?直到现在我正在做这样的事情,但我被困住了:
labels_predicted = classifier.predict(new_data)
probabilities = classifier.predict_proba(new_data)
第一个命令返回实际标签,第二个命令返回其标签的概率 . 因此,对于每个数据点,我都有其最大似然标签及其所有相关概率属于所有标签 . 但最大似然标签可能是0.4,我不想要它 . 如何只保留具有特定阈值的标签?
1 回答
据我所知,SVC本身不允许以你想要的方式对概率进行阈值处理 . 在构建
labels_predicted
和probabilities
之后,您可以执行第二次索引并获取接受的标签 .我不知道你想用ML-probability低的数据做什么 . 该解决方案完全丢弃它 .