gpt4 book ai didi

python - scikit-learn 虚拟分类器的理论基础是什么?

转载 作者:太空狗 更新时间:2023-10-29 18:18:40 27 4
gpt4 key购买 nike

通过documentation我读到可以使用虚拟分类器根据分类算法对其进行测试。

This classifier is useful as a simple baseline to compare with other (real) classifiers. Do not use it for real problems.

虚拟分类器在使用分层方法时会做什么。我知道文档说:

generates predictions by respecting the training set’s class distribution.

谁能给我一个更理论化的解释,说明为什么这是分类器性能的证明?

最佳答案

虚拟分类器可以衡量“基线”性能——即即使只是猜测,也应该期望达到的成功率。

假设您希望确定给定对象是否具有某种属性。如果您已经分析了大量这些对象并发现 90% 包含目标属性,那么猜测该对象的每个 future 实例都拥有目标属性会给您 90% 的猜测正确可能性。以这种方式构建您的猜测等同于在您引用的文档中使用 most_frequent 方法。

由于许多机器学习任务都试图提高(例如)分类任务的成功率,因此评估基线成功率可以为一个分类器应该超越的最小值提供一个底值。在上面讨论的假设中,您希望您的分类器获得超过 90% 的准确率,因为即使是“虚拟”分类器也可以达到 90% 的成功率。

如果使用上面讨论的数据,使用 stratified 参数训练一个虚拟分类器,该分类器将预测它遇到的每个对象都有 90% 的概率具有目标属性。这不同于使用 most_frequent 参数训练虚拟分类器,因为后者会猜测所有 future 对象都具有目标属性。下面是一些代码来说明:

from sklearn.dummy import DummyClassifier
import numpy as np

two_dimensional_values = []
class_labels = []

for i in xrange(90):
two_dimensional_values.append( [1,1] )
class_labels.append(1)

for i in xrange(10):
two_dimensional_values.append( [0,0] )
class_labels.append(0)

#now 90% of the training data contains the target property
X = np.array( two_dimensional_values )
y = np.array( class_labels )

#train a dummy classifier to make predictions based on the most_frequent class value
dummy_classifier = DummyClassifier(strategy="most_frequent")
dummy_classifier.fit( X,y )

#this produces 100 predictions that say "1"
for i in two_dimensional_values:
print( dummy_classifier.predict( [i]) )

#train a dummy classifier to make predictions based on the class values
new_dummy_classifier = DummyClassifier(strategy="stratified")
new_dummy_classifier.fit( X,y )

#this produces roughly 90 guesses that say "1" and roughly 10 guesses that say "0"
for i in two_dimensional_values:
print( new_dummy_classifier.predict( [i]) )

关于python - scikit-learn 虚拟分类器的理论基础是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29441943/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com