求助:DecisionTreeClassifier对象无prediction_proba属性问题解决
问题解决:DecisionTreeClassifier的AttributeError错误
错误原因及修正:
- 方法名拼写错误:你代码里的
prediction_proba是错误写法,scikit-learn中DecisionTreeClassifier的概率预测方法正确名称是predict_proba(去掉中间的"tion")。 - 参数拼写错误:初始化分类器时的
splutter参数应为splitter,这个参数指定决策树的分裂策略,拼写错误会导致分类器初始化失败,虽然这不是当前报错的直接原因,但必须修正。
修正后的完整代码:
from sklearn.tree import DecisionTreeClassifier # 修正splutter参数为splitter clf = DecisionTreeClassifier(random_state=5, criterion='gini', splitter='random') clf = clf.fit(train_X, train_Y) # 修正prediction_proba为predict_proba prediction = clf.predict_proba(test_X)[:,1]
补充说明:predict_proba返回形状为(n_samples, n_classes)的数组,[:,1]用于提取二分类场景中样本属于第二类的概率,这个用法合理,前提是你的数据集为二分类任务。
内容的提问来源于stack exchange,提问作者Gulikwok
相关产品推荐
相关产品推荐

