看到AI大神吴恩达给大家的技术学习以及职业规划的意见,受益匪浅。节选收藏,与君共勉~
核心便是保持终身学习,每周学一点,快乐多一点~
我认为对于机器学习的技术职业来说,最重要的课题包括:
例如,了解线性回归、逻辑回归、神经网络、决策树、聚类和异常检测等模型很重要。除了具体的模型,更重要的是了解机器学习如何以及为什么工作背后的核心概念,如偏见/差异、成本函数、正则化、优化算法和误差分析。
这已经成为机器学习的一个重要部分,如果不了解它,就很难在这个领域出类拔萃! 了解神经网络的基础知识、使其发挥作用的实用技能(如超参数调整)、卷积网络、序列模型和Transformer是很有价值的。
关键领域包括线性代数(向量、矩阵和它们的各种操作)以及概率和统计(包括离散和连续概率、标准概率分布、基本规则,如独立性和贝叶斯规则,以及假设检验)。
此外,探索性数据分析(EDA),即使用可视化和其他方法来系统地探索一个数据集是一项被低估的技能。我发现EDA在以数据为中心的人工智能(data-centric AI)开发中特别有用,在那里分析错误和获得洞察力可以真正帮助推动进展。
最后,对微积分有一个基本的直观理解也会有帮助。在之前的信中,我描述了做好机器学习所需的数学知识是如何变化的。例如,尽管有些任务需要微积分,但改进后的自动微分软件使得发明和实现新的神经网络架构更容易,而无需做任何微积分。这在十年前几乎是不可能的。
虽然你可以只靠机器学习建模技能就能找到工作并做出巨大贡献,但如果你还能写出好的软件来实现复杂的人工智能系统,你的工作机会就会增加。
这些技能包括编程基础,数据结构(特别是那些与机器学习有关的,如数据框架),算法(包括那些与数据库和数据操作有关的),软件设计,熟悉Python,以及熟悉关键库,如TensorFlow或PyTorch,以及scikit-learn。
这是一个需要大量学习的内容! 即使在你掌握了这个列表中的所有内容之后,我希望你能继续学习,继续深化你的技术知识。
我认识很多机器学习工程师,他们在自然语言处理或计算机视觉等应用领域,或在概率图形模型或构建可扩展软件系统等技术领域,都从更深的技能中受益。
互联网上有很多好的内容,理论上,阅读几十个网页也是可以的。但当目标是深入理解时,阅读不连贯的网页是很低效的,因为它们往往相互重复,使用不一致的术语(这使你的学习速度减慢),质量不同,并留下一些技术空白。
这就是为什么一个好的课程,其中的材料被组织成一个连贯的逻辑形式,往往是掌握一个有意义的知识体系的最省时的方法。
当你吸收了课程中的知识后,你可以转向研究论文和其他资源。
最后,请记住,没有人可以在一个周末甚至一个月内把所有需要的知识都塞进去。我认识的每一个在机器学习方面表现出色的人都是一个终身学习者。
事实上,鉴于我们的领域变化如此之快,如果你想跟上时代的步伐,除了不断学习,别无选择。
如果你养成每周学习一点的习惯,你就能以感觉上较少的努力取得重大进展。
本文节选自以下文章:
https://mp.weixin.qq.com/s/FQghAPeDI5vZBqq_HXGNtA