几个月以来,我一直在努力解决DAT102x:根据政府数据预测抵押批准的情况。
我的目标是了解分类问题的各个方面,而不是排名第一。
但是,我发现一些不清楚的东西:
我从基于样本的交叉验证模型(准确度= 0.69)中获得的性能几乎与使用该模型在整个数据集上获得的性能(准确度= 0.69)相同。
但是当我使用比赛数据集提交数据时,我得到的是“美丽” 0.5。
但是我认为简历会发现过度拟合的问题...
我唯一的逻辑解释是CV失败,因为它基于我使用“ train_test_split”函数创建的样本。
换句话说:因为我使用了这种抽样方式,所以我的样本变成了FRATTAL:无论我创建的子样本是什么,它始终是种群的非常精确的再现。
所以:简历“失败”以检测过度拟合。
好的。我希望我能够解释发生了什么。
(顺便说一句,如果您想知道为什么我不检查它是否运行满负荷:我使用的是HP核心处理器2.8 Mhz 8 RAM ...这将永远需要...。)
这是我的代码的步骤:
0)准备数据集(NaN等)并将所有内容转换为分类(数字->合并)
1)使用train_test_split从500K数据集中采样12.000条记录 2)使用OHE分类编码(选择) 3)通过PCA减少功能 4)执行CV以识别最佳Log_reg超参数“ C”值 5)使用train_test_split拆分样本:从12000个中保存2000个记录 6)建立基于Xtrain,y_train的Log_reg模型(准确性:0.69) 7)将整个数据集拟合到log_reg模型中(精度:0.69) 8)将整个比赛数据集拟合到log_reg模型中 9)取得了0.5的极高准确性。...
我仅有的另一种解释是,我从竞争数据集中选择了一些功能,这些功能被我遗漏的那些功能“覆盖”了。 (你知道:竞争者在那里让我们汗流sweat背...)
在这里,我还有一个“硬件问题”来动摇数字。
如果有人对此有任何了解,我很高兴学习。
非常感谢
愿意根据要求分享。
我期望这两个之一:
或:在整个数据集中表现不佳的模型
或:在比赛数据集上具有可比性(0.66?)的模型。