You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

决策树模型测试准确率达100%,咨询潜在问题排查方向

决策树测试集准确率100%的问题排查

可能的问题及排查方向:

  • 数据泄露导致的虚高准确率
    你当前代码在划分训练/测试集之前就对整个数据集做了StandardScaler的拟合与转换,这会让测试集的统计信息(均值、方差)参与到特征缩放的计算中,相当于模型提前“看到”了测试集的信息,直接导致测试集预测结果失真。
    同时要检查特征列里是否存在和目标变量depre_score强关联甚至直接决定标签的特征——比如如果某特征是抑郁评分的组成项,模型自然能完美预测。

  • 数据集本身存在异常
    查看你打印的y_test和y_pred输出,确认测试集的标签是否为单一类别:如果是二分类任务,测试集全是0或全是1,准确率100%没有任何参考价值,这时候看recall_sensitivity和recall_specificity会出现一个为1、另一个无意义的情况。
    另外检查数据集是否存在重复样本,若训练集和测试集包含完全相同的样本,决策树会直接记住这些样本,导致预测全对。

  • 决策树过拟合
    默认参数的DecisionTreeClassifier没有任何剪枝操作,会完全拟合训练集的所有细节(包括噪声)。如果训练集和测试集分布高度相似,模型会把训练集的模式完全复制到测试集,从而得到100%准确率。可以尝试添加剪枝参数(如max_depth、min_samples_split)后重新训练,观察准确率变化。

修正后的代码示例(解决数据泄露+添加剪枝):

#split dataset in features and target variable
feature_cols = ['RIAGENDR_0', 'RIDAGEYR', 'RIDRETH3_2', 'RIDRETH3_3', 'RIDRETH3_4', 'RIDRETH3_6', 'RIDRETH3_7', 'INDFMPIR', 'DMDMARTZ_1.0', 'DMDMARTZ_2.0', 'DMDMARTZ_3.0', 'DMDMARTZ_4.0', 'DMDMARTZ_6.0', 'DMDEDUC2', 'RFXT010', 'BMXWT', 'BMXBMI', 'URXUMA', 'LBDHDD', 'LBXFER', 'LBXGH', 'LBXBPB', 'LBXBCD', 'LBXBSE', 'LBXBMN', 'URXUBA', 'URXUCD', 'URXUCO', 'URXUCS', 'URXUMO', 'URXUMN', 'URXUPB', 'URXUSB', 'URXUSN', 'URXUTL', 'URXUTU']
X = data[feature_cols] # Features
y = data['depre_score'] # Target variable

# 先划分数据集,再做特征缩放
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=1) # 70% training and 30% test

scale = StandardScaler()
X_train = scale.fit_transform(X_train)  # 仅用训练集拟合scaler
X_test = scale.transform(X_test)        # 用训练集的scaler转换测试集

# 添加剪枝参数,避免过拟合
clf = DecisionTreeClassifier(max_depth=5, min_samples_split=10)
clf = clf.fit(X_train,y_train)

y_pred = clf.predict(X_test)

print(y_test)
print(y_pred)

confusion = metrics.confusion_matrix(y_test, y_pred)
print(confusion)

print("Accuracy:",metrics.accuracy_score(y_test, y_pred))

recall_sensitivity = metrics.recall_score(y_test, y_pred, pos_label=1)
recall_specificity = metrics.recall_score(y_test, y_pred, pos_label=0)
print(recall_sensitivity, recall_specificity)

内容的提问来源于stack exchange,提问作者Xinrui Liu

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.15 04:15:36