AI 入门指南
'AI Beginner's Guide'.
如何开始一个AI项目
背景
在这里我假设你已经阅读了我之前的文章《如何学习AI》。提醒一下,我强烈建议你在学习机器学习时参考不止一种资源(除了文档),最好是一本适合你学习水平(初学者/中级/高级)的教材。
什么是AI工程
AI工程是一门专注于开发工具、系统和流程,以实现在实际环境中应用人工智能的新学科[1]。简而言之,AI工程就是将软件工程的最佳实践应用于人工智能领域。
AI vs. ML vs. DL
人工智能(AI)是研究构建能够创造性地解决问题的智能程序和机器的方式,这一直被认为是人类的专属能力。
机器学习(ML)是人工智能的一个子集,它使计算机系统能够在没有明确编程的情况下自动学习和改进。在机器学习中,有各种算法可以帮助解决问题。
深度学习(DL)是机器学习的一个子集,它使用具有类似人类神经系统结构的神经网络。
人们经常对人工智能和机器学习这两个术语产生困惑,这在《AI过程》中有所讨论。
研究生阶段,一门人工智能课程通常会快速回顾核心机器学习概念(在之前的课程中已经涵盖),然后涵盖搜索算法、博弈论、贝叶斯网络、马尔可夫决策过程(MDP)、强化学习等内容。
MIT关于人工智能和机器学习的概述
项目定义
AI项目的第一步是定义问题。
用几句话描述以下内容:
- 目标是什么?分类、预测、检测、翻译等。
- 描述数据集,包括输入特征和目标特征。
- 包括数据的摘要统计,包括任何离散或分类特征以及目标特征的计数。
- 愿意共享整个数据集。如果无法共享数据集,应避免使用开放的讨论论坛,如Slack或Discord。
如何选择模型
每个新的AI工程师都会发现他们需要决定在一个问题上使用什么模型。
有很多模型可以选择,但通常只需要稍微修改即可将回归模型转换为分类模型,反之亦然。
《AI过程》描述了适用于几乎任何AI问题的AI工程解决方案的过程。
理解算法
你需要知道对于给定问题有哪些可用的算法,它们是如何工作的,以及如何充分利用它们。然而,这并不意味着你需要从头开始编写算法(自己实现)。更重要的是要知道如何使用稳定的软件库和框架,如scikit-learn和TensorFlow,来解决实际问题。
任何有能力的软件工程师都可以实现任何算法。
即使你是一名经验丰富的AI/ML工程师,你也应该了解简单模型在你的数据集/问题上的性能。
事实上,有许多概念比知道AI算法如何工作或如何实现它们更重要(请参阅《如何学习AI》中的核心概念)
其他资源
我有一个GitHub仓库,里面有很多关于各种主题的AI/ML文章的笔记和链接 LearnAI。我还有一篇关于AI学习资源的VoAGI文章。
参考资料
[1] 人工智能工程
[2] J. Brownlee, “应用机器学习流程,” 机器学习掌握之道, 2014年2月12日。
[3] J. Brownlee, “如何评估机器学习算法,” 机器学习掌握之道, 2020年8月16日。
[4] Y. Hosni, “机器学习模型选择简要指南,” MLearning.ai, 2021年12月4日。
[5] M. LeGro, “解释令人困惑的多重线性回归结果,” 走向数据科学, 2021年9月12日。
[6] E. Alpaydin, 《机器学习导论》,第3版, MIT Press, ISBN: 978–0262028189, 2014年。
[7] S. Russell 和 P. Norvig, 《人工智能:一种现代方法》,第4版, Upper Saddle River, NJ: Prentice Hall, ISBN: 978–0–13–604259–4, 2021年。
[8] P. Bourque 和 R. E. Fairley, 《软件工程知识体系指南》,第3版, IEEE, 2014年。
S. Raschka 和 V. Mirjalili, 《Python机器学习》,第2版, Packt, ISBN: 978–1787125933, 2017年。
W. McKinney, 《Python数据分析:用Pandas,NumPy和IPython进行数据整理》,第2版, O’Reilly Media, ISBN: 978–1491957660, 2017年。
S. Bird, E. Klein 和 E. Loper. 《Python自然语言处理 – 使用自然语言工具包分析文本》。
D. Jurafsky 和 J. H. Martin. 2008年(第2版)。《语音和语言处理》。Prentice Hall. ISBN: 978–0131873216。
Y. Hosni, “端到端机器学习工作流程(第1部分),” MLearning.ai, 2021年12月11日。
Y. Hosni, “端到端机器学习工作流程(第2部分),” MLearning.ai, 2021年12月25日。
I. Kilic, “数据科学术语 – AI / ML / DL,” VoAGI, 2021年12月31日。
C. Gulmez, “如何成为AI开发者,” VoAGI, 2022年1月1日。
D. Gong, “线性回归实践指南,” 走向数据科学, 2021年9月18日。
Y. Sandeepa, “用于分类的回归,” 走向数据科学, 2021年9月13日。
A. Iglesias Moreno, “端到端机器学习项目:电信客户流失,” 走向数据科学, 2021年11月23日。
M. Di Pietro, “使用Python进行深度学习:神经网络(完整教程),” 走向数据科学, 2021年12月17日。
D. Poulopoulos, “如何开始为开源项目做贡献,” 走向数据科学, 2021年10月30日。