Kaggle 由 Anthony Goldbloom 和 Ben Hamner 创立于 2010 年.企业和研究人员在 Kaggle 上发布数据,让全世界的统计师和数据科学家对数据集进行建模和分析,以竞赛的形式评选出最佳模型.Kaggle 众包竞赛模式的价值在于,让人们有可能从无穷无尽的建模方法中,寻找到最优解.
目前在竞赛模式上,除了面向大众的竞赛,Kaggle 还推出了免费的 InClass 模式,方便高校教师和学生在 Kaggle 平台上完成随堂练习.
最近,大数据文摘也观察到,Kaggle 首页新增了一个 Learn 板块(也免费!),主打动手学数据科学(Hands-On Data Science Education),似乎在向竞赛 + 学习平台方向转型.
Kaggle Learn 版块地址:
https://www.kaggle.com/learn
1 月 22 日,Kaggle 联合创始人 Anthony Goldbloom 发表了一篇博客,宣布 2018 年将为 Kaggle 平台添加新的教育资源,致力于将 Kaggle 社区从主要关注机器学习竞赛扩展到更广泛的数据科学和机器学习平台,希望借由比赛,公开数据集平台和 Kaggle Kernels,最终让 Kaggle 成为可以完成一切数据科学和机器学习活动的地方.
2017 年 Kaggle 活跃用户从 2016 年的 471K 增加到 895K
大数据文摘摘录了博客中透露的部分 Kaggle 2018 年计划:
比赛:
2018 年,我们计划开始支持新的竞赛类型,以确保我们能够支持处于机器学习和人工智能领域前沿的问题.要做到这一点,我们的目标是更好地支持代码竞赛(通过 Kaggle 上传代码而不是解决方案文件).这将使我们能够举办新类型的比赛,包括强化学习比赛和有计算限制的比赛.
公共数据集平台:
在 2018 年,我们希望除了因机器学习比赛而闻名之外,我们也能以公开数据集平台闻名.为此,我们需要继续增加 Kaggle 上高质量数据集的数量.我们正在计划整合和添加服务,使我们的社区能够通过与像 BigQuery 这样的数据仓库的集成来处理更大的数据集,并增加允许在实时数据集中流式传输的功能,而不仅仅是上传静态数据集.
Kaggle 内核(Kernels):
Kaggle 内核目前最主要用于共享模型,以及分析公开数据集平台上的数据.在 2018 年,我们希望将 Kaggle Kernels 建设成为一个强大的独立产品,包括让 Kagglers 能够使用 Kaggle 内核与他们自己的私有数据集,访问 GPU 并支持更复杂的通道.
Kaggle 学习:
许多用户从 Kaggle 开始他们的数据科学事业.为了更好地支持我们社区的这一部分,我们在 https://www.kaggle.com/learn 上推出了机器学习实践课程平台.我们希望它能够辅助用户创建高度精确的机器学习模型,并帮助他们快速 get 所需技能,以帮助他们找到第一个数据科学工作.
今天,文摘菌就带大家来实地测评一下 Kaggle 新上线的机器学习实践课程平台.
整个学习版块又分为 4 个模块:机器学习,R 语言,数据可视化,深度学习.
强调实践和动手
Kaggle 的课程介绍页显示,这个免费的在线课程适用于那些现在想开始学习数据科学和机器学习的人. 你会花更多的时间来编写代码,而不是阅读它. 你将了解必须的理论背景,以便做出良好的建模决策,但这些课程不会在阅读历史背景方面浪费你的时间--那不会帮助你成为一名能实际工作的数据科学家.
讲师选择
在讲师的选择上,也能看出 Kaggle 不强调理论背景,而是强调实践.三位课程制作者 Dan Becker,Aleksey Bilogur 和 Rachael Tatman 各自的履历中似乎都没有特别强调计算机或统计背景,其中 Rachael Tatman 更是本科学习英语专业,之后直博语言学专业.简直 666666!
FAQ
我们将用到什么语言,为什么选择他们?
除了 R 语言模块之外,所有东西都用 Python. 哪种语言适合你? 互联网充斥着语言选择的辩论. 但是和与你合作的人用同一种语言是很有价值的. Python 是数据科学中最受欢迎的语言,R 是第二大流行语言. 所以我们推荐 R 和 Python,且更倾向于 Python.
我需要提前了解多少 Python?
你应该熟悉变量,列表,字典,函数和循环. 如果你想学习 Python 入门知识,我们强烈推荐 Codecademy 上的 Learn Python 系列. 学完他们的第 1-8 节课,你将可以学习 Kaggle 机器学习课程. 他们也有被称为 pro 的付费课,但是你不需要这些材料就可以在 Kaggle 上学习机器学习系列.
机器学习模块
下面,就让文摘菌带大家看看机器学习模块都有哪些内容:
模块分为 2 个等级,共 15 门细分课程.
等级 1
模型是什么
开始你的机器学习项目
用 Pandas 选择和筛选数据
跑第一个模型
模型验证
欠拟合,过拟合和模型最优化
随机森林
在比赛中做提交
等级 2
处理缺失数据
使用分类数据
XGBoost 梯度提升
部分相关性画图
Scikit-Learn 流程
交叉验证
数据泄露
让我们先来看看等级 1 的第一课:模型是什么.
打开课程页面之后,我们发现,课程以内嵌的 Notebook 方式呈现.第一课并未涉及代码,只是介绍了决策树模型.浏览完整个 Notebook,也就完成了该部分课程.简直 so easy!
第二课就涉及代码了.我们需要 Fork 讲师提供的 Notebook,进入自己的编程环境.
点一下 Fork,我们就进入到自己的 Notebook 里啦.Fork 的作用是让我们复制了讲师提供的代码到自己的 Notebook.
在自己的 Notebook 里,我们可以看到一个个代码块.代码块有 2 种模式可以选择:Markdown 和 Code.例如,在这张图里,你所看到的 "Introduction" 和下面的文字就是 Markdown 格式,Markdown 方便我们展示文字.而 "Write Your Code Below" 下面则是 Code 格式,可以直接运行代码喔.我们也可以选择隐藏该代码块,在上方或下方插入新的代码块,运行代码块.和 Jupyter Notebook 的操作方式一致哦.
完成代码之后,我们可以下载 Notebook 到本地,也可以点击 Publish 提交,提交后的界面是一个 html 页面.
不过,我们无需担心隐私问题,因为之前选择的是 "Private" 模式的 Notebook,提交之后,也只会显示在个人的 Kernel 里,只有自己能看到.
所有写过的代码也不会丢失,会在自己的 Kernel 下面汇总,点开后仍然可以再次编辑该 Notebook.这个功能文摘菌觉得很是方便.
如果你选择公开展示 Notebook,其他小伙伴也可以给你评论.
记者也发现了一个提问的好地方:learn forum 论坛.不过目前看来,论坛并不活跃,一个话题下通常只有一个留言.也许是大家觉得这一切都太小 case 了 (O_O)
就目前的课程内容来说,Kaggle 推出的 Learn 版块所教授的内容并不深入,但是其友好的界面和动手环境非常适合数据科学与机器学习初学者.对于有代码恐惧症的童鞋(比如文摘菌)来说,这是个入门数据科学领域的好机会!如果能一步步跟着教程学下来,相信各位童鞋会对机器学习,数据可视化等领域的基本概念和基础模型有所了解,同时也将有机会敲下自己人生中的第一行代码.
来源: https://yq.aliyun.com/articles/399913