Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

第 2 章:学习技术技能,打造有前景的 AI 职业生涯

在上一章中,我介绍了在 AI 领域打造职业生涯的三个关键步骤:学习基础技术技能、从事项目、以及找工作,所有这些都通过成为社群的一员得到支持。在本章中,我想更深入地探讨第一步:学习基础技能。

关于 AI 发表的研究论文比任何人一生能读的都要多。因此,在学习时,优先选择主题至关重要。我认为,对于机器学习技术职业生涯最重要的主题是:

基础机器学习技能:

例如,理解线性回归、逻辑回归、神经网络、决策树、聚类和异常检测等模型非常重要。除了特定模型,更重要的是理解机器学习如何以及为何有效的核心概念,例如偏差/方差、成本函数、正则化、优化算法和误差分析。

深度学习:

这已成为机器学习中如此大的一部分,以至于若对其缺乏一定的理解,很难在该领域出类拔萃!了解神经网络的基础知识、使其工作的实用技能(如超参数调优)、卷积网络、序列模型和 Transformer 模型都很有价值。

与机器学习相关的数学:

关键领域包括线性代数(向量、矩阵及其各种操作)以及概率与统计(包括离散和连续概率、标准概率分布、独立性、贝叶斯定理等基本规则以及假设检验)。此外,探索性数据分析(EDA)——使用可视化和其他方法系统地探索数据集——是一项被低估的技能。我发现 EDA 在以数据为中心的 AI 开发中特别有用,分析错误和获取洞察确实有助于推动进展!最后,对微积分的基本直观理解也有帮助。做好机器学习所需的数学一直在变化。例如,虽然某些任务需要微积分,但改进的自动微分软件使得发明和实现新的神经网络架构而无需做任何微积分成为可能。这在十年前几乎是不可能的。

软件开发:

虽然仅凭机器学习建模技能你就可以找到工作并做出巨大贡献,但如果你还能编写优秀的软件来实现复杂的 AI 系统,你的工作机会将会增加。这些技能包括编程基础、数据结构(特别是与机器学习相关的,如数据框)、算法(包括与数据库和数据操作相关的)、软件设计、熟悉 Python、熟悉关键库如 TensorFlow 或 PyTorch 以及 scikit-learn。

要学的东西很多!

即使你掌握了这个列表中的所有内容,我也希望你能继续学习并不断深化你的技术知识。我认识许多机器学习工程师,他们受益于在应用领域(如自然语言处理或计算机视觉)或技术领域(如概率图模型或构建可扩展软件系统)更深入的技能。

如何获得这些技能? 互联网上有很多好的内容,理论上,阅读几十个网页可能有效。但当目标是深入理解时,阅读零散的网页效率低下,因为它们往往相互重复、使用不一致的术语(这会拖慢你)、质量参差不齐,并且存在空白。这就是为什么一门好课程——将材料组织成连贯且合乎逻辑的形式——通常是掌握有意义的庞大知识体系最省时的方法。当你吸收了课程中可用的知识后,就可以转向研究论文和其他资源。

最后,没有人能在周末甚至一个月内填鸭式地学会他们需要知道的一切。我所认识的每一位在机器学习方面很出色的人都是终身学习者。考虑到我们领域变化的速度如此之快,如果你想跟上步伐,除了持续学习之外几乎没有其他选择。

如何能多年保持稳定的学习节奏?如果你能培养每周学习一点的习惯,你就能以感觉更轻松的方式取得显著进步。

养成新习惯的最佳方式

我最喜欢的书之一是 BJ Fogg 的《微习惯:小改变带来大不同》(Tiny Habits: The Small Changes That Change Everything)。Fogg 解释说,养成新习惯的最佳方式是从小处着手并取得成功,而不是目标过大而失败。例如,与其试图每天锻炼 30 分钟,他建议只做一个俯卧撑,并持续去做。

这种方法可能对那些想花更多时间学习的人有所帮助。如果你从要求自己每天观看,比如说,10 秒的教育视频开始——并且你持续这样做——每天学习的习惯就会自然养成。即使在那 10 秒里你什么也没学到,你也是在建立每天学习一点的习惯。在某些日子,也许你最终会学习一个小时甚至更长时间。