AI 入门指南

在开始从事人工智能工作之前,您需要先获得一些人类智能。
291 位读者喜欢这篇文章。
5 big ways AI is rapidly invading our lives

Opensource.com

我曾被问及,也问过别人,学习更多关于人工智能 (AI) 的最佳方法。我应该读什么?我应该看什么?我稍后会讲到。但是,首先,考虑到 AI 涵盖了广泛的领域,分解这个问题是有用的。

一个重要的区分是 AI 的研究方面和应用方面。谷歌的 Cassie Kozyrkov 在最近于伦敦举行的 O'Reilly 人工智能大会上的一次演讲中 提出了这种区分,这是一个很好的区分。

研究 AI 本质上更偏学术性,在您甚至接触到那些特定于 AI 的部分之前,需要大量跨学科的数学知识。AI 的这一方面侧重于推动 AI 状态发展的算法和工具。例如,哪些神经网络结构可以提高视觉识别结果?我们如何使无监督学习成为一种更通用的方法?我们能否找到更好的方法来理解深度学习管道如何得出它们所做的答案?

另一方面,应用 AI 更侧重于使用现有工具来获得有用的结果。开源在提供各种语言的免费且通常易于使用的软件方面发挥了重要作用。公共云提供商也投入了大量精力来提供机器学习服务、模型和数据集,这些服务、模型和数据集使得 AI 入门比原本要简单得多。

我想在此补充一点,应用 AI 从业者不应将他们的工具视为某种黑匣子,出于神秘的原因吐出答案。他们至少需要了解不同技术、模型和数据收集方法的局限性和潜在偏见。只是他们不一定需要深入研究工具链每个部分的所有理论基础。

虽然对于日常 AI 工作而言可能不那么重要,但了解 AI 的更广泛背景也很有用。它超越了神经网络深度学习的狭隘范围,而深度学习对于迄今为止在强化学习和监督学习中取得的进展至关重要。例如,AI 通常被视为一种增强(而不是取代)人类判断和决策的方式。但是机器和人类之间的交接本身就存在缺陷。

有了这些背景知识,以下是一些您可能会觉得有用的学习领域和资源。

研究 AI

在很多方面,研究 AI 的资源列表与侧重于 AI 的本科(甚至研究生)计算机科学课程中的资源列表相似。主要区别在于,您制定的教学大纲可能比更传统重点大学课程更具跨学科性。

您的起点将取决于您的计算机科学和数学背景。

如果您的背景很少或生疏,但您仍然希望深入了解 AI 基础知识,那么您将受益于从一些数学课程开始。大型在线开放课程 (MOOC) 上有很多选择,例如非营利性 edX 平台和 Coursera。(这两个平台都对认证收费,但 edX 使所有内容都可供仅旁听课程的人免费使用。)

典型的基础课程可能包括

要从研究的角度更深入地研究 AI,您可能需要深入研究所有这些数学领域以及更多领域。但是,以上内容应该让您了解在深入研究机器学习和 AI 本身之前可能最重要的通用学习分支。

除了 MOOC 之外,麻省理工学院开放课程等资源还为各种数学和计算机科学课程提供教学大纲和各种辅助材料。

有了基础知识,您就可以继续学习更专业的 AI 本身课程。Andrew Ng 在斯坦福大学任教时的 AI MOOC 是普及整个在线课程领域的早期课程之一。如今,他的 神经网络和深度学习 是 Coursera 深度学习专业化的一部分。edX 上也有相应的课程。例如,哥伦比亚大学提供 人工智能微硕士

除了课程之外,各种教科书和其他学习材料也可在线获得。其中包括

应用 AI

应用 AI 比构建新工具更侧重于使用可用工具。对数学基础知识,尤其是统计学的理解仍然有用——甚至可以说是必要的——但您不会像在研究模式下那样,在 AI 的这一方面投入那么多的精力。

编程是这里的核心技能。虽然可以使用不同的编程语言,但许多库和工具集(例如 PyTorch)都依赖于 Python,因此掌握 Python 是一项不错的技能。特别是如果您有一定的编程背景,麻省理工学院的 计算机科学与 Python 编程导论 基于其校内 6.001 课程,是一个很好的入门课程。如果您是编程新手,密歇根大学 Charles Severance 的 人人编程(Python 入门) 不会像麻省理工学院的课程那样让您直接进入深水区。

R 编程语言 也是添加到您的工具箱中的一项有用技能。虽然它在机器学习 (ML) 本身中不太常用,但在各种其他数据科学任务中很常见,并且应用 AI/ML 和数据科学在实践中经常融合。例如,无论您最终使用哪种分析技术,与组织和清理数据相关的许多任务都同样适用。哈佛大学的 数据科学证书 等 MOOC 课程序列就是一组课程的示例,这些课程提供了数据处理的良好入门。

如果您从事任何 AI 工作,您可能会遇到的另一个开源软件库是 TensorFlow。它最初由谷歌 AI 组织内谷歌大脑团队的研究人员和工程师开发。谷歌提供了各种教程,以帮助您开始使用 TensorFlow 的高级 Keras API。您可以在本地以及 Google Cloud 中在线运行 TensorFlow。

总的来说,所有大型公共云提供商都提供在线数据集和 ML 服务,这可能是入门的简单方法。但是,特别是当您超越“玩”数据集和应用程序时,您需要开始认真思考您希望在多大程度上锁定单个提供商。

您的探索性学习项目的数据集来自许多不同的来源。除了公共云提供商之外,Kaggle 是另一个受欢迎的来源,也是更广泛的良好学习资源。政府数据也越来越多地以数字形式提供。美国联邦政府的 Data.gov 声称拥有超过 300,000 个数据集。州和地方政府还发布从餐厅健康评级到狗名的各种数据。

杂项

最后,我想指出,AI 是一个广泛的主题,不仅仅关乎数学、编程和数据。作为一个整体,AI 涉及许多其他领域,包括认知心理学、语言学、博弈论、运筹学和控制系统。事实上,今天至少一些 AI 研究人员担心的是,该领域变得过于专注于少数几种技术,这些技术只是在最近才因处理能力和大数据的交汇而变得强大和有趣。在理解人类如何学习和推理方面的许多长期存在的问题仍然很大程度上未得到解决。至少对这些更广泛的问题空间有所了解,将使您能够更好地将 AI 置于更广泛的背景下。

我最喜欢的例子之一是杜克大学的 人类与自主实验室。该实验室的工作涉及人类与机器协同工作的所有挑战,例如自动驾驶仪如何创造 “品红色之子”,他们在自动化失败时无法快速接管控制权。基础脑科学课程,例如麻省理工学院的 心理学导论,为人类智能和机器智能之间的关系提供了一些有用的背景知识。另一个类似方向的课程,但由麻省理工学院电气工程和计算机科学系的已故 Marvin Minsky 教授讲授,是 心智社会

如果说学习 AI 有一个关键挑战,那不是原材料和工具不易获得。而是它们太多了。我的目标不是给您一套全面的指针。相反,我的目标是指出您可以采取的不同路径,并为您提供一些可能的起点。祝您学习愉快!

User profile image.
Gordon Haff 是红帽技术布道师,是客户和行业活动中备受赞誉的演讲者,专注于包括红帽研究、开源采用和广泛的新兴技术领域。

3 条评论

我喜欢将应用 AI 的理想用途视为充当您可能拥有的一个聪明但古怪的书呆子助理的功能。书呆子的工作之一就是激发您的思考。您还应该能够问它问题,例如“你是如何得出这个结论的?”,并得到合理的答案。

可解释性肯定是当今的一个挑战,不幸的是,像复杂神经网络这样最有效的方法往往是最难解释的。有一种观点认为,只要总体结果良好,也许就不那么重要了。(而且人类并不总是理解他们的直觉从何而来。)但这对于机器做出最终的生命/安全关键决策来说,并不是一个非常令人满意的答案。(在某些情况下,另一种“变通方法”是 ML 只是做一些高置信度的预过滤和建议,供人类用来告知最终决策。)

您推荐哪种 AI 技术用于软件逆向工程?我想使用 AI + 模拟器来重建 6502、68000、z80 等 CPU 的废弃软件的源代码(汇编语言)或伪代码算法。这对人类来说很慢,但我认为这是 AI 的绝佳应用。

Creative Commons License本作品根据 Creative Commons Attribution-Share Alike 4.0 International License 获得许可。
© . All rights reserved.