• 为了保证你在浏览本网站时有着更好的体验,建议使用类似Chrome、Firefox之类的浏览器~~
    • 如果你喜欢本站的内容何不Ctrl+D收藏一下呢,与大家一起分享各种编程知识~
    • 本网站研究机器学习、计算机视觉、模式识别~当然不局限于此,生命在于折腾,何不年轻时多折腾一下

教你如何在机器学习竞赛中更胜一筹(下)(转载)

ml admin 1年前 (2017-04-22) 1081次浏览 0个评论 扫描二维码

作者:Team Machine Learning,这是一个机器学习爱好者团队,他们热衷于建立一个希望在数据科学/机器学习方面建立事业的有抱负的年轻毕业生和专业人士的环境。

上一节讲述了机器学习的一些知识点和工具,接下来的问题会更加现实。

问答

20.是否需要 Kaggle 排行榜顶尖的技能,也是你作为数据科学家日常工作所需的技能? 或者它们相交还是有些不同? 我可以认为数据科学家的工作是基于 Kaggle 比赛吗? 如果一个人在 Kaggle 上做得很好,那么她会在她的职业生涯中成为一名成功的数据科学家吗?

有一定比例的重叠,特别是在制作预测模型时,通过 python / R 处理数据并创建报告和可视化。Kaggle 不提供(但你可以得到一些想法):

  • 如何将业务问题转化为建模的问题
  • 如何监控模型的部署
  • 如何解释(多次)困难的概念给利益相关者。

我认为在业界总是留有优秀的 kagglers 的空间。 只是数据科学可以有许多可能的路线。 例如,不是每个人都倾向于自己创业,或者是面对客户,而是解决非常特殊的(技术)任务。

21.哪些机器学习概念必须在 Kaggle 比赛中表现良好?.

  • 数据询问/探索
  • 数据转换-预处理
  • 掌握工具知识
  • 熟悉度量和优化
  • 交叉验证
  • 模型校正
  • 集成

22.你如何看待数据科学家工作的未来?自动化会扼杀这份工作吗?

不,我不这么认为。这就是他们过去曾说的自动化计算。但最终需要大量的开发人员来完成这项工作!数据科学家可能会专注于随着时间的推移,将业务问题翻译成 ml 问题,并且通常成为流程的指导者——如建模过程的经理/主管一样。

23.如何在 R 和 Python 中使用整体建模来提高预测的准确性。 请引用一些现实生活中的例子?

你可以看我的github脚本,它解释了不同的基于 Kaggle 比赛的机器学习方法。同时,核对这个集成指南

24.什么是最好的 python 深度学习库或文本分析框架?

我喜欢 Keras(因为现在支持稀疏数据),Gensim(对于 word 2 vec)。

25.在现实生活中,通过这些竞赛获得的知识有多大价值? 我经常看到通过合并许多模型赢得的比赛…这是现实生活中的情况吗? 还是在真实的制作系统中解释模型比这些庞大的组合更有价值?

在某些情况下,是的——可解释或快速(或记忆效率)更重要。但随着时间的推移,这将很可能改变,因为人们将不再害怕黑盒子解决方案,并专注于准确性。

26.我应该学习关于机器学习算法的核心,还是继续尝试形成对算法的理解并使用它们(在比赛中,并解决现实生活中的商业问题)?

你不需要核心。 每天都有出现的新东西——有时很难跟踪它。 这就是为什么你应该专注于任何算法的正确使用,而不是投资于一个。

27.哪些是不平衡数据的最佳机器学习技术?

我在这里不做特别的处理。 这归功于优化正确的度量(对我来说)。用几句话来解释很难。有很多技术的抽样,但我从来没有使用过。 有些人正在使用 Smote。 我认为试图更改目标变量的主分布是没有价值的。你只是最终得到增加或改变主要几率。 如果你真的想要一个界限来决定你是否应该采取行动 – 你可以根据主要几率进行设置。

我可能不是最好的回答这个问题的人。我个人从来没有发现它(显著)有助于改变目标变量的分布或目标变量中的几率的感知。可能只是其他算法在处理这个任务时比其他算法更好(例如基于树的应用程序应该能够处理这个)。

28.通常,营销研究问题主要通过标准回归技术来处理 – 线性和逻辑回归,聚类,因子分析等。我的问题是机器学习和深度学习技巧/算法对营销研究或业务问题有用吗? 例如,如何解释一个神经网络的输出到客户端是有用的?有什么资源可以参考吗?

它们在某种意义上是有用的,你可以很有可能提高准确度(在预测上我们说营销反应)与线性模型(如回归)。 解释输出是很困难的,在我看来,这不是必要的,因为我们一般都会走向更多的黑盒子和复杂的解决方案。

作为数据科学家,你应该努力确保有一种方法来测试一些不可观察(测试)数据的结果有多好,而不是想了解为什么你得到的预测类型。 我认为从复杂模型中解压缩信息是一个很好的话题(对研究有用),但是我不认为这是必要的。

另一方面,公司、人员、数据科学家、统计学家和一般可被归类为“数据科学玩家”的任何人都需要接受教育,接受黑箱解决方案是完全正常的。 这可能需要一段时间,所以运行一些回归以及你正在做的任何其他建模可能会很好,并且通常会尝试提供说明图和总结信息,以便为您的模型为什么执行此操作。

29.如何在 Kaggle 建立合作团队?

你可以在论坛(即 kaggle)中询问。 在“人们可以信任你”之前,这可能需要几场比赛。 原因是他们害怕复制的帐户(违反竞争规则),所以人们更喜欢被证明是公平的人。 假设有一段时间过去了,你只需要想想你想玩的人,你认为你可以从中学习的人与可能和你采取不同的方法的人,所以你可以在组合方法时利用多样性的好处。

30.我已经完成了基本的机器学习课程(理论)。现在我开始了我的实践历程。你刚刚推荐通过 scikit learn 文档,现在人们都在说 TENSORFLOW 是下一个 scikit learn,所以我应该通过 scikit 还是 TF 是一个不错的选择?

我不同意这个“人们在说 TENSORFLOW 是下一个 scikit learn”的说法。 Tensorflow 是一个完成某些机器学习任务(如深入学习)的框架。 我想你可以学习两者,但我会从 scikit 开始。 我个人不知道 TensorFlow,但是我使用的是基于张量流的工具(例如 Keras)。

31.我在任何比赛中面临的主要挑战是清理数据,使其可用于预测模型。 你如何克服呢?

我加入了俱乐部! 一段时间后,你将创建可以相对较快处理这个的管道。 但是,你总是需要在这方面花时间。

32.如何在没有强大的机器的情况下计算大数据?

你应该考虑一些如 vowpal wabbit 和在线解决方案的工具,可以逐一解析所有内容。 你需要在编程方面投入更多资源。

33.什么是特征工程?

简而言之,特征工程可以理解为:

  • 特征变换(例如将数字或分类变量转换为其他类型)
  • 特征选择
  • 利用特征交互(比如我应该把变量 A 和变量 B 结合起来)
  • 处理空值
  • 处理异常值

34.哪些数学技能在机器学习中很重要?

一些基本概率以及线性代数(例如向量)。 然后一些统计数据也有帮助。 像平均值、频率、标准偏差等。

35.可以分享你以前的解决方案吗?

看一些代码和一些没有(只是一般的方法)。

https://www.kaggle.com/c/malware-classification/discussion/13863

http://blog.kaggle.com/2015/05/11/microsoft-malware-winners-interview-2nd-place-gert-marios-aka-kazanova/

https://github.com/kaz-Anova/ensemble_amazon

http://blog.kaggle.com/2015/12/03/dato-winners-interview-1st-place-mad-professors/

http://blog.kaggle.com/2016/04/08/homesite-quote-conversion-winners-write-up-1st-place-kazanova-faron-clobber/

https://mlwave.com/how-we-won-3rd-prize-in-crowdanalytix-copd-competition/

http://blog.kaggle.com/2016/08/31/avito-duplicate-ads-detection-winners-interview-2nd-place-team-the-quants-mikel-peter-marios-sonny/

http://blog.kaggle.com/2016/12/15/bosch-production-line-performance-competition-winners-interview-3rd-place-team-data-property-avengers-darragh-marios-mathias-stanislav/

36.你需要多长时间来建立你的第一个机器学习预测器?

取决于问题(大小、复杂性、特征数量)。一般来说,一开始你可能会花费很多时间在稍后可以考虑的事情上。 考虑到编程,背景或其他经验,每个人的时间可能会有所不同。

37.你可以推荐一些知识竞赛吗,不一定在水平上竞争如 kaggle 但是可以为你的技能打基础?

看这里,titanic 和数字识别器都是很好的比赛来开始。titanic 更好,因为它假定一个平面文件。 数字识别器用于图像分类,因此可能会更先进。

38.你对于使用 Weka 或 R 和 Python 来学习机器学习有什么看法?

我喜欢 Weka。它有一个很好的文档——特别是如果你想学习算法。 不过我不得不承认,它不像 R 和 Python 的一些实现一样有效。 它有很好的覆盖。 Weka 也有一些很好的可视化——特别是对于一些基于树的算法。 我可能会建议你把重点放在 R 和 Python,除非你的背景完全是使用 Java。

概要

简而言之,机器学习竞赛成功的关键在于学习新事物,花费大量的时间训练,特征工程和验证模型。 除此之外,在论坛上与社区进行互动,阅读博客并从其他竞争对手的方法中学习。

以上为译文

本文由北邮@爱可可-爱生活 老师推荐,阿里云云栖社区组织翻译。

文章原标题《Winning Tips on Machine Learning Competitions by Kazanova, Current Kaggle #3》,作者:Team Machine Learning,译者:tiamo_zn,审校:海棠。

文章为简译,更为详细的内容,请查看原文

转载自 https://yq.aliyun.com/articles/73757?spm=5176.100239.blogcont73755.30.vLFXdJ


Deeplearn, 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明教你如何在机器学习竞赛中更胜一筹(下)(转载)
喜欢 (0)
admin
关于作者:

您必须 登录 才能发表评论!