当前位置: 华文天下 > 台海

用于人工智能的光子学:计算必须经济实惠

2024-06-10台海

2022 年秋季爆发的生成式 AI 炒作似乎仍然没有消退——因此,直到 2024 年第二季度初,台湾芯片制造商台积电是迄今为止世界上唯一一家不仅能够根据所需生产标准制造必要芯片,而且还能够使用最先进的「三维」CoWoS 技术封装它们的芯片(chip-on-wafer-on-substrate),几乎无法应对相应芯片设计人员稳步增长的订单流;主要来自英伟达。现在,幸运的是,新的CoWoS封装线开始在台湾投入运营,因此有兴趣的服务器视频卡制造商可供购买的芯片数量(当然,称它们为 张量计算机 更准确,因为它们已经很久没有专门用于生成计算机视频了)每个月都在增长,因此,全球AI产业发展的瓶颈已经扩大。

光子学尚未达到用纯光制造芯片的地步,但麻烦已经开始(来源:基于 SDXL 1.0 模型的 AI 生成)

唉,紧接着,另一个不幸发生了,这是 Meta 负责人马克·扎克伯格 (Mark Zuckerberg) 最近讲述的,该公司积极参与人工智能竞赛——好吧,因为元宇宙没有「起飞」,公众已经爱上了智能机器人。现在,适合训练假设的 GPT-5(以及来自 OpenAI 以外的开发人员的未来类似物)的数据中心的扩张受到平庸但同样令人遗憾的电力短缺的阻碍。直到 2022 年底,当对生成式 AI 最广泛的兴趣开始像雪崩一样增长时,典型数据中心中的单个机架消耗的电力在 10-15 kW 范围内。今天,考虑到目前平均机架没有配备单个张量计算机来响应客户要求,其功耗达到 40-60 kW。因此,一个大型超大规模数据中心的峰值容量可能需要 150 MW,据专家称,仅美国数据中心的总能耗就从 2022 年的 17 GW 飙升至 2030 年的 35 GW。

这才是真正的问题:尽管地球上居民可用的能源资源可能是无限的(仅来自太阳的光子流显然就涵盖了未来几个世纪人类对能源的所有需求),但当将这种潜力转化为为非常特定的设备提供动力的平凡千瓦时时,困难就开始了.此外,现代半导体计算设备在能耗方面效率极低,称其为能源浪费更为正确。任何将「1」转换为「0」或反之亦然的逻辑操作都简化为在很小的距离内移动非常小的电荷,即产生微电流。反过来,任何电流都会加热它流过的通道,如果这个通道有电阻(它确实如此,因为串行半导体芯片不具有超导特性)。结果,在给定芯片中执行的逻辑操作每秒产生的数万亿微电流转化为数十瓦和数百瓦的功率转化为热量。然后你需要花费大量的能量来去除这种寄生热量,否则过热的芯片将无法正常工作。

因此,服务器内部带有半导体芯片的经典数据中心数量的广泛增长显然无法从根本上解决即将到来的AI任务缺乏计算能力的问题。有几种方法可以解决这个问题,但当今最有前途的方法之一是光子学,从「光子」+「电子」——使用 光学 逻辑电路代替电子电路或与它们一起使用。 人类 很久以前就学会了以光脉冲的形式传输信息,并且仍然很好地实践了这项活动——从山峰上的信号火到日光仪再到光纤通信线路。但是,使用光子来组织逻辑电路,并在其基础上组织超大型 计算电路 是一项更加困难的任务。

1917 年,土耳其信号员在阵地上使用日光仪(来源:Wikimedia Commons)

然而,它的决定已经得到了全世界的认真对待:只要回想一下,在2024年春季结束时,总理米哈伊尔·米舒斯京(Mikhail Mishustin)设定了确保俄罗斯在光子学领域十大领导者中的地位的任务。这是很合乎逻辑的:如果在半导体 VLSI 领域赶上行业领导者是非常困难和昂贵的(就在 2024 年 5 月 21 日,俄罗斯联邦工业和贸易部副部长瓦西里·什帕克正式宣布,第一台国产光刻机已经创建并正在俄罗斯进行测试,确保按照高达 350 nm 的生产标准生产芯片——可与台积电和三星电子目前的「3 nm」相媲美), 在光子学领域,所有准备踏上这个领域的玩家今天都处于几乎平等的地位。而且,由于人工智能在传统芯片上的进展是故意停留在能源上限上,因此立即专注于不受这些限制的发展分支要合理得多。

需要更多的数据(和能量

AI计算的半导体硬件基础的主要问题就是他们!— 本质上是多线程 神经网络的功能是 在线性二 进制逻辑的基础上模拟的。在关于神经计算基本原理的文章中,我们解释了人工神经元是如何工作的,即感知器,它接收来自多个输入的输入信号,并根据一定的规则,在输出端产生一个结果信号,以及它们如何组合成(现在通常是多层的)神经网络。从技术上讲,感知器并不那么复杂,这使得在最普通的冯·诺依曼计算机的内存中创建它们的大量虚拟图像成为可能。

是否有必要在物理上模仿大脑的结构,以达到神经网络的根本新复杂程度?这个问题仍然没有答案(来源:基于 SDXL 1.0 模型的 AI 生成)

另一件事是,神经网络的工作归结为执行数量惊人的简单操作(加权求和——与参数对相乘的加法),冯·诺依曼系统被迫在实际计算节点(处理器)和数据存储(RAM)之间主动移动数据以执行此类计算。这就是为什么具有成百上千个计算内核的强大图形适配器,再加上具有高性能视频内存的高速数据总线,可存储数 GB(甚至数十 GB)的高性能视频内存,适合运行,更适合以当今广泛使用的最佳方式训练 AI 模型。是的,专用模拟计算机能够在人工智能任务上与基于二进制逻辑的经典计算机竞争,但这种计算机的大规模生产和实施仍然是一个相当遥远的未来。

为什么今天几乎所有的虚拟神经网络都在实践中使用,在冯·诺依曼计算机的内存中运行,由感知器层表示?毕竟,没有什么可以阻止 - 特别是因为我们仍在谈论RAM中这些对象的 模拟 - 从一个特定感知器的输出向任何其他感知器的输入发送信号,顺便说一句,这将与高等动物大脑中生物神经元之间的相互作用结构更加一致。这一切都与计算优化有关:通过将虚拟神经元排列在层中,使给定层的元素的输出与一个元素的输入和下一个元素的输入闭合,您可以自由地使用线性代数中已知的矩阵运算来加快计算速度。正是通过这样的操作,冯·诺依曼计算机(我们记得,数字神经网络功能)能够出色地应对。

卷积神经网络的工作原理(来源:Wikimedia Commons)

矩阵运算的一个很好的例子是卷积,它使得在机器学习领域(或者更准确地说,视觉图像识别)领域取得重大进展成为可能,我们在关于卷积神经网络的文章中对此进行了详细讨论。应用于模式识别的多层神经网络的主要问题是,当试图诚实地处理 整个 输入图像时(具有任何足够的分辨率,例如512×512像素加上另外3位用于颜色编码),系统必须处理过多的参数,每个参数都必须不可避免地参与加权求和操作。不仅如此,为了训练这样的网络来识别某些图像,你必须给它提供适当数量的参考图像——分别与猫、单独与狗、单独与马,依此类推,对于所有最终需要识别的对象。另一方面,卷积网络通过从根本上降低矩阵的维度来识别原始图像的各个片段的某些特征,从而减少整个模型的操作参数数量。而且,即使在开放(用于非商业研究)ImageNet数据集(超过2万个类别的1400多万张图像)等相对适度的材料上,它们也使其训练非常逼真。

然而,今天,更强大的神经网络正在使用中:GPT-3 已经包含 1750 亿个内部参数,其有效值是在 3000 亿个代币的数据集上训练后建立的。根据 Epoch 研究所的 Pablo Villalobos 的说法,GPT-4 是在 12 万亿个数据代币上训练的,目前互联网上可用的所有信息可能根本不足以充分训练下一代模型——其数量不超过 20 万亿个代币(而有条件的 GPT-5 可能需要,具体取决于其实现的细节,从 60 到 100 万亿个代币)。正在积极讨论使用那些已经在工作的神经网络生成缺失数据的可能性,以便将从它们获得的代币提供给有前途的模型。然而,许多研究人员批评了这条道路,指出在衍生数据(而不是直接从自然或人造中获取)上学习的潜在危险,如模型崩溃、过度拟合、机器「幻觉」渗透到数据集中(每个人都记得熊在太空中的故事?)但是,即使数据问题以某种方式得到解决,半导体计算设备能耗过剩的障碍也不会消失,而有条件的 GPT-5 必须在此基础上进行训练。至少在光子学取代微电子学之前,至少在当今高科技领域这个相对狭窄但极其重要的领域。

光明之路

从能源效率的角度来看,光子是一种比电子更具吸引力的粒子。就数据传输密度而言,波导中的光通量先验优于沿导体移动的电子群:自 1970 年代后期以来,世界各地的光纤长距离通信线路开始自信地取代铜线,这绝非巧合。光通信信道也越来越多地用于数据中心内甚至计算机集群的各个计算节点之间的高速数据传输:它们保证了更高的速度和更少的能源消耗。鉴于信息传输的速度和密度对神经网络计算的重要性,我们可以预期光子学在这里将比我们今天习惯的电子产品更具吸引力。

基于半导体的雪崩光电探测器完全有能力成为纯声子和纯电子计算电路之间的链接(来源:英特尔)

然而,信息 的传输 与其 处理 之间存在巨大的距离,即根据其内部配置设定的某些规则,在状态「1」和「0」之间有条件地切换某个逻辑门。半导体晶体管的卓越品质是非线性的,到目前为止,它已经自信地弥补了几乎所有非常明显的缺点:其工作参数(首先是电阻)对外部电流和电压的依赖性。在线性电路中,其元件的特性(电阻、电容、电感)是恒定值,输出电压始终与输入电压成正比——当然,在合理的范围内;直到由于输入电流参数过高而发生击穿。对于非线性电路来说,情况并非如此,正是这种非典型行为允许特殊选择输入参数以获得不同的输出,即最终实现逻辑电路的各种元件。

光子是完全不同的事情:它们在介质中沿直线运动(更准确地说,沿着测地线,但在这种情况下,考虑广义相对论的影响是没有意义的),服从麦克斯韦 的线性 方程。因此,如果我们不考虑其中不可避免的光散射/衰减,光学器件是无艺术线性的:它们的输出流的功率通常与输入流的功率成正比。那么,逻辑轮廓应该如何组织呢?「阻碍我们的东西会帮助我们」——当然,我们之前关于微处理器生产的成功和问题的读者已经了解了这种非常高效的工程方法的本质。事实上,通用半导体逻辑的基本元素的直接再现,例如使用光子发射器和转换器的Schaeffer行程,目前是无效的(尽管这方面的工作也在进行中)。

以下逻辑链更加巧妙:实际的 AI 任务被简化为矩阵上的操作;矩阵上的运算通过线性代数进行研究;线性电路可以很容易地建立在光子器件上——这一切难道不意味着光子学,而不是半导体版本的经典微电子学,是加速人工智能领域进步的最佳选择吗?事实上,矩阵乘法通常用于(深度)机器学习,可以由混合光子器件执行 - 最少地使用最简单的半导体电子器件 - 比基于纯硅的经典计算机系统更有效。

矩阵乘法很容易(来源:Wikimedia Commons)

对于那些忘记了线性代数基础知识的人,我们提醒您,您可以将此类矩阵相乘,其中第一个矩阵的行数等于第二个矩阵的列数(在这种情况下,因子的顺序很重要)。在生成的矩阵中,每个坐标为 (n k ) 的元素都是两个数值向量的点积,第一个因子的 第 n 行与第二个因子 的第 k 列。乘法和加法本身就是基本过程;现代硅微处理器,尤其是多核和多线程微处理器,开玩笑地应对它们。唯一的问题是,机器学习问题使用大维矩阵进行操作,而在不求助于复杂的优化的情况下,将两个 大小为 m × m 的正方形矩阵相乘所需的操作数量约为 m ³(在数学符号中, O m ³;读作「O large of em in a cube」),当然,这已经是数万 了开始在计算机系统的硬件基础上创建公平的负载。与其说是在处理器上,不如说是在处理器和内存之间的总线上,中间结果所在的总线上,因为让我们再次回顾一下,冯·诺依曼架构意味着计算节点和数据仓库之间的空间分离。

由于数学家的巨大努力,几十年来,矩阵维数为估计乘法所需步数的程度的指标已从大约 2.80 减少到 2.42,自 2023 年底以来, 数字 2.371552 被认为是最好的成就(在此之前,记录值是 2.371866)——在实践中,该指标每减少万分之一就极其重要。 以美元和千瓦时表示。重要性越大,每个新的机器学习模型开始处理的矩阵就越大。

除法和乘法

2019 年,麻省理工学院的 Ryan Hamerly 及其同事提议使用基于分束器的光电电路——粗略地说,半透明镜子与落在它上面的光通量轴成 45° 角旋转——来增加矩阵。由于反射镜是 半透明 的,因此正好有一半的原始流动(在第一个近似中可以忽略不可避免的吸收/散射损失)以相同的方向通过玻璃板,而另一半则如预期的那样以90°角反射到该方向。分光镜显然不适合任何逻辑电路的作用——它只会将光子流分成强度相等的两部分,彼此垂直传播。

基于原始分光镜的光电倍增器(特别是矩阵)示意图(来源:IEEE Spectrum)

然而,第二束可以指向同一束流分流器,在第一束初始光束落下的同一点(仅从板的背面),与第一束成 90° 角。同样的事情也会发生在它身上,结果将是一个具有两个输入和两个输出的光学系统,每个传出流都将是传入流的组合。一个简单的分光镜在原始方向上正好传输一半的光束不会提供值得注意的结果,因为两种出射(组合)光线的强度将相等。Hamerli和他的同事们提出了一种更复杂的装置,它在一个方向上接收电场强度 为x ,在另一个方向 上具有y 的光束,在第一个输出通道中发射强度为( x + y )/√2的流,在第二个方向发射强度为( x y )/√2的流。

此外,在光学方案中,在出射光束的路径上有光电探测器,用于测量光通量 的功率 ,该值与该通量中电场 强度的平方 成正比。因此,( x + y )/√2 是 ( x 2 + 2 xy + y 2)/2,( x y )/√2 是 ( x 2 − 2 xy + y 2)/2。然后两个运算放大器开始工作,第一个运算放大器反转其中一个光电探测器的输出(将 ( x 2 − 2 xy + y 2)/2 转换为 (− x 2 + 2 xy y 2)/2),第二个只是将获得的值相加。结果为值 2 xy ,即 线性 光电电路实际上乘以初始光通量的电场强度值编码的初始值 x y (附加系数为 2,但这根本不是问题)。此外,这些流不必在时间上是连续的:例如,矩阵中的数字可以通过连续和非常短的脉冲进行编码,这些脉冲对两个输入通道都是时间匹配的。

还行;这个方案可以让你得到一个乘积,但是在乘以矩阵时,还需要从相应的单元格中将每对连续数字的乘积 相加 ,对吧?这也没有问题:在电路上的最后一个运算放大器后面放置一个电容器就足够了,这将积累部分电荷,与该放大器产生的下一次功率成正比。整个电路的线性度及其模拟特性再次受到工程师的注意:事实上,在测量电容器计数器中一系列光脉冲结束时积累的电荷量时,这里需要将连续值转换为离散值的唯一转换器。

Ryan Hamerley的团队和MTI的同事提出的光子芯片设计的计算机模型(来源:IEEE Spectrum)

现在让我们回想一下,这样一个序列的持续时间——可乘矩阵的列数/行数——可以对应于神经网络模型处理的参数字段的维数。换句话说,如果这个维度是 N ,那么在冯·诺依曼计算机上,将这样的矩阵相乘将需要 O N 3)——好吧, 即使 O N 2.371552)——运算。Hamerli和他的同事们的光电电路将以 N 个步骤应对这样的任务,光源形成的脉冲频率越高(并且由于现代激光技术的成功,它可以达到数百太赫兹,如美国ZEUS,Zetawatt等效超短脉冲激光系统),计算速度越快。

如果没有布尔

除了从根本上加快大型人工智能模型运行中最耗费资源的操作之一外,从「纯」微电子向光子学的过渡在能源效率方面也提供了巨大的好处。很明显,高频脉冲激光器的运行可能需要相当大的功率,但是由于其操作的 可逆性 ,基于光学元件的计算电路从根本上优于基于具有 不可逆 逻辑的元件的半导体系统。这一点值得单独解释,因为它使我们能够看到基于布尔代数的经典计算机的基本局限性——正是为了解决与人工智能相关的大规模和资源密集型问题。

通过带有两个参数的逻辑运算「AND」的例子,很容易理解「不可逆逻辑」的含义:如果两个参数都为真,则为「true」,如果其中至少有一个为假,则给出「false」值。换言之,基于结果——相应逻辑门输出端的「1」或「0」——只有在四种可能的情况下,才有可能可靠地建立传入参数的值:如果「逻辑AND」返回「1」,那么两个参数的值都为「true」。在涉及至少一个「0」的所有组合中,有关操作初始参数的信息将丢失。

使用今年的工艺技术切换单个半导体晶体管所需的能量正在稳步下降,但Landauer极限(虚线水平线)仍然无法实现(来源:LessWrong via Landauer,IBM,Intel和TSMC)

为什么从能源的角度来看它很重要?因为信息丢失意味着系统熵的增加,从物理意义上讲,意味着计算电路内能量的耗散。根据Landauer的原理(当时的IBM员工Rolf Landauer在1961年制定了该原理),在任何计算系统中,无论其物理实现的细节如何,当每一点信息丢失时(特别是在不可逆阀门的操作过程中),都会释放出一定量的热量。请注意,这种规律性是纯粹的热力学性质,表明基于不可逆逻辑门的计算机能量损失的非零下限。例如,由于(半导体)导体的电阻而产生的额外(以及更重要的)耗散,这里根本没有考虑。

是的,Landauer 设定的值非常小——每损失一个比特,它就小于 3 × 10−21 J,但现在让我们再次记住现代冯·诺依曼计算机产生不可逆的基本逻辑运算,使用生成式 AI 模型解决某些问题。2012 年,Landauer 原理在实验上得到证实,2018 年,基于分子纳米磁体物理基础的量子计算出现了其有效性的证据,这在未来为具有不可逆逻辑门的量子计算机设定了能耗下限。现代微电子技术,尤其是那些基于硅以外的半导体的微电子技术,每一代都变得越来越节能,因此预计在未来几十年内将达到它们的Landauer极限。预测是相当现实的:截至 2020 年,将晶体管栅极从「闭合」位置或「打开」位置或返回所花费的能量仅比该限制高三个小数点后几个数量级,而在 2000 年,差距超过了六个数量级。

另一方面,光子学主要依靠可逆逻辑门,可以执行至少部分计算,能耗在Landauer极限水平上,其中一些非常重要。当然,在发展高计算技术这一分支的道路上必须克服许多障碍,我们将在下一篇文章中讨论这些障碍。但从将矩阵乘以10-6个或更多元素的能力的角度来看,不需要专用的核电站来为执行此类操作的数据中心供电,光子学绝对值得付出努力。