原文: https://machinelearningmastery.com/get-started-with-kaggle/
机器学习竞赛的四步流程。
Kaggle 是一个托管机器学习竞赛的社区和网站。
有竞争力的机器学习可以成为开发和练习技能的好方法,也可以展示您的能力。
在这篇文章中,您将发现一个简单的 4 步骤过程,以便在 Kaggle 上进行有竞争力的机器学习。
让我们开始吧。
如何开始使用 Kaggle 照片由 David Mulder 拍摄,保留一些权利。
我通过电子邮件询问了很多问题:
我如何开始使用 Kaggle?
我对这个问题做了最后的回答,并决定把它变成这篇博文。我希望你发现它很有用。
希望对你有帮助。
有许多方法可以学习和练习应用机器学习。
Kaggle 有一些特别的好处,你应该认真考虑:
- 问题已明确定义,所有可用数据均直接提供。
- 考虑到公共和私人排行榜的严酷事实,用一个糟糕的测试设置来欺骗自己更难。
- 每个比赛都经常进行很好的讨论和分享,您可以从中学习并为此做出贡献。
- 您可以在可以展示您的技能的困难的真实世界数据集上构建项目组合。
- 这是一个完整的精英管理,提供能力和技能是决定因素,而不是你去学校的地方,你知道的数学,或你有多少学位。
我推荐一个简单的 4 步骤过程。步骤是:
- 选择一个平台。
- 练习标准数据集。
- 练习旧的 Kaggle 问题。
- 在 Kaggle 上竞争。
该过程易于描述,但难以实现。这需要时间和精力。这将是艰苦的工作。
但…
它会得到回报,如果你有条不紊并且坚持下去,你将成为世界级的机器学习从业者。
你可以直接进入第 4 步,这可能适合你,但我设计了这个过程,以最大限度地提高你坚持下去并获得高于平均水平的结果。
让我们更详细地看一下每一步。
有许多机器学习平台可供选择,你最终可能会使用其中许多,但从一开始。
我推荐 Python。
为什么?
- 对 Python 机器学习技能的需求正在增长。
- Python 是一种功能齐全的编程语言(与 R 不同)。
- 生态系统已经足够成熟(sklearn,pandas,statsmodels,xgboost 等)
- 该平台拥有一些最好的深度学习工具(theano,tensorflow,keras)
选择一个平台并开始学习如何使用它。
这里有一些进一步的阅读:
选择平台后,您需要非常擅长在真实数据集上使用它。
我建议在 UCI 机器学习库或类似工具上完成一套标准的机器学习问题。
将每个数据集视为迷你竞争对手。
- 将其拆分为训练并保留测试集,将测试集拆分为公共和私人排行榜集。
- 概述了处理每个数据集的过程,坚持下去,添加到该数据集,直到您可以轻松获得要处理的任何小数据集的最佳结果。
- 将每个数据集的时间框设置为一个或几个小时。
- 利用数据集上和与数据集相关的出版物来帮助更好地定义给定问题并解释这些特征。
- 了解如何充分利用工具,算法以及数据集。
把这部分想象成演习。好起来
将项目作为项目组合的一部分,以利用您处理的每个新项目。
这里有一些进一步的阅读:
现在您已经了解了工具以及如何使用它们,现在是时候练习旧的 Kaggle 数据集了。
您可以访问过去 Kaggle 比赛的数据集。您还可以发布候选解决方案,并在公共和私人排行榜上对其进行评估。
我建议在过去的几年中解决一系列 Kaggle 问题。
此步骤旨在帮助您了解最佳表现者如何处理机器学习竞赛并学习如何将他们的方法集成到您的流程中。
- 选择各种不同的问题类型,迫使您学习和应用新的和不同的技术。
- 研究论坛帖子,获胜者写作博客文章,GitHub 存储库以及问题的所有其他信息,并将这些方法合并到您的流程中。
- 目标是在公共或私人排行榜中获得前 10%或更高的分数。
- 尝试将尽可能多的获胜者方法纳入您的候选解决方案。
把它想象成先进的钻头。善于像竞争获胜者一样思考并使用他们的方法和工具。
再次,将每个已完成的项目添加到您的投资组合中,以利用未来的项
这里有一些进一步的阅读:
你现在准备在 Kaggle 上竞争了。
得到它。
- 考虑一次处理一个问题,直到你出现问题或陷入困境。
- 旨在为您所处理的每个竞赛在私人排行榜上取得前 25%或前 10%的成绩。
- 在论坛上自由分享;这将导致合作。
- 最大限度地缩短阅读或思考好主意与实现之间的时间(例如分钟)。
玩得开心。
他们可能是比赛,但你参与学习和分享。
这里有一些进一步的阅读:
在这篇文章中,您发现了一个简单的 4 步过程,用于开始并在 Kaggle 上进行有竞争力的机器学习。
你参加过 Kaggle 比赛吗? 你是怎么开始的?
你决定按照这个过程吗? 你好吗?