我已经运行了一些预测模型,例如数据集上的Logistic回归,SVM,决策树等。当我添加更多尺寸(预测变量)时,所有模型的准确率都会下降。我该怎么解释?
答案 0 :(得分:0)
通常,这意味着您要添加的功能与您已经拥有的其他功能无关紧要或什至高度相关。因此,您的模型可能会从这些功能中选取训练集中的“随机”信号,然后将其应用于测试数据,因为它不是真实的模式。
但是,此类问题的解释与模型密切相关。线性模型的行为与决策树不同(例如,它们对相关特征更敏感),因此奇怪的是它们会以相同的方式做出反应。如果可以,请详细说明。
答案 1 :(得分:-1)
通常,当您在模型中使用更多功能时,您的模型将过度拟合训练数据。这些模型在测试数据上的表现会很差。要检查模型是否过度拟合,可以计算AUC-预测类别与实际类别的曲线下面积。如果训练数据上的AUC很高(大于0.9),而测试数据上的AUC则很低(大约0.5)-这意味着您的模型过度拟合。 要计算AUC:
from sklearn.metrics import roc_auc_score
print (roc_auc_score((train_Y== 'Your_Positive_Class').astype(float), train_y_predicted))