浏览次数:308 发布时间:2023-10-19 09:25:08
我们到底需要多少AI ?
远望智库开源情报中心 云卷云舒 编译
人工智能——现在是一个包罗万象的术语,指的是使用算法来学习、预测和决策的过程——模仿人类的智能。它可以承担人脸识别和模式识别以及在解决问题时解释数据等工作。许多任务可以通过人工智能实现自动化,以提高生产力,并将对人类大脑来说过于复杂或需要太多人工努力的数据链接在一起。
但是,利用人工智能所需的计算能力差异很大,这取决于应用程序和人工智能的类型。3级自动驾驶需要的人工智能与使用人工智能监控客流量的零售应用程序截然不同。任务越复杂,结果越准确,对人工智能的计算能力要求就越高,训练人工智能需要收集的数据也就越多。
那么开发者应该如何做出正确的AI选择呢?“人工智能需要从数据中学习,”西门子EDA集成电路设计验证领域的人工智能/机器学习解决方案产品经理Dan Yu表示,“每个开发人员需要问的第一个问题是,‘我从哪里可以获得数据来训练我的人工智能和机器学习模型?第三方数据可能是可用的,但你必须验证它,以确保它是正确的数据,并确保人工智能/机器学习模型做出正确的预测。如果没有数据,就没有机器学习。”
人们通常把至少70%的人工智能训练时间花在寻找正确的数据、清理数据和从数据中提取有用的信息上。大部分的平衡都花在了调试人工智能和机器学习模型上。
他说:“当我们谈到训练、调试和将人工智能机器学习模型部署到应用程序时,许多自动驾驶领域的领导者都在努力寻找足够有意义的数据。”“他们可能有办法从汽车周围的行车记录仪和激光雷达等传感器收集大量数据,但大多数数据对训练人工智能模型没有用处。你想让模型体验所有难以想象的场景。例如,一栋建筑在你的车前面倒塌了。你的行动是什么?作为人类,我们知道我们想要逃跑。它存在于人类的基因中。但如果没有遇到这种情况,人工智能的基因就不存在这种情况。如果你没有数据来训练人工智能做某件事,人工智能就会假设什么都没发生,自动驾驶汽车就会继续行驶。数据在任何地方都是人工智能的关键部分。”
一、人工智能的好处是有代价的
人工智能在制造业、汽车、金融、医疗保健、教育、农业、智慧城市、娱乐、国防、能源、零售和数据中心等领域的作用越来越大。人工智能芯片现在安装在台式机和笔记本电脑上。然而,人工智能给众多行业带来的所有好处都不是免费的。
NVIDIA的张量核GPU价格高达40,000美元,功耗高达700W。对于科学和语言建模等高端应用,将需要像Cerebras这样的高性能机器学习系统。新的第二代晶圆级处理器(WSE - 2)由2.6万亿个晶体管和85万个人工智能优化的计算核心组成,并配备多个冗余4KW电源,耗资数百万美元。
“每个人都在谈论生成式人工智能可以为你做的一切,但这是一种隐性成本,”安培首席产品官杰夫•威蒂奇(Jeff wititch)表示。“如果我们只关心最大性能,人工智能将很快成为世界上最大的能源用户。目前,数据中心产生的二氧化碳约占全球的3%,超过了航空和航运。人工智能需要更多倍的计算能力,这可能很快就会失控。这可以比作拥有一辆赛车。当然,它可以跑得很快,但它需要很多燃料。对于一场比赛来说,这没关系。对每个人来说,每天开一辆这样的车将是灾难性的。”
优化模型和提高计算利用率是关键。“今天,许多人工智能推理模型都是在耗电的gpu上运行的,”wititch说。“这些gpu非常强大,可以快速运行模型,但我们越来越多地看到它们的能力利用率不高。许多公司并不总是需要所有的能力,gpu在空闲时仍在消耗电能。”
二、AI的类型
生成式人工智能和预测式人工智能是两种截然不同的人工智能。前者需要高性能和密集计算,而后者可以用低成本的soc实现。
瑞萨电子加速与生态系统高级总监兼业务主管Kaushal Vora表示:“如今的人工智能用例可以大致分为两个领域——生成式人工智能和预测性人工智能。”“生成式人工智能的主要目标是生成新内容,而预测性人工智能的目标是分析数据以做出预测和商业决策。生成式人工智能利用基础模型和变换器在语言学、文本、图像、视频等领域进行广泛而大规模的应用。这些模型往往非常大,通常会消耗数百Gb的内存,并且需要云中的gpu和cpu形式的超大规模计算来训练和运行推理。”
相比之下,预测性人工智能运行在资源受限的网络层上,比如网络边缘和物联网端点。沃拉说:“这种类型的人工智能通常也被称为边缘人工智能或TinyML。“边缘/端点快速采用人工智能的一些领域和用例是语音作为人机通信、环境感知和预测分析以及机器维护的用户界面。我们看到它被广泛的垂直行业所采用。运行这种人工智能的计算引擎通常是一个具有几个GOPS(每秒千兆次操作)的微控制器,或者一个性能低于1 TOPS的微处理器。”
与此同时,生成式人工智能正在推动对服务器级极高人工智能性能的需求。Synopsys人工智能/机器学习处理器产品经理Gordon Cooper表示,该级别的关键绩效指标(kpi)与性能有关,这意味着人们需要等待生成式人工智能给出答案的时间,以及面积和功耗/热成本。“唯一需要大量生成人工智能(1000 + TOPS)的实时应用是L3/L4自动驾驶。鉴于对生成式人工智能的狂热和炒作,人们提出了许多关于如何最好地将这些功能转移到边缘设备的问题。算法将不得不进化。像ChatGPT这样的东西需要太多的参数。实时人工智能的性能水平需要提高才能满足需求。”
三、选择正确的AI
在选择正确的人工智能设计时需要考虑许多因素,包括项目目标、准确性要求、灵活性、中央计算与边缘计算以及设计权衡。
1)项目目标
选择正确的AI取决于应用需求。你需要生成式人工智能还是预测性人工智能?复杂性、准确性、延迟、安全性、隐私性和安全性需求是什么?因为人工智能不是免费的,所以仅仅因为其他人都在使用它,就把它包含进来是没有意义的。对人工智能的炒作迟早会消失。
例如,在使用聊天机器人引导客户到正确部门的一般客户服务应用程序中,自然语言处理能力和流畅性很重要,但延迟和安全性不是主要问题。几秒钟的延迟并不重要。相反,在自动驾驶中,准确性、延迟和安全性都非常重要。刹车时几秒钟的延迟可能导致撞车。用于控制娱乐系统的舱内语音控制助手则是另一回事。故障可能会造成不便,但不是紧急情况。
同样重要的是要记住,每个决定都会影响整体预算。
2)什么是足够好?
有些开发人员倾向于追求完美,或者至少是不惜一切代价追求高性能和准确性。但对于许多人工智能应用来说,达到90%的准确率已经足够好了。超过95%虽然可行,但代价会非常高昂。因此,从最低需求开始。如果任务可以满足90%的准确率,就到此为止。
3)准确性
在做出人工智能芯片设计决策时,需要考虑精度、性能、移动性、灵活性和预算等多种因素。新思科技(Synopsys)战略营销经理罗恩•洛曼(Ron Lowman)认为,两个简单的问题决定了将哪种人工智能芯片用于何种应用。“首先,成功的最低精度要求是多少?”其次,你要花多少钱才能达到这样的精确度?人工智能只是一种新的生产力工具,随着时间的推移,它将被非常聪明的工程师和企业家反复使用,以改进大量流程,类似于电力驱动电机而不是手摇曲柄。如果您需要在合理的预算下获得高精度,NVIDIA的产品是合理的选择。然而,如果你可以接受低精度和低预算,你可以选择成本更低的人工智能芯片或传统的soc,有限甚至没有人工智能加速。如果这些芯片需要移动性和高效率/低功耗,但在低预算下,可以接受低精度的更高效的SoC。如果你需要高精度和低功耗,这是昂贵的,需要一个ASIC,或者你必须等到我们迭代新设计的几代。”
最昂贵的类别是带有大量AI加速处理高度定制压缩算法的SoC。汽车需要高精度,需要移动和低功耗。“这意味着必须设计出比最高性能的gpu /AI SoC更高效的新SoC,这需要大量投资。然后增加可靠性组件。”Lowman说。
AI设计标准中最重要的因素是准确性。
“精度通常受到钻头分辨率和/或算法选择的影响,”Cooper说。“使用在精度上优于cnn的变换器算法,需要一个支持最新架构进步的神经网络和足够的位分辨率来实现精度-尽管非常依赖于算法。在精度之后,性能是至关重要的。如果你不能达到每秒可用的帧数,那么世界上所有的精度都不会帮助你,即使它非常依赖于用例。其他因素包括成本(通常与模具面积有关)、功耗和开发工具的易用性。”
4)灵活性
对于需要灵活性和快速软件升级的设计,可以考虑采用嵌入式FPGA方法。
Flex Logix首席技术官王成表示:“在实施人工智能时,无论是在芯片上还是在系统上,重要的是要意识到机器学习应用程序不断变化的工作负载需求。”“你需要设计灵活性,因为人工智能领域的发展太快了。硅的设计周期为三到五年,软件需要立即升级。我们正努力提高开发者的认知度。”
四、集中式与边缘人工智能计算
虽然云计算提供了需要强大计算能力的人工智能解决方案,但许多其他实时应用,如智慧城市、零售、增强现实和预防性维护,可能会从边缘人工智能中受益。
但是,这取决于正在构建的应用程序的类型和必须在其中工作的资源边界。
瑞萨电子的沃拉表示:“传统上,从人工智能的角度来看,我们有一个以云为中心的智能模型。“如果我们真的想在网络的极端边缘和端点实现智能,就必须以一种高效、实时响应和经济高效的方式来实现。”这意味着在端点内的小型计算机上运行与云无关的推理引擎。
“去中心化的智能模式具有巨大的技术和经济效益,”沃拉说。“作为设计师/架构师/产品开发人员,在定义阶段早期考虑AI/ML并了解必须使用的资源和系统约束是至关重要的。有很多软件和硬件架构可供选择。在使用边缘和端点应用程序时,要寻找不仅提供芯片,还提供AI/ML工具、参考解决方案和软件的整体生态系统的合作伙伴/供应商。”
应该在产品定义阶段考虑AI/ML,因为硬件选择主要是由系统级需求和资源限制驱动的。
大多数基于传感器的应用可以用基于信号处理、数学和统计学的更简单的经典机器学习算法来解决。机器视觉和语音识别等更复杂的应用需要深度学习方法。用例的复杂性将影响硬件选择,包括在软件中运行AI的纯CPU,与神经加速引擎相结合的CPU,专用AI soc和高性能CPU/ gpu。
五、展望未来
AI有两条发展路径。一种提供非常高的性能,但会消耗大量的能量。另一个则侧重于优化能源效率。两者都有市场需求。
预计软件和硬件的新人工智能创新将继续发展。包括Axelera和SiMa在内的科技巨头和初创企业正在向市场推出许多新的解决方案。ai、Flex Logix、Quadric、Expedera、NeuReality、Kneron、Hailo。等等。以下是一些来自初创公司的例子。
据说,基于MLCommons ML Perf 3.1基准中的封闭边缘功率类别,为ML边缘计算设计的“拖放式”无代码可视化编程优于当前该领域的一些领导者。
另一个进步是人工智能推理服务器架构试图取代传统的以cpu为中心的多用途人工智能解决方案。运行ChatGPT每天可能要花费数百万美元。操作效率现在变得越来越重要。系统级解决方案可以优化和扩展人工智能工作流,以降低网络附加处理单元的总体运营成本。新的以人工智能为中心的方法更多地基于硬件,可以更快地执行指令处理。
图1:基于硬件的以人工智能为中心的架构依赖于网络附加处理单元来执行大部分人工智能工作流。来源:NeuReality
最后,虽然gpu在人工智能应用中得到了很多关注,但嵌入式FPGA在软件更新方面功耗更低、可扩展性更强、更灵活。这一点很重要,因为人工智能算法的变化非常快,无论是在性能和兼容性方面的改进,还是在安全方面的改进。