大数据竞赛平台——Kaggle入门

 在学习了一些数据挖掘和机器学习的算法之后,需要积累实际开发经验。在实践的过程中不仅需要自己摸索,还需要向牛人学习和请教。Kaggle就提供这样的数据平台,企业或者研究者可以将数据、问题描述、期望的指标发布到Kaggle上,开发者其数据下载到本地,分析,处理后将结果上传,Kaggle将结果排名显示,有的比赛设有资金。Kaggle还有活跃的讨论区,供大家交流。

如何使用Kaggle

 我们先来看看,Kaggle的具体使用方法。在竞赛界面中https://www.kaggle.com/competitions,可看到比赛分类:Getting Start,Playground,Featured,Research等(用不同颜色区分).建议初学者从Getting Start级别开始,在这个级别上可以看到更多的教程和代码分享,题目也比较简单,适合入门.

competitions
competitions

 以参赛队最多的Tinanic沉船问题为例.https://www.kaggle.com/c/titanic.它的目标是预测乘客是否幸存.

Titanic
Titanic

 界面中提供了问题描述(Overview),数据下载(Data),示例代码(Kernels),讨论区(Discussion),排行榜(Leaderboard),和规则(Rules).

 数据一般是csv格式,它提供了含用条件和结果是训练样本(train.csv),只有条件没有结果的测试样本(test.csv),开发者用训练样本训练出模型,并对测试样本进行预测,预测的结果根据格式要求(gender_submission.csv)保存成文件,上传到Kaggle网站,网站给预测结果评分并排名。

 Kernels中有开发者共享的解题思路和代码,大多数是用Python或R语言实现的。

Kernels
Kernels

 例如Omar El Gabry的A Journey through Titanic就是一个很好教程,它包含了读取数据,处理数据,导出结果的整个过程。用seaborn库图形化分析各个属性(见下图),使用sklearn库作为数据挖掘工具。其中有对数值类属性均值和标准差的计算,对枚举类属性的拆分/组合,处理各种缺失值,以及用人类常识调整特征,比如将父母兄弟配偶统一归入家庭关系,将16岁以下的男女统一归类为儿童等等,还计算了每个属性和结果的相关系数,是一个非常好的特征工程入门范例。在算法方面,它使用了sklearn提供的逻辑回归,SVM,随机森林,最近邻,朴素贝叶斯等方法训练。

seaborn
seaborn

 训练之后开发者可通过Submit Predictions上传自己的预测结果(注意Submit Predictions按钮登录后才显示),就可以看到排名了。
这里提供了大量的数据,我们可以借此尝试求解各种类型的问题,同时参考他人的经验分享,快速提高实践能力。当再拿到一份新数据时,至少有一个思路。

为什么用Kaggle

 在网上看过一篇文章,题目大概是《Kaggle对找工作有什么好处》,其中的答案是“没有”,因为初学者很难在Kaggle中拿到名次,参与程度可深可浅,无法通过它判断你的水平。我觉得Kaggle不是一个贴标签的东西,可以把它作为练习的场地,以及和高手学习机会。

 我们之前看到的书基本都是一个算法,一个算法的讲,当学习了一些算法之后,它们是零散的点,需要在用的过程中把这些点串起来,具体应用中有很多坑,需要自己踩一遍,和照着书打代码是完全不同的,而Kaggle正好给我们提供了这样的数据和评价体系。

 有人说,那我也可以自己拿爬虫抓数据啊,而且我可以找我更有兴趣的数据来做.对于自己找的数据,当对预测结果满意的时候,很难判断到底是数据本身的信息量不够,还是算法不好.Kaggle上是很多人同时比赛,只要拿自己的成绩和Top1的比一比,就能判断是什么问题了,而且很多人会在Kernels中公布算法,在Discussion中讨论,我们也可以在其中提出自己的问题。最重要的是这个过程中,你和他们在思考同一个问题,这种学习即不是填压式的,又可以给你引导。如果能够做到排名靠前就更好了。

Kaggle遇到的问题

 使用Kaggle中遇到的最大问题连不上外网,比如:注册后,在邮箱中点击激活时,出现"You did not enter the correct captcha response. Please try again",这是由于连接google失败导致的。不过只有在注册,下载,上传文件时需要连接外网。

 现在访问外网越来越难了,建议买一些收费的流量(注册激活用不了一两兆),有的工具第一次注册会送你几百兆流量.比较麻烦的是Kaggle的数据都是存在google storage上的,所以下数据时也要连外网.不过像上例中的纯文本数据,也用不了几百K.


技术文章定时推送
请关注公众号:算法学习分享

  • 2
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
你好!对于Kaggle竞赛入门,我可以为你提供一些建议和资源。 首先,了解Kaggle是什么以及它的竞赛和数据科学社区是很重要的。Kaggle是一个数据科学和机器学习竞赛平台,它提供了大量的数据集和挑战,吸引了全球数据科学家的参与。 接下来,你可以通过以下步骤来入门Kaggle竞赛: 1. 注册Kaggle账号:访问Kaggle网站(https://www.kaggle.com/),点击"Sign Up"按钮创建一个账号。 2. 探索竞赛:浏览Kaggle上的竞赛页面,了解当前和已经结束的竞赛。可以按照自己的兴趣选择感兴趣的竞赛。 3. 下载数据集:对于感兴趣的竞赛,你可以下载相关的数据集。通过数据集探索数据的结构和特征。 4. 学习和参考:Kaggle上有很多优秀的内核(Kernel)和讨论(Discussion),可以学习其他数据科学家的方法和经验。阅读这些内核和参与相关的讨论可以提高你的竞赛技能。 5. 入门教程:Kaggle提供了一些入门教程,可以帮助你了解竞赛的基本知识和技巧。你可以在Kaggle的学习路径(Learn)中找到这些教程。 6. 练习和提交:选择一个适合你水平和兴趣的竞赛,开始练习建模和提交结果。通过不断的实践和反馈,提高自己的竞赛技能。 此外,以下是一些Kaggle入门资源可以供你参考: - Kaggle官方学习路径:https://www.kaggle.com/learn/overview - Kaggle内核:https://www.kaggle.com/kernels - Kaggle讨论:https://www.kaggle.com/discussion - Kaggle竞赛页面:https://www.kaggle.com/competitions 希望这些信息能够帮助你入门Kaggle竞赛!如有更多问题,欢迎继续提问。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值