机器学习路线图:2023年社区推荐

机器学习2023年社区推荐

机器学习路线图。图片由作者生成。

路线图

在上一篇文章中,我们简要讨论了机器学习的起始工具和方向。我们讨论了一个简单的计划,帮助初学者建立坚实的基础。在谈到这个问题之后,在文章的结尾,我说我在LinkedIn上进行了一些调查,看看社区对新手有哪些建议。

初学者的基本流程图。图片由作者创建。

例如,我在LinkedIn上向机器学习群组提问,询问他们建议一个爱好者应该从哪里开始,机器学习理论的最佳资源是什么,线性代数、统计学等的最佳起点是什么。在花费时间整理所有这些结果之后,我终于通过这篇文章将它们呈现出来。所以,让我们马上进入文章,不再浪费时间。

如何开始这个旅程?

在上一篇路线图中,我建议人们从Python编程开始,并在学习过程中学习数学(如果他们已经掌握了基础数学)。但我也想知道他们认为什么是一个好的起点。我询问了他们关于机器学习课程的问题,而不是核心的Python编程,因为我认为那样更好。

我问这些群组的人们的旅程从哪里开始,他们遵循了哪些资源?他们关注的领域是什么?他们是从基础的数学开始,还是直接深入研究机器学习或深度学习?现在,获得了一些经验和见解后,他们对想要重新开始的人有什么建议?

在我继续讲下去之前,看看这些调查结果。

初学者的基本流程图。图片由作者创建。

当你看到调查结果时,你会发现大多数人开始通过在线或面对面的课程学习。我认为这是正常的,第二个调查结果也会是相同的。但当我询问人们的建议时,他们建议从做项目开始。

此外,大约同样数量的人说,人们应该从数学开始。在看到这一点之后,我进行了一些头脑风暴,并询问了社区的意见。以下是人们不建议从机器学习课程开始而是从项目开始的一些原因。

  • 项目给初学者提供了实践训练的机会,帮助他们从错误中学习,并更容易在像Kaggle这样的网站上合作。
  • 尽管课程仍然提供明确的起点,但大多数课程被认为过于模糊或学术化,需要根据当前需求进行更新。
  • 没有数学背景的学生需要有组织的数学和基础统计学,以了解发生在后台的情况。
  • 评估应包括多项选择题和实际项目。

除此之外,还可能有其他多种原因。然而,这些观点占据了大多数原因。

从哪里开始学习Python?

现在让我们回到我们绘制的路线图上。在那个路线图中,你可以看到Python、数学和SQL的水平重要性。从Python开始,我们将仔细研究每个方面,然后再进入下一层概念。

对于任何机器学习爱好者来说,Python都是最推荐的起点之一,因为它提供了广泛的灵活性。使用Python,您可以抓取数据,清理和预处理数据,在清理后的数据上训练模型,在Web应用程序上部署该模型,并使用自定义仪表板监视已部署应用程序的状态。您可以只用Python来进行一个项目的端到端工作,而不需要其他任何东西。

除了灵活性,Python是一种较为简单的语言。您只需要记住冒号(:)和缩进,然后就可以开始了。

现在我们已经讨论了为什么Python是一个好的推荐,让我们来考虑一下推荐的起点是什么。

Python课程的社区推荐。作者生成的图像。

密歇根大学的“Python for Everybody”专项课程是初学者最推荐的起点。这是Coursera上的一个由5门课程组成的专项课程,可以购买或旁听。我个人参加过Charles Severence教授的Django课程,他的教学风格毋庸置疑。你可以在这里找到更多关于这门课程的详细信息。

Python for Everybody专项课程,Coursera。图片来自Coursera.org

除此之外,人们还推荐了他们喜欢的YouTube播放列表,如CodeWithHarry、CodeBasics、Codanics、Corey Schafer、Telusko等不同频道的内容。人们还推荐了他们喜欢的资源,如DataCamp、哈佛大学的CS50课程以及Packt和其他出版商出版的Python书籍。

学习数学的地方在哪里?

数学是一个比较广泛的领域。我们关注三个方面:线性代数、微积分和统计学。我更多地询问了初学者级别的线性代数和统计学,因为高中水平的微积分(尤其是链式法则)对于你旅程的大部分初级阶段来说已经足够了。

线性代数

我们的大部分机器学习是线性代数和统计学的结合。我们在机器学习中所做的大部分工作是将高维数据转换为可解释的低维数据。我们利用线性代数来可视化和操纵这些高维数据。

以下是机器学习爱好者的推荐:

线性代数投票结果。作者生成的图像。

学习深入的线性代数的主要推荐之一是MIT OCW的”线性代数”(18.06),由Gilbert Strang教授讲授。然而,对于刚开始机器学习旅程的人来说,这门课程的深度超出了范围。调查结果可以反映出对Khan Academy或DeepLearning.ai课程的推荐作为初学者的更好起点。

除此之外,对于线性代数,最常见的推荐之一是来自3Blue1Brown频道的播放列表。当然,如果你时间较少,我建议你选择3Blue1Brown。这是线性代数最受推荐的资源之一。

概率与统计

概率与统计对于机器学习和任何机器学习专业人士的职业发展来说是基础。尽管初级阶段不需要深入的知识,但从长远来看,人们将开始面临统计学的困境(假设你将在机器学习的技术领域工作,而不是进入管理角色)。因此,在您沿着这个领域前进时,建立基本的基础,并理解每个模型的统计视角是需要牢记的关键之一。

那么,让我们看看社区的推荐:

统计学起点的社区推荐。作者创建的图像。

根据社区的推荐,有相同数量的人投票支持StatQuest和DeepLearning.AI的概率统计课程。由于我们已经讨论了Coursera的专项课程,让我们来看看StatQuest的播放列表。

这个播放列表最重要的亮点是Josh Starmer以简洁的方式教授知识。他将主题分解成小块,并以简化的方式解释它们。这使得你的学习过程更加模块化和便利。

要了解更多为什么人们推荐Statquest,你可以看一下以下Reddit讨论。以下是从对话中摘录的一小段:

StatQuest的一些意见摘录,来自Reddit.com的屏幕截图

结构化查询语言(SQL)

SQL是数据科学家中有争议的话题之一。根据你工作的地方和领域,你可能要么完全使用SQL,要么几个月都不接触SQL。更详细地说,如果你加入一个更侧重于图像、视频或语音类型样本的团队,你很少使用SQL;然而,在推荐系统和其他应用的某些领域,你可能不得不使用SQL。所以,这取决于具体的应用。(请记住,这是一个更关注机器学习而不是数据科学或数据工程的路线图。因此,这个讨论会很简短)。

然而,在面试中,你肯定会讨论SQL。因此,最好有一个基本的了解。以下是社区给出的推荐意见:

初学者的SQL推荐。图片由作者创建。

这些建议非常直接,大多数人推荐在Coursera上学习数据科学的SQL课程,少数人在评论中建议从DataCamp开始。我没有尝试过这门课程,因为我在DataCamp上学习了SQL,所以我无法准确地对课程或推荐意见发表意见。如果你想了解更多关于我的推荐意见,你可以在这个系列的第一部分找到它们。

最后…机器学习。

我认为你对这一部分不需要介绍,因为你可能点击这篇文章是为了了解机器学习的路线图。因此,让我们来看看开始机器学习之旅的推荐意见。

LinkedIn社区针对初学者的机器学习推荐。图片由作者生成。

这里没有任何困惑。任何想要开始机器学习并且不想通过高度理论的方式以及所有复杂的数学和统计学知识来学习的人,都可以直接从Coursera上的机器学习专项课程开始,由Andrew Ng教授讲授。这是最好的起点之一,任何人都可以解释为什么这是最好的。

在学习过程中,如果你想要更深入地了解理论,Andrew Ng教授还为你准备了他在YouTube上的CS229系列课程。因此,你不需要四处寻找资料。如果想了解更多信息,你可以查看其他一些资源,或者再次查看本系列的第一部分。

额外福利:工作还是深造机器学习?

作为一名刚刚毕业的学生,我对这个决策感到困惑。我对选择是攻读机器学习硕士学位还是数据科学,还是找工作并实践学习感到完全困惑。实际上,这是许多选择从事机器学习工作的学生所面临的困惑。因此,我认为这也是需要多个人给出建议的问题之一。(而且这个调查的回应非常大。在调查结束时,近500名在职专业人士参与了此次投票)。那么,专业人士最终推荐什么呢?

攻读硕士学位 vs 就业推荐给机器学习爱好者。图片由作者生成。

从这个可以看出,人们被推荐多工作而不是追求更高的学业。然而,这也有一个缺点。本科毕业后找工作非常困难,特别是因为硕士生也会申请相同的职位。(去年我的一些面试就因为同样的原因被拒绝了)。相反,一个在硕士学位后进入职场的人需要更多时间来适应生产环境,因为他会习惯于更加学术化的环境。因此,决定必须经过充分的考虑和评估,以确定什么对你来说更好。

通过这些,我已经涵盖了路线图的所有领域。我花了三个星期来进行这些调查,并整合了多个调查的结果。如果你觉得这篇文章有价值,请注册以在全球网络上弹出更多有趣的文章时收到通知。

与此同时,我已经开始学习自然语言处理专业,并参与了一些有趣的项目。根据我的学习,我计划创建一系列关于自然语言处理的文章(已经完成!)。别忘了注册网站,直接将它们发送到你的邮箱中!

为了获取我在机器学习和数据科学旅程中的最新动态,请不要忘记订阅并关注我的领英和Instagram!感谢您一直阅读到最后。你真棒!✌️