警惕!机器学习入门阶段易犯的5个错误

怎样进入机器学习领域没有定式。我们的学习方式都有些许不同,学习的目标也因人而异。

但一个共同的目标就是要能尽快上手。如果这也是你的目标,那么这篇文章为你列举了程序员们在通往机器学习高手道路上常见的五种错误。

1.将机器学习看得高不可攀

机器学习不过是另一堆技术的集合,你可以用它来解决复杂问题。这是一个飞速发展的领域,因此,机器学习的学术交流一般出现在学术期刊及研究生的课本里,让它看起来高不可攀又难于理解。

要想高效掌握机器学习,我们需要转变观念,从技术转到方法,由精确变为“足够好”,这也同样适用于程序员感兴趣的其它复杂技术。

2.编写机器学习程序代码

由编码开始入门机器学习会很困难,因为你需要解决的问题从一个变成两个:了解一项技术以便你实现它以及对于给定问题如何应用该项技术。一次解决一个 问题,并利用机器学习、统计分析环境以及算法库来学习如何将一项技术应用于某一问题,这样就会容易很多。这能让你对于若干算法进行相对快速的抽查和调整, 而无需花上大量时间阅读研究论文中含糊的算法描述再将其编码。

实现一个算法可以作为一个单独的项目晚些再完成,比如作为一个练习或是等到原型系统需要投入运行时。一时只学一事,我建议从有GUI的机器学习框架开始入门,不论你是不是程序员。

3.手动搞定工作

实用机器学习包括问题定义、数据准备、结果表达等步骤,它们与算法的测试和调整都能够并应该实现自动化。

在现代软件开发的编译、测试和部署中,自动化操作占有重要地位。对数据准备、算法测试调试、结果的表达编写自动脚本可以在准确性和改进速度方面获得巨大的优势。在专业软件开发课程中学习的知识要牢记于心并不断应用。

可能很多学习机器学习的程序员看的书、上的课对于这一领域的应用本质关注不多,导致很多人入门阶段没有使用自动化手段。实际上,将自动化技术应用到实用机器学习的方方面面会是程序员的巨大机遇。

4.对常见问题重复求解

你正要实现的算法,或是与你正在求解的问题相似的问题,可能早有千百人解决了,就利用他们的经验吧。

解决机器学习问题的知识非常多,当然它们可能都在书本或学术出版物中,但你可以访问它们。做好你的功课,在谷歌谷歌图书谷歌学术上搜索,还可以去机器学习的网络社区。

如果你正要实现一个算法:

必须实现它吗?可不可以在某个库或工具中找到开源的实现复用呢?

你的实现必须从头做起吗?可不可以对现有的开源实现进行代码审查,从中学习或是移植呢?

你必须对标准算法描述编码吗?在其它书论文或是帖子中没有别的算法描述可供代码审查及借鉴呢?

如果你正要求解某个问题:

你必须测试针对这个问题的所有算法吗?这一问题或是同一大类相似问题有没有研究成果显示一些算法或算法类表现良好可供利用?

你必须自己搜集数据吗?有没有公开的数据集或是API你可以直接使用或是作为你问题的替代,以快速弄清哪种方法可以有良好表现?

你必须优化算法的参数吗?在对算法的研究和论文中有没有可用的启发式方法来配置算法呢?

如果你在编程函数库或是特定某一数据结构方面遇到问题,你会选择什么策略,在机器学习领域就用相同的策略吧。参与网络社区并寻求可供利用的资源,可以加速你的学习和项目开发进程。入门阶段可以考虑论坛和问答网站,之后可以与学者和专家联系。

5.忽视数学

起步阶段你并不需要数学理论,但是数学在机器学习中地位重要。因为它能提供最有效、最清晰的方法描述问题及系统的行为。

忽略算法中的数学方法会导致诸多问题,如对某一方法理解有限或是对算法编码时受到限制。举个例子,很多机器学习算法的核心优化是增量式的演进。如果你能明白优化的本质(凸函数),你就能利用这些知识来使用高效的优化算法。

将算法的数学方法内化于心过程缓慢,但你的功力却也随之提升。特别是如果你要从零开始实现高级算法,包括算法的内部优化,多多花时间从数学角度来理解算法吧。

原文发布于微信公众号 - CDA数据分析师(cdacdacda)

原文发表时间:2015-10-16

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

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏机器人网

推荐:10种机器学习的工具和框架(附;链接)

AWS re:Invent 2017上宣布的一款重大产品就是正式发布的亚马逊Sagemaker,这种新的框架简化了构建机器学习模型并部署到云端的任务。

1481
来自专栏AI科技评论

开发丨谷歌机器学习白皮书全解析 43 条黄金法则(四)

AI 科技评论按:此白皮书为谷歌总结的机器学习(ML)最优实践方法,浓缩了其多年技术积累与经验,尤其是 YouTube、Google Play 和 Google...

3795
来自专栏数据科学与人工智能

机器学习与数据科学

计算技术通常用来分析数据,而理解数据则依赖于机器学习。多年来,对于大多数开发者来说,机器学习却是非常遥远、一直是难以企及的。 这可能是现在收益最高,也是最受欢...

26510
来自专栏CDA数据分析师

科普 | 数据挖掘最常用的7种常方法

利用数据挖掘进行数据分析常用的方法主要有分类、回归分析、聚类、关联规则、特征、变化和偏差分析、Web页挖掘等, 它们分别从不同的角度对数据进行挖掘。 分类 分类...

2028
来自专栏AI科技大本营的专栏

Chatbot大牛推荐:AI、机器学习、深度学习必看9大入门视频

这年头,谈话间,不夹杂点“人工智能”,“机器学习”,“深度学习”这样的字眼,就跟九十年代追不上互联网的时髦一样——丢份! 可是呢,说白了,真正懂行的没几个,真的...

3357
来自专栏机器人网

有望在2018年大行其道的10种机器学习工具和框架

2017年是机器学习大放异彩的一年,这归功于众多公司广泛而深入地研究和开发更新颖、更高效的工具和框架。这里介绍,有望在2018年大行其道的10种机器学习的工具和...

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

机器学习入门阶段易犯的 5 个错误

怎样进入机器学习领域没有定式。我们的学习方式都有些许不同,学习的目标也因人而异。 但一个共同的目标就是要能尽快上手。 如果这也是你的目标,那么这篇文章为你列举了...

3095
来自专栏人工智能头条

TalkingData大规模机器学习的应用

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

【观点】数据挖掘之七种常用的方法

利用数据挖掘进行数据分析常用的方法主要有分类、回归分析、聚类、关联规则、特征、变化和偏差分析、Web页挖掘等, 它们分别从不同的角度对数据进行挖掘。 ...

3396
来自专栏CDA数据分析师

一名合格的机器学习工程师需要具备的5项基本技能,你都get了吗?

你是否对机器学习充满兴趣呢?其实到目前为止,每天有越来越多的工程师开始将好奇的目光转向机器学习领域。实际上,你会发现现在没有哪一个领域比机器学习能引起更多的曝光...

1889

扫码关注云+社区