作者 | Terrance Whitehurst
编译 | 安可
什么是Kaggle Kernels?
如果您熟悉jupyter笔记本,那么理解kaggle Kernels将不是一项困难的任务。对于那些不知道的人,jupyter笔记本是一个开源的web应用程序,它允许您创建和共享包含实时代码、等式、可视化和叙事文本的文档。Kaggle Kernels几乎是一个更简单的笔记本,可以在浏览器中直接运行。从另一个角度来看,kaggle Kernels本质上是一种jupyter笔记本,可以在浏览器中完全免费运行,并提供免费的gpu。
Forking Kaggle Kernels
在使用kaggle Kernels进行机器学习时,第一种技巧非常关键。Kaggle提供了一个名为“forking”的功能。这个特性允许您查看一个完整构建的项目,并尝试使用它,然后在kaggles自己的免费gpu上运行它。到今天为止,我发现关于机器学习最伟大的引言之一来自Ian Goodfellow,“在理解了基础知识之后,您应该尝试实现尽可能多的模型”。本质上,他所描述的是通过做来学习。forking是通过实践来学习的,因为它允许您查看程序的核心,并进行自己的调整,从而构建关于某些技术如何影响模型性能的可靠直觉。
视频链接:https://youtu.be/ipa7MzNozCY
玩转Kaggle的易于使用的数据集
第二种技巧使用kaggle中的数据。Kaggle有许多用于深度学习实验的数据集。我发现这很利于研究论文的实现。我建议从kaggle kernel中学习的一种方法是,在你读完一篇研究论文之后,尝试使用kaggles数据集来实现你从这篇论文中学到的思想。我发现从机器学习大师那里学习新技术的最好方法是了解如何在真实世界的数据上工作。Kaggle Kernels带给您的唯一好处是可以访问大量真实世界的数据,您可以使用这些数据来运行实验。我把kaggle kernel当作我的机器学习沙坑。
视频链接:https://youtu.be/r-KlpAunhgg
改进kernels
第三种技巧可能是我最喜欢的。有了“fork”和kaggle项目的能力,我想出了一个绝妙的主意。我设定了一个目标,在kaggle上选择15个项目,并对所有15个项目进行改进。我做过的一些项目无法改进,没关系,我只是确保改进了15个不同的项目。我在这个学习过程背后的动机是,如果你能把某件事做得更好,那么你解决问题的直觉只会从这个过程中增强。
结论
有时很难获得在线学习机器学习的有效技术,这会引导你创建自己的技术。我希望读过这篇文章的人能利用这些信息做出一些惊人的事情。学习快乐!
来源:https://medium.com/@TerranceWhitehurst/three-amazing-learning-techniques-to-help-you-learn-more-from-kaggle-kernels-6f21bd3610a6