机器学习项目中常见的误区

在最近的一次报告中,Ben Hamner向我们介绍了他和他的同事在Kaggle比赛中看到的一些机器学习项目的常见误区。

这个报告于2014年2月在Strate举办,名为《机器学习小精灵》。

在这篇文章中,我们将从Ben的报告中了解一些常见的误区,它们是什么及如何避免陷入这些误区。

机器学习的过程

在报告之前,Ben向我们展示了一个解决机器学习问题大体流程。

机器学习流程,摘自Ben Hamner的《机器学习小精灵》

这个流程包括如下9步:

  1. 以一个行业问题开始
  2. 源数据
  3. 切分数据
  4. 选择一个评价标准
  5. 进行特征提取
  6. 训练模型
  7. 特征选择
  8. 模型选择
  9. 生产系统

Ben强调这个过程是迭代的过程,而非线性的。

他也谈及在这个过程中的每一步都可能出错,每个错误都可能使整个机器学习过程难以达到预期效果。

鉴别狗和猫

Ben提出了一个研究建造一个“自动猫门”的案例,这个“门”对猫开放而对狗关闭。这是一个启发性的例子,因为它设计到了处理数据问题上的一系列关键问题。

鉴别狗和猫,摘自Ben Hamner的《机器学习小精灵》

样本大小

这个例子的第一个卖点就是,模型学习的准确度与数据样本大小有关,并展示更多的样本与更好的准确度之间的关系。

他通过不断增加训练数据,直到模型准确度趋于稳定。这个例子能够很好让你了解,你的系统对样本大小及相应调整有多敏感。

错误的问题

第二个卖点就是这个系统失败了,它对所有的猫都拒之门外。

这个例子突出了理解我们需要解决的问题的约束是非常重要的,而不是关注你想解决的问题。

机器学习工程中的误区

Ben接着讨论了解决机器学习问题中的4个常见误区。

虽然这些问题非常常见,但是他指出它们相对比较容易被识别及解决。

过拟合,摘自Ben Hamner的《机器学习小精灵》

  • 数据泄露:利用模型中的生产系统不能访问的数据。在时序问题中这个问题特别常见。也可能发生在像系统id的数据上,id可能表示一个类标签。运行模型并且仔细查看有助于系统的特征。完整检查并考虑其是否有意义。(检查参考论文《数据挖掘中的泄露 | Leakage in Data Mining》)。
  • 过拟合:在训练数据上建模太精密,同时模型中又存在一些噪声点。这时过拟合会降低模型的扩展能力, 其在更高的维度与更复杂的类界限下更甚。
  • 数据采用和切分:相对于数据泄露,你需要非常小心地知道训练、测试、交叉检验数据集是否是真正的独立数据集。对于时序问题,很多想法和工作需要保证可以按时间顺序给系统回复数据和验证模型的准确性。
  • 数据质量:检查你的数据的一致性。Ben给了一个航班起飞及着陆地点的数据,很多不一致,重复及错误的数据需要被识别及明确地处理。这些数据会直接损害建模及模型的扩展能力。

总结

Ben的《机器学习小精灵》是一个快速且实用的报告。

你将会得到一个关于机器学习常见误区的有用速成学习,并且这些技巧能很容易地用在处理数据的工作当中。

来源:stone数据分析

1、回复“数据分析师”查看数据分析师系列文章

2、回复“案例”查看大数据案例系列文章

3、回复“征信”查看相关征信的系列文章

4、回复“可视化”查看可视化专题系列文章

5、回复“SPPS”查看SPSS系列文章

6、回复“答案”查看hadoop面试题题目及答案

7、回复“爱情”查看大数据与爱情的故事

8、回复“笑话”查看大数据系列笑话

9、回复“大数据1、大数据2、大数据3、大数据4”查看大数据历史机遇连载

PPV课大数据ID: ppvke123 (长按可复制)

大数据人才的摇篮!专注大数据行业人才的培养。每日一课,大数据(EXCEL、SAS、SPSS、Hadoop、CDA)视频课程。大数据资讯,每日分享!数据咖—PPV课数据爱好者俱乐部!

原文发布于微信公众号 - PPV课数据科学社区(ppvke123)

原文发表时间:2015-09-23

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏AI研习社

利用好奇心做稀疏反馈任务的学习

AI 研习社按:近期,Unity 发布了版本 0.4 的机器学习智能体工具包(ML-Agent toolkit v0.4),其中最为突出的新功能是通过额外的基于...

942
来自专栏AI科技评论

Andrej Karpathy发文谈神经网络:这不仅仅是分类器,这是一种新的软件开发思想

AI科技评论按:有越来越多的传统编程语言(C、C++、Java)等程序员开始学习机器学习/深度学习,而对机器学习/深度学习的研究人员来说,编程也是必备技巧。那么...

3225
来自专栏ATYUN订阅号

强化学习简介(第一部分)

强化学习是机器学习的一个方向,智能体通过执行某些操作并观察从这些操作中获得的奖励或者结果来学习在环境中行为。

1403
来自专栏PPV课数据科学社区

目前数据科学和机器学习中使用的最多的20个包

CRAN包库有6778个常用的包。哪些是你知道的?下面对此进行以下的分析,同时在文章底部另请参见原始数据链接。 这些R包都是Kagglers里的技术大牛最青睐的...

3535
来自专栏专知

【下载】JAVA程序员深度学习实用指引《Deep Learning: Practical Neural Networks》

【导读】 Yusuke Sugomori等人的新书《JAVA深度学习实战》(Deep Learning: Practical Neural Networks w...

34612
来自专栏新智元

MIT开发听觉神经网络模型,学会从2秒片段识别音乐类型

1604
来自专栏AI科技评论

学界 | 清华与迈阿密大学独家解析:更新了朋友圈和微博动态,好友何时会点赞评论?

AI科技评论按:本文由清华大学媒体与网络实验室以及迈阿密大学物理系共同合作完成,作者包括:余林韵(清华大学计算机系博士生,已毕业加入今日头条人工智能实验室)、崔...

37412
来自专栏AI派

一文告诉你什么是用户画像

做推荐系统的时,我们需要了解我们的用户,也就是说需要对用户的基本情况、基本喜好有个了解。

3865
来自专栏AI研习社

Andrej Karpathy谈神经网络:这不仅仅是分类器,这是一种新的软件开发思想

有越来越多的传统编程语言(C、C++、Java)等程序员开始学习机器学习/深度学习,而对机器学习/深度学习的研究人员来说,编程也是必备技巧。那么传统程序员和深度...

3224
来自专栏PPV课数据科学社区

入行AI最需要的五大技能

摘要: 作为一名软件工程师,我们应该活到老学到老,时刻与不断发展的框架、标准和范式保持同步。同时,还要能活学活用,在工作中使用最合适的工具,以提高工作效率。随着...

4407

扫码关注云+社区