决策树分类器的准确度得分
Posted
技术标签:
【中文标题】决策树分类器的准确度得分【英文标题】:Accuracy score of a Decision Tree Classifier 【发布时间】:2018-08-18 16:27:23 【问题描述】:import sys
from class_vis import prettyPicture
from prep_terrain_data import makeTerrainData
from sklearn.tree import DecisionTreeClassifier
from sklearn.metrics import accuracy_score
import numpy as np
import pylab as pl
features_train, labels_train, features_test, labels_test = makeTerrainData()
X = features_train
Y = labels_train
clf = DecisionTreeClassifier()
clf = clf.fit(X,Y)
labels_test = clf.predict(features_test)
acc = accuracy_score(labels_test, labels_train)
我无法使用上述代码计算 DecisionTreeClassifier 的准确性。 有人可以帮我解决这个问题吗?
【问题讨论】:
此处提及错误会有所帮助。 嗯,通过比较测试和火车的标签来计算准确度并没有任何意义,首先,它们不相关,其次你很可能甚至没有相同的长度对彼此而言!你的问题是你覆盖了labels_test这个名字,叫它别的名字 【参考方案1】:问题是你把事情搞混了。计算比较训练和测试标签的准确性没有任何意义。
改为执行以下操作:
features_train, labels_train, features_test, labels_test = makeTerrainData()
X = features_train
Y = labels_train
clf = DecisionTreeClassifier()
clf = clf.fit(X,Y)
# Here call it somehing else!
yhat_test = clf.predict(features_test)
# Compute accuracy based on test samples
acc = accuracy_score(labels_test, yhat_test)
【讨论】:
全局名称'accuracy_score'未定义 我收到错误ValueError: labels_test and yhat_test have different number of output (2!=1)
【参考方案2】:
进行此更改
预测 = clf.predict(features_test)
acc = accuracy_score(labels_test, predict)
【讨论】:
有什么方法可以帮助我解决这个问题吗? ***.com/questions/56622349/…以上是关于决策树分类器的准确度得分的主要内容,如果未能解决你的问题,请参考以下文章