有很多途径来学习机器学习。有丰富的资源:有书籍,有课程可以参与,可以参加比赛,有大量供你使用的工具。在这篇文章中,我想围绕这些活动提出一些你机器学习之旅大致会有的阶段并在你程序员通往到机器学习大师之路上给出一个大概的顺序,以及在各个层次上有哪些可供你利用的资源
考虑进阶机器学习的四个层面。以下是一个模型来帮助我们考虑不同阶段可用的资源和活动,以及何时才是利用他们的好时机。
我想在这里把初学者和新手分开,因为我想表明一个绝对的初学者(对这个领域感兴趣的程序员但才刚刚开始)在他们继续之前还有一段路。
我们将浏览这四个层面的每一个层面,看看哪些资源和活动可以帮助某个层次的人学习更多,并提高他们的理解和技能水平。
细分仅仅是一个建议,很可能某个活动或某个层次上的资源在某个特定层次上可能是非常有用和适当的。
我认为总体结构是有用的,我很想听听你的想法,可以在下面留下你的想法。
初学者是对机器学习感兴趣的程序员。他们可能已经开始读一本书,维基百科页面,或在一门课程进修了几小节,但他们并不真正“ 明白 ”了。他们感到沮丧,因为他们得到的建议是给进阶和高级的。
初学者需要通俗易懂的介绍。远离代码和教科书和课程。他们首先需要的是指出机器学习是什么,为什么这样做,要怎么做的这样的材料,为新手阶段奠定基础。
一些绝对的初学者的活动和资源是:
一位新手已经与机器学习领域有过一些联系。他们已经读了一本书或采取了一门课程。他们知道他们有兴趣,他们想知道更多。他们开始理解了,并想开始把他们付诸实践。
新手需要做些什么。他们需要付诸实践,才能将这些材料扎根到现有的知识体系中,如他们所知道的编程语言或者他们过去解决的问题。
新手的一些活动和资源是:
一个新手已经读了一些书,并完成了一些课程。他们知道如何驱动一些工具,并写了一堆代码,实现简单的算法和完成教程。一个进阶者正在自己动手,制定自己的项目来学习新技术,并与更大的社区互动和学习。
进阶者正在学习如何准确地,有效地执行和运用算法。他们还在建立技能,这些技能关于花费大量时间做数据展示,清理,分类并思考这些数据可以回答哪些类型的问题。
一些进阶活动和资源是:
一个高级从业者已经写了很多代码,要么整合机器学习算法,要么自己实现算法。他们可能参加过比赛或者插件。他们已经阅读了课本,完成了课程,对这个领域有广泛的了解,并且对他们喜欢的几个关键技术有深入的了解。
高级从业者建立,部署和维护使用机器学习的生产系统。他们随时掌握各方面的新动态,热切地寻找和学习其他一线工作者与自己的方法和技巧的细微差别。
高级从业者的一些活动和资源是:
精通是连续的过程,此时学习并不意味着结束。沿途旅途中的任何一点都可以暂停和绕道,成为“ 竞争者 ”或“ 专业图书馆 ”。实际上,我预计这样的弯路是常态。
这种分类可以被看作是技术人员从初级到高级的旅程的线性过程,它是偏向以程序员为中心的。我很愿意听取对这篇文章的评价,以便我可以做得更好。如果你发现自己在某个阶段上渴望更多资源的话,不要介意,这个分类只是我所提出的不同阶段可以利用哪些资源的建议。
那么你是什么水平的,你接下来要做什么呢?发表评论!
更新:继续在Reddit讨论。