Kaggle(1):数据挖掘的基本流程

我觉得做任何事情,一定要有章法。对于学习类的事情,就是要有框架。第一次打Kaggle比赛,我的一个重要收获就是初步搞清楚了打这类比赛的框架。

可以分为以下六步:理解问题、分析问题、算法选择、结果评价、算法调优、提交和总结。要想很好的完成比赛,这六步缺一不可。

1)理解问题

也就是认真读题,在这一步,最重要的是有耐心。不要想着多么迅速的把这一步搞定,最终的目的是要把问题理解清楚,包括:要解决的问题是什么,要预测的目标量是什么,我们有哪些可用信息等等。不要忽略任何一个细节。

2)分析问题

问题是属于哪一类型。是分类、聚类还是时间序列问题,如何进行区分。这类问题有什么特点,一般的分析流程是怎样的。如果不懂或者觉得没见过,那很可能就是要返回去加强相关的理论知识。

3)算法选择

一般的,每一类问题可以利用的算法都不止一种。针对这一问题,我应该选择哪类算法,为什么?相比于其它算法,我选择的算法有何优势。

4)结果评价

不要傻傻的预测出一个结果就提交和上传,这样一般都不会有好的成绩。可以将原始数据分为训练数据集和测试数据集,然后自己验证模型的效果。如果效果不佳,那要再调优;如果效果很好,可以将整个原始数据集作为训练样本,计算一个新模型,再用新模型做预测。

5)算法调优

根据评价结果对算法进行调优,这应该是个技术活,甚至可能是最具技术含量的一个部分。要对算法进行调优,可能涉及到数据集的选择和构建、算法参数的选择和调整等。

6)提交和总结

提交答案,看看自己的成绩和高水平选手的差距。想想这次比赛中我的不足在哪里,今后该如何提升。

每一次的比赛,都是在为自己积累相应的项目经验,都是提升自身技术水平的过程。这些,其实就是你在将来能够和面试官聊的东西;你掌握得越深入,你能够展示出来的东西就越是多,成功获得面试官青睐的可能性也就越大。

你可能感兴趣的:(Kaggle(1):数据挖掘的基本流程)