详解AI加速器(一):2012年的AlexNet到底做对了什么?

简介: 详解AI加速器(一):2012年的AlexNet到底做对了什么?

image.png

当代世界正在经历一场革命,人类的体验从未与科技如此紧密地结合在一起。过去,科技公司通过观察用户行为、研究市场趋势,在一个通常需要数月甚至数年时间的周期中优化产品线来改进产品。如今,人工智能已经为无需人工干预就能驱动人机反馈的自我改进(self-improving)算法铺平了道路:人类体验的提升给好的技术解决方案带去奖励,而这些技术解决方案反过来又会提供更好的人类体验。这一切都是在数百万(甚至数十亿)用户的规模下完成的,并极大地缩短了产品优化周期。

人工智能的成功归功于三个重要的趋势:1)新颖的研究项目推动新的算法和适用的用例;2)拥有收集、组织和分析大量用户数据的集中式实体(例如云服务)的能力;3)新颖的计算基础设施,能够快速处理大规模数据。

在这个系列的文章中,前苹果、飞利浦、Mellanox(现属英伟达)工程师、普林斯顿大学博士  Adi Fuchs 将重点关注第三个趋势。具体来说,他将对 AI 应用中的加速器做一个高层次的概述——AI  加速器是什么?它们是如何变得如此流行的?正如在后面的文章中所讨论的,加速器源自一个更广泛的概念,而不仅仅是一种特定类型的系统或实现。而且,它们也不是纯硬件驱动的。事实上,AI  加速器行业的大部分焦点都集中在构建稳健而复杂的软件库和编译器工具链上。

以下是第一部分的内容,其余部分将在后续的文章中更新。

人工智能不仅仅是软件和算法

AI / 机器学习 / 深度学习的概念可以追溯到 50 多年以前,然而,它们在过去的十几年里才真正流行起来。这是为什么呢?

很多人认为,深度学习的复兴始于  2012 年。当时,来自多伦多大学的 Alex Krizhevsky、Ilya Sutskever、Geoffrey Hinton  等人提出了一个名为「AlexNet」的深度神经网络并凭借该网络赢得了 2012  年大规模视觉识别挑战赛的冠军。在这场比赛中,参赛者需要完成一个名叫「object  region」的任务,即给定一张包含某目标的图像和一串目标类别(如飞机、瓶子、猫),每个团队的实现都需要识别出图像中的目标属于哪个类。

AlexNet  的表现颇具颠覆性。这是获胜团队首次使用一种名为「卷积神经网络(CNN)」的深度学习架构。由于表现过于惊艳,之后几年的 ImageNet  挑战赛冠军都沿用了 CNN。这是计算机视觉史上的一个关键时刻,也激发了人们将深度学习应用于其他领域(如 NLP、机器人、推荐系统)的兴趣。

image.png

ImageNet 挑战赛冠军团队的分类错误率逐年变化情况(越低越好)。

有意思的是,AlexNet  的基本结构和之前那些 CNN 架构并没有太大区别,比如 Yann LeCun 等人 1998 年提出的  LeNet-5。当然,这么说并不是想抹杀 AlexNet 的创新性,但这确实引出了一个问题:「既然 CNN 不是什么新东西,AlexNet  的巨大成功还可以归因于哪些要素呢?」从摘要可以看出,作者确实使用了一些新颖的算法技术:

「为了加速训练,我们用到了非饱和神经元和一个非常高效的 GPU 卷积操作实现。」

事实证明,AlexNet  作者花了相当多的时间将耗时的卷积操作映射到 GPU 上。与标准处理器相比,GPU  能够更快地执行特定任务,如计算机图形和基于线性代数的计算(CNN 包含大量的此类计算)。高效的 GPU  实现可以帮他们缩短训练时间。他们还详细说明了如何将他们的网络映射到多个 GPU,从而能够部署更深、更宽的网络,并以更快的速度进行训练。

拿  AlexNet 作为一个研究案例,我们可以找到一个回答开篇问题的线索:尽管算法方面的进展很重要,但使用专门的 GPU  硬件使我们能够在合理的时间内学习更复杂的关系(网络更深、更大 =  用于预测的变量更多),从而提高了整个网络的准确率。如果没有能在合理的时间框架内处理所有数据的计算能力,我们就不会看到深度学习应用的广泛采用。

如果我是一名 AI 从业者,我需要关心处理器吗?

作为一名  AI  从业者,你希望专注于探索新的模型和想法,而不希望过多担心看起来不相关的问题,如硬件的运行方式。因此,虽然理想的答案是「不,你不需要了解处理器」,但实际的答案是「可能还是要了解一下」。如果你非常熟悉底层硬件以及如何调试性能,那么你的推理和训练时间就会发生变化,你会对此感到惊讶。

image.png

各种并行化技术对于矩阵乘法的加速效果。

如果不懂硬件,你所花的时间可能会多  2-3  倍,有时甚至多一个数量级。简单地改变做矩阵乘法的方式可能帮你收获巨大的性能提升(或损失)。性能欠佳可能会影响你的生产力以及你可以处理的数据量,并最终扼杀你的  AI 周期。对于一家大规模开展人工智能业务的企业来说,这相当于损失了数百万美元。

那么,为什么不能保证得到最佳性能呢?因为我们还没有有效地达到合理的「user-to-hardware  expressiveness」。我们有一些有效利用硬件的用例,但还没泛化到「开箱即用」的程度。这里的「开箱即用」指的是在你写出一个全新的 AI  模型之后,你无需手动调整编译器或软件堆栈就能充分利用你的硬件。

image.png

AI User-to-Hardware Expressiveness。

上图说明了「user-to-hardware   expressiveness」的主要挑战。我们需要准确地描述用户需求,并将其转换成硬件层(处理器、GPU、内存、网络等)能够理解的语言。这里的主要问题是,虽然左箭头(programming   frameworks)主要是面向用户的,但将编程代码转换为机器码的右箭头却不是。因此,我们需要依靠智能的编译器、库和解释器来无缝地将你的高级代码转换为机器表示。

这种语义鸿沟难以弥合的原因有两个:

1)硬件中有丰富的方法来表达复杂的计算。你需要知道可用的处理元素的数量(如  GPU  处理核心)、你的程序需要的内存数量、你的程序所展示的内存访问模式和数据重用类型,以及计算图中不同部分之间的关系。以上任何一种都可能以意想不到的方式对系统的不同部分造成压力。为了克服这个问题,我们需要了解硬件  /  软件堆栈的所有不同层是如何交互的。虽然你可以在许多常见的场景中获得良好的性能,但现实中还有无尽的长尾场景,你的模型在这些场景中可能表现极差。

2)虽然在计算世界中,软件是慢的,硬件是快的,但部署世界却在以相反的方式运行:深度学习领域正在迅速变化;每天都有新的想法和软件更新发布,但构建、设计和试生产(流片)高端处理器需要一年多的时间。在此期间,目标软件可能已经发生了显著的变化,所以我们可能会发现处理器工程师一年前的新想法和设计假设已经过时。

因此,你(用户)仍然需要探索正确的方法来识别计算耗时瓶颈。为此,你需要了解处理器,特别是当前的 AI 加速器,以及它们如何与你的 AI 程序交互。

原文链接:https://medium.com/@adi.fu7/ai-accelerators-part-i-intro-822c2cdb4ca4

相关实践学习
在云上部署ChatGLM2-6B大模型(GPU版)
ChatGLM2-6B是由智谱AI及清华KEG实验室于2023年6月发布的中英双语对话开源大模型。通过本实验,可以学习如何配置AIGC开发环境,如何部署ChatGLM2-6B大模型。
相关文章
|
机器学习/深度学习 人工智能 并行计算
GPU如何成为AI的加速器
GPU如何成为AI的加速器
326 0
|
2月前
|
机器学习/深度学习 人工智能 程序员
每个慢节奏创业者都需要知道的AI加速器
你还在为创业速度慢而焦虑吗?AI时代来了!本文将通过一个虚拟咖啡店老板的故事,教你如何用AI工具把创业速度提升10倍,从想法到产品上线只需要几天而不是几个月。
132 10
|
3月前
|
人工智能 监控 搜索推荐
AI智能体平台,究竟如何成为企业快速构建高效AI应用的‘加速器’?
AI专家三桥君认为AI智能体平台通过低代码设计、智能功能和企业级适配,帮助企业快速构建高效AI应用。平台核心功能包括工具集成、工作流编排、知识管理及多智能体协作。其优势在于降低技术门槛,提升执行效率,支持大规模部署。未来智能体平台将持续优化,成为企业AI转型的核心引擎。
244 0
|
7月前
|
人工智能 自然语言处理 前端开发
【AI落地应用实战】大模型加速器2.0:基于 ChatDoc + TextIn ParseX+ACGE的RAG知识库问答系统
本文探讨了私有知识库问答系统的难点及解决方案,重点分析了企业知识管理中的痛点,如信息孤岛、知识传承依赖个人经验等问题。同时,介绍了IntFinQ这款知识管理工具的核心特点和实践体验,包括智能问答、深度概括与多维数据分析等功能。文章还详细描述了IntFinQ的本地化部署过程,展示了其从文档解析到知识应用的完整技术闭环,特别是自研TextIn ParseX引擎和ACGE模型的优势。最后总结了该工具对企业和开发者的价值,强调其在提升知识管理效率方面的潜力。
|
9月前
|
人工智能 弹性计算 自然语言处理
云端问道 6 期实践教学-创意加速器:AI 绘画创作
本文介绍了在阿里云平台上一键部署Demo应用的步骤。部署完成后,通过公网地址体验Demo应用,包括文本生成图像等功能。
165 10
|
9月前
|
存储 人工智能 弹性计算
云端问道6期方案教学-创意加速器:AI 绘画创作
本文整理自绍懿老师在云端问道第6期关于“创意加速器:AI绘画创作”的分享,主要介绍阿里云通义万相大模型的应用。内容涵盖七大部分:有趣的应用场景、通义万相简介、使用方法、优势特点、典型案例(如电商和营销场景)、收费标准及实操部署。通过这些内容,用户可以快速了解如何利用通义万相实现文字生成图片、图像编辑等功能,并应用于实际业务中,提升效率与创造力。
200 1
|
弹性计算 人工智能 对象存储
来自通义万相的创意加速器:AI 绘画创作
【7月更文挑战第11天】来自通义万相的创意加速器:AI 绘画创作
|
人工智能 弹性计算 算法
【Hello AI】AI加速器Deepytorch-面向生成式AI和大模型场景
Deepytorch作为阿里云自研的AI加速器,面向生成式AI和大模型场景,提供了训练和推理加速能力。
【Hello AI】AI加速器Deepytorch-面向生成式AI和大模型场景
|
机器学习/深度学习 人工智能 芯片
AI芯片设计与优化:算力提升、能耗降低与硬件加速器的发展趋势
AI芯片设计与优化:算力提升、能耗降低与硬件加速器的发展趋势
1669 0
|
机器学习/深度学习 存储 人工智能
阿里云加速器AI赛道,正式启动招募
阿里云加速器AI赛道,正式启动招募
317 0

热门文章

最新文章