前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >机器学习自学指南

机器学习自学指南

作者头像
xixigiggling
修改2018-02-07 20:36:36
5270
修改2018-02-07 20:36:36
举报
文章被收录于专栏:文章翻译文章翻译

有很多途径来学习机器学习。有丰富的资源:有书籍,有课程可以参与,可以参加比赛,有大量供你使用的工具。在这篇文章中,我想围绕这些活动提出一些你机器学习之旅大致会有的阶段并在你程序员通往到机器学习大师之路上给出一个大概的顺序,以及在各个层次上有哪些可供你利用的资源

四个级别的机器学习

考虑进阶机器学习的四个层面。以下是一个模型来帮助我们考虑不同阶段可用的资源和活动,以及何时才是利用他们的好时机。

  1. 初学者
  2. 新手
  3. 进阶
  4. 高级

我想在这里把初学者和新手分开,因为我想表明一个绝对的初学者(对这个领域感兴趣的程序员但才刚刚开始)在他们继续之前还有一段路。

我们将浏览这四个层面的每一个层面,看看哪些资源和活动可以帮助某个层次的人学习更多,并提高他们的理解和技能水平。

细分仅仅是一个建议,很可能某个活动或某个层次上的资源在某个特定层次上可能是非常有用和适当的。

我认为总体结构是有用的,我很想听听你的想法,可以在下面留下你的想法。

初学者

初学者是对机器学习感兴趣的程序员。他们可能已经开始读一本书,维基百科页面,或在一门课程进修了几小节,但他们并不真正“ 明白 ”了。他们感到沮丧,因为他们得到的建议是给进阶和高级的。

初学者需要通俗易懂的介绍。远离代码和教科书和课程。他们首先需要的是指出机器学习是什么,为什么这样做,要怎么做的这样的材料,为新手阶段奠定基础。

一些绝对的初学者的活动和资源是:

新手

一位新手已经与机器学习领域有过一些联系。他们已经读了一本书或采取了一门课程。他们知道他们有兴趣,他们想知道更多。他们开始理解了,并想开始把他们付诸实践。

新手需要做些什么。他们需要付诸实践,才能将这些材料扎根到现有的知识体系中,如他们所知道的编程语言或者他们过去解决的问题。

新手的一些活动和资源是:

  • 完成一门课程:参加并完成斯坦福机器学习课程。记大量笔记,尽可能完成作业,问很多问题。
  • 阅读一些书籍:不是教科书,但像上面列出的针对初学者程序员友好的书籍。
  • 学习一种工具:学习如Scikit-LearnWEKAR或类似的工具或库。具体来说,学习如何使用你已经阅读或在书本或课程中学到的算法。在实践中观察它,习惯于在实践中学习。
  • 写一些代码:实现一个更简单的算法,如感知器,k最近邻居或线性回归。编写一些程序来揭开方法的神秘面纱,并学习所有的微观决策来使它运转起来。
  • 完成教程:遵循并完成教程。开始建立一个您可以回顾,阅读和思考的小型项目目录,可以是你已经完成的数据集,脚本甚至源代码。

进阶

一个新手已经读了一些书,并完成了一些课程。他们知道如何驱动一些工具,并写了一堆代码,实现简单的算法和完成教程。一个进阶者正在自己动手,制定自己的项目来学习新技术,并与更大的社区互动和学习。

进阶者正在学习如何准确地,有效地执行和运用算法。他们还在建立技能,这些技能关于花费大量时间做数据展示,清理,分类并思考这些数据可以回答哪些类型的问题。

一些进阶活动和资源是:

  • 小型项目:设计小型的编程项目和机器学习可用于解决问题的实验。这就像设计和执行自己的教程,以便探索您感兴趣的技术。您可以实现一个算法或链接到提供该算法的库。详细了解小型项目
  • 数据分析:习惯于探索和总结数据集。自动化报告,了解使用哪些工具,并查找可以探索,清理的数据,并在其上练习技巧并传达一些有趣的内容。
  • 阅读教科书:阅读和深入理解机器学习的教科书。这可能需要技巧来掌握技术的数学描述,并承认形式化问题和算法的形式化。
  • 编写插件:为开源机器学习平台和库编写插件和包。这是学习如何编写健壮和生产级算法实现的练习。在项目中使用自己的插件,向社区索取代码评论,并尽可能将代码包含到平台中。获得反馈和学习是目标。
  • 比赛:参加机器学习比赛,比如与会议相关的比赛,或者在像Kaggle这样的提供平台的比赛。参与讨论,提出问题,了解其他从业人员如何解决问题。将您可以从中得出的项目,方法和代码添加到您的存储库。

高级

一个高级从业者已经写了很多代码,要么整合机器学习算法,要么自己实现算法。他们可能参加过比赛或者插件。他们已经阅读了课本,完成了课程,对这个领域有广泛的了解,并且对他们喜欢的几个关键技术有深入的了解。

高级从业者建立,部署和维护使用机器学习的生产系统。他们随时掌握各方面的新动态,热切地寻找和学习其他一线工作者与自己的方法和技巧的细微差别。

高级从业者的一些活动和资源是:

  • 定制算法:修改算法以满足他们的需求,这可能涉及在类似问题领域的会议和期刊论文中概述实现定制。
  • 新的算法:设计基于形式主义的全新方法来迎接他们遇到的挑战。更重要的是要取得最好的结果,而不是推进领域的前沿。
  • 案例研究:阅读,甚至重新创建机器学习大赛和其他从业人员的案例研究。这些“我是怎么做的”论文和帖子通常充满了数据准备,工程特征和技术使用的惯用专业技巧。
  • 方法:流程的系统化,无论是正式的还是为自己。他们有办法解决问题,并在这一点上取得成果,他们正在积极寻找方法,通过技巧,最佳实践和新的更好的技术来进一步完善和改进这一过程。
  • 研究:参加会议,阅读研究论文和专著,与该领域的专家交谈。他们可能会写一些他们的工作,并提交出版,或者放在博客上,然后重新开始工作。

精通是连续的过程,此时学习并不意味着结束。沿途旅途中的任何一点都可以暂停和绕道,成为“ 竞争者 ”或“ 专业图书馆 ”。实际上,我预计这样的弯路是常态。

这种分类可以被看作是技术人员从初级到高级的旅程的线性过程,它是偏向以程序员为中心的。我很愿意听取对这篇文章的评价,以便我可以做得更好。如果你发现自己在某个阶段上渴望更多资源的话,不要介意,这个分类只是我所提出的不同阶段可以利用哪些资源的建议。

那么你是什么水平的,你接下来要做什么呢?发表评论!

更新:继续在Reddit讨论

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 四个级别的机器学习
  • 初学者
  • 新手
  • 进阶
  • 高级
相关产品与服务
腾讯云 TI 平台
腾讯云 TI 平台(TencentCloud TI Platform)是基于腾讯先进 AI 能力和多年技术经验,面向开发者、政企提供的全栈式人工智能开发服务平台,致力于打通包含从数据获取、数据处理、算法构建、模型训练、模型评估、模型部署、到 AI 应用开发的产业 + AI 落地全流程链路,帮助用户快速创建和部署 AI 应用,管理全周期 AI 解决方案,从而助力政企单位加速数字化转型并促进 AI 行业生态共建。腾讯云 TI 平台系列产品支持公有云访问、私有化部署以及专属云部署。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档