专栏首页新智元【盘点】掌握机器学习的5条必由之路(附学习资料推荐)

【盘点】掌握机器学习的5条必由之路(附学习资料推荐)

【新智元导读】作者在本文提出一种5步入门并应用机器学习的方法。它不是传统的方法。传统的机器学习方法提倡从下往上学,先从理论和数学开始,然后是算法实现,最后让你去解决现实世界的问题。

作者提倡的掌握机器学习的方法与传统方法相反,是从最有价值的成果部分开始。

目标是得到有商业价值的成果:怎样得出结果。

这个结果以一系列预测或能进行可靠预测的模型的方式呈现。

这是一种从上往下的、结果优先的方法。

在商业社会,开始时就有要得到结果的目标是最重要的,那么,怎样才能得到结果?

我们总结了5个步骤:

· 第1步:调整心态 (要有信心!).

· 第2步:选择程序

· 第3步:选择工具

· 第4步:用数据集练习

· 第5步:做一个作品集

就这么简单!

下图是这个过程的图示,为了简便省略了第1步和第5步。

下面是这个过程的详细解释。

第0步:了解机器学习基本概念

开始学习之前,你需要了解机器学习的一些基本概念和大事件。可以问自己一些问题,并尝试回答。

例如:

· 你应该了解机器学习是什么,并能够向同事解释。

· 你应该了解机器学习的一些经典案例。

· 你应该知道机器学习对某些复杂问题来说是唯一的解决办法。

· 你应该知道预测建模是应用机器学习最有效的部分。

· 你应该知道机器学习怎样应用于AI以及数据科学。

· 你应该了解可得到的机器学习算法有哪些类型。

· 你应该了解一些机器学习的基本术语。

第1步:调整心态

机器学习不是教授的专利,也不是只为天才和学术研究者所专有的。

你得有信心!

你一定能学会机器学习,并且利用它解决问题。

有什么理由做不到呢?

· 你不需要写代码

· 不需要掌握很多数学知识

· 不需要高等学历

· 不需要大数据

· 不需要超级计算机

· 也不需要花很多时间

真的,让你止步不前、甚至无法开始的原因只有一个,就是你自己。

· 也许你只是找不到动力。

· 也许你想必须备齐所有工具才开始。

· 也许你一直挑高深的问题做,而不是从初级问题开始。

· 也许你在使用工具和库时缺乏系统的过程。

· 也许你没有好好利用工具和库。

这些想法让你无法开始。下面这篇文章可能对你有帮助:

What isHolding you Back From Your Machine Learning Goals?http://machinelearningmastery.com/what-is-holding-you-back-from-your-machine-learning-goals/

解决这些问题的方法很多,你要发现它们、消除它们,然后继续前进。

为什么学机器学习?

当你认识到你可以学机器学习,你还要明白为什么学它。

· 也许你对学习更多机器学习算法感兴趣。

· 也许你对创建预测感兴趣。

· 也许你对解决复杂问题感兴趣。

· 也许你对开发更智能的软件感兴趣。

· 也许你甚至想成为一名数据科学家。

仔细思考这个问题,明白自己为什么想学习机器学习。

下面这篇文章可能对你有帮助:

http://machinelearningmastery.com/why-get-into-machine-learning/

找到了“为什么”后,你还要找到你的根据地。

下面这些分类,你属于哪种呢?

· 兴趣广泛的生意人

· 正在做项目的负责人

· 机器学习专业的学生

· 机器学习研究人员

· 正在处理棘手难题的研究者

· 想实现算法

· 需要一次性预测

· 需要可以利用的模型

· 数据科学家

· 数据分析师

不同的人有不同的兴趣点,因此会从不同的方向开始机器学习。

不是所有书籍或材料都适合你,知道你属于哪种人,然后再找适合自己的资料。

下面这篇文章可能对你有帮助:

http://machinelearningmastery.com/machine-learning-tribe/

第2步:选择程序

你想在一个接一个的问题中得出高于平均水平的结果吗?

那么你需要按照系统的程序来。

· 好的程序能让你利用和重复利用最好的练习

· 意味着你不必依赖记忆或直觉

· 引导你做完一个项目

· 让你总是明白下一步该做什么

· 还可以针对你的特殊问题类型和工具进行调整

我推荐的程序如下:

· Step 1: 确定问题

· Step 2: 准备数据

· Step 3: 抽样检查算法

· Step 4: 改善结果

· Step 5: 呈现结果

你可以不按这个步骤来,但在处理预测建模问题时最好要有系统性的程序。下面这篇文章可能对你有帮助:

http://machinelearningmastery.com/process-for-working-through-machine-learning-problems/

第3步:选择工具

选择一个能实现机器学习结果的最佳工具,并学习怎样最高效地使用工具。

我最推荐的工具是以下三个:

· WekaMachine Learning Workbench (适合初学者).Weka提供GUI界面,而且不需要自己写代码,可以用于快速一次性的建模问题。

· PythonEcosystem (适合中级学习者). 尤其是SciPy平台的pandas和scikit-learn。开发时你可以直接使用上面的代码和模型,它们的可靠性足够用来运行操作了。

· R Platform (适合高级学习者).R语言是为统计计算设计的,虽然语言艰深而且部分软件包文档很少,但它提供了很多方法。

针对专门领域,推荐的工具如下:

· 用于深度学习的Keras. Keras使用Python语言,意味着你可以充分利用整个Python生态系统,节省大量时间。它的界面非常干净,同时也支持Theano和Keras后端。

· 用于损失函数的XGBoost. 这是能最快实现损失函数的工具,它也支持R语言和Python。

以上只是我的一些个人推荐。同时也要学习怎样使用你选择的工具,成为这方面的专家。

用哪种编程语言?

用哪种编程语言都没关系,甚至用哪种工具也不会有什么影响。你在一个平台上实践时学到的技巧也能很容易转移到另一个平台。

第4步:用数据集练习

确定了程序和工具后,就需要练习,做很多练习。

用标准机器学习数据集练习。

· 使用从现实问题(而不是人造问题)中收集的真实数据集

· 使用适合内存和excel表单的小型数据集

· 使用好理解的数据集,以便预测结果类型

用不同类型的数据集进行练习。练习你不熟悉的问题,这能推动你在寻求解决方法的过程中技术得到进步。了解数据集的不同特性,例如:

· 不同类型的监督学习,例如分类和回归。

· 不同规格的数据集,实例(instance)的数量从小于十个、数十、数百到数千。

· 属性(attribute)的数量不同的数据集,从小于十种、数十种、数百种到数千种。

· 属性类型不同的数据集,包括实数、整数、分类数、序数、混合等。

· 不同的领域,能迫使你快速了解新的问题。

使用UCI机器学习资料库(UCI MachineLearning Repository)

上面有最常用、最好理解的一些数据集,对入门来说非常好。

·了解更多:PracticeMachine Learning with Small In-Memory Datasets from the UCI Machine LearningRepository

利用机器学习竞赛,例如Kaggle

Kaggle上的数据集通常更大型,建模需要更多准备。

这篇文章列举了一些最常用的数据集:

Tour ofReal-World Machine Learning Problems

用你自己设计的问题练习

为适合你自己的机器学习问题收集数据,你会发现这非常有帮助。

第5步:做一个作品集

为你完成的项目建一个作品集,并好好利用。

在用数据集练习并不断进步的过程中,创建一个半正式的输出集合,总结你的发现。

· 你可以上传代码,并在readme文档中总结。

· 你可以在博客中发表你的结果。

· 你可以做成幻灯片。

· 你也可以做一个小视频传到YouTube上。

每一个完成的项目都代表着你的成长作品集的一页。

技巧提示

以下是有关机器学习的一些技巧提示:

· 从简单的程序(例如上文推荐的)和简单的工具(例如Weka)开始,有信心之后再进阶。

· 从最简单最常用的数据集入手(如iris flowers 和 Pima diabetes)

· 每次应用该程序,尝试做一些改进。

· 发现新方法时,找到把它整合到你的程序中的最佳方式。

· 研究算法,但只研究到能帮助你取得更好结果就够了。

· 向专家学习,研究怎样将专家的方法加入到你的程序中。

· 像研究预测建模问题那样研究你的工具,充分利用它们。

· 不要在简单的问题中耽搁,不断挑战更难的问题。

· 专注于清晰呈现的结果,结果越清晰,你的作品集的作用越大。

· 加入论坛和问答网站社区,提问并回答问题。

总结

这篇文章提出了一个简单的5步方法,你可以用它来开始机器学习的入门,并在应用中不断进步。

虽然方法简单,但只要你确实投入努力,就会得到回报。

我有许多学生正是这样成为机器学习工程师或数据科学家的。

本文分享自微信公众号 - 新智元(AI_era)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2016-10-17

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

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 李沐:从头开始介绍机器学习,眼花缭乱的机器学习应用

    【新智元导读】亚马逊的李沐也要做深度学习课程了,名字叫《动手学深度学习》,侧重代码和实现。第一课的直播9月9日开始。昨天,他在知乎写了下面这篇文章,从头开始介绍...

    新智元
  • 【机器学习博士竞争力对比】美国ML高薪岗位排名及职业发展分析

    【新智元导读】要不要读机器学习博士?根据美国教育职业咨询网站 80000Hours 的分析,答案是肯定的。如果你适合这份职业,攻读机器学习博士可能是你对社会产生...

    新智元
  • AI今年最大进展就是毫无进展?2019年AutoML、GAN将扛大旗

    还有11天就要告别2018年,著名数据科学网站KDnuggets邀请国外11位机器学习和AI专家,回顾2018年机器学习和人工智能的主要进展,并对2019年即将...

    新智元
  • 推荐收藏 | 21 个必须知道的机器学习开源工具!

    你肯定已经了解流行的开源工具,如R、Python、Jupyter笔记本等。但是,除了这些流行的工具之外还有一个世界——一个隐藏在机器学习工具下的地方。这些并不像...

    Sam Gor
  • 21个必须知道的机器学习开源工具!

    你肯定已经了解流行的开源工具,如R、Python、Jupyter笔记本等。但是,除了这些流行的工具之外还有一个世界——一个隐藏在机器学习工具下的地方。这些并不像...

    AI科技大本营
  • 好书|第一章:The Machine Learning Landscape

    【需要英文电子书籍和配套的EPUB阅读器的朋友,请把这篇文章分享到您的朋友圈,添加我的个人微信:luqin360,截图给我,我会发给您;若是需要一起参与读书和讨...

    陆勤_数据人网
  • 什么是机器学习?有哪些算法和分类?又有哪些应用?看完你就懂了

    导读:本文从大数据的概念讲起,主要介绍机器学习的基础概念,以及机器学习的发展过程,用一个形象的例子讲解大数据生态中的机器学习,并按照传统机器学习(包括分类、聚类...

    华章科技
  • 【应用】机器学习商业应用入门及七个实例

    机器学习(Machine Learning, ML)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或...

    小莹莹
  • 机器学习中的数学,这是一份新鲜出炉的热门草稿

    作者:Marc Peter Deisenroth、A Aldo Faisal、Cheng Soon Ong

    机器之心
  • 机器学习正遭遇“可重复性危机”,或已成“炼金术”?

    机器学习以其特有的优势逐渐在科学研究中得到大量应用,然而,其内在的“黑箱”特点也带来了一系列问题,有研究者认为正是机器学习的这种不可解释性导致了当下科学研究的“...

    AI科技评论

扫码关注云+社区

领取腾讯云代金券