首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >在scikit-learn中评估估计器的性能

在scikit-learn中评估估计器的性能
EN

Stack Overflow用户
提问于 2013-06-08 02:16:46
回答 1查看 3.1K关注 0票数 1

我正在使用scikit learn 0.13.1在Kaggle上进行比赛。我正在使用决策树分类器,为了评估我的估计器,我遵循了通过train_test_split分割训练数据或使用cross_val_score进行交叉验证的技术。任何一种技术都会表明估计器大约有90%的准确率。然而,当我在实际测试数据上使用估计器时,获得的准确率大约降低了30%。让我们假设训练数据是测试数据的良好表示。

我还能做些什么来评估估计器的准确性?

代码语言:javascript
代码运行次数:0
运行
复制
clf = tree.DecisionTreeClassifier( )
...
X_train, X_test, y_train, y_test = train_test_split(train, target, test_size=0.3, random_state=42)
...
clf.fit(X_train, y_train)
print "Accuracy: %0.2f " % clf.score(X_test, y_test)
...    
scores = cv.cross_val_score(clf, train, target, cv=15)
print "Accuracy: %0.2f (+/- %0.2f)" % (scores.mean(), scores.std() / 2)
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-06-08 02:58:54

这可能意味着在最终评估数据和开发集的分布之间存在显着差异。

不过,测量决策树的过度拟合将是一件有趣的事情:在您的拆分中,训练分数clf.score(X_train, y_train)和测试分数clf.score(X_test, y_test)之间的差异是什么?

同样,纯粹的决策树应该被认为是一个玩具分类器。它们的泛化特性非常差(并且可能会过度拟合)。你真的应该尝试一下ExtraTreesClassifier,因为n_estimators的数量越来越多。如果数据集足够小,则从n_estimators=10开始,然后是50、100、500、1000。

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16990486

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档