封面图片:涂虫创意
最近,OpenAI推出的聊天机器人ChatGPT非常受欢迎。 无论你是技术、投资,还是普通网友,似乎不谈ChatGPT就落伍了。 当然,在对ChatGPT的热情之中,也存在着一些不同的意见。 例如,图灵奖获得者、Meta首席AI科学家Yann Le Cun在社交媒体上发文:从底层技术来看,ChatGPT没有创新。 与其说这是一项巨大的技术创新,不如说它是一项工程杰作。
杨丽坤此言一出,遭到网友调侃。 很多人甚至毫不客气的表示,作为Meta的AI掌门人,这根本就是“酸葡萄”的诡辩。 由于Meta之前有类似产品的失败经历,杨立坤面对如此激烈的舆论无力为自己辩解,只能保持沉默,不再对ChatGPT发表评论。
不过,如果我们仔细审视杨立坤的话,就会发现他的话其实很有道理:虽然现在的ChatGPT在性能上确实令人惊叹,但从根本上来说,它仍然是深度学习技术的一小步。 扩张。 事实上,类似的产品几年前就出现了,但不同的是,ChatGPT 的参数远多于之前的产品,而且它使用的训练样本也大得多。 而其优异的表现,其实在很大程度上,只是这些量的优势积累到一定程度之后发生的质的变化。
有趣的是,如果我们回顾深度学习的历史,我们会发现这种利用神经网络进行机器学习的想法实际上在 20 世纪 50 年代就已经存在,并且可以被视为人工智能领域最古老的理论之一。 。 早在1958年,罗森布拉特就利用这一原理建造了一台识别字符的机器。 然而,很长一段时间以来,没有人关注这一理论。 就连现在被誉为“深度学习之父”的 Geoffrey Hinton 也长期遭受孤立和排斥。 原因当然是当时人工智能领域占主导地位的“象征主义”受到压制,但更重要的是当时的深度学习模型表现不佳。
直到本世纪初,这一切才发生改变。 沉寂已久的深度学习理论终于成为人工智能的主流,基于该理论开发的模型如雨后春笋般涌现。 从击败围棋高手的AlphaGo,到识别数亿种蛋白质结构的AlphaFold,从可以瞬间生成大师画作的Dall-E Stable Diffusion,到如今流行的ChatGPT,这一切都在短短几年内涌现。
那么,是什么让深度学习扭转了过去几年的长期颓势,让它完成从异端到主流的转变呢? 我认为最关键的一点是算力的突破。
计算能力及其经济效应
所谓计算能力是指设备处理数据并输出结果的能力,简称计算能力。 其基本单位以“每秒标准化操作数(SOPS)”来衡量。 然而,由于当前设备的性能非常高,在实际中使用SOPS来衡量计算能力已经变得不方便。 相比之下,“每秒百万次操作”(MOPS)、“每秒千兆次操作”(GOPS)和“每秒千兆次操作”(TOPS)等单位已变得更常用。 当然,在一些文献中人工智能的算力是什么意思,也将某些具有特定性能的设备在一定时间内完成的计算量作为计算能力的单位——逻辑上有点类似于物理学中使用的“马力”。 例如,一个常用的单位称为“计算能力当量”,其定义为计算机一整天每秒执行千万亿次运算所获得的总计算能力。
那么,计算能力的意义何在? 关于这个问题,Ajay Agrawal、Joshua Gans 和 Avi Goldfarb 合着的《预测机器》(Prediction Machines,中文译名是《AI 极简经济学》),曾提出一个启发性的观点:算力的成本会与到AI模型的“价格”。 经济学原理告诉我们,在给定其他条件的情况下,对某种商品的需求取决于该商品的价格。 对于两种性能相似、具有替代关系的产品,价格较低的产品将更具市场竞争力。 将此应用到人工智能领域,我们就能找到深度学习理论几十年来被忽视却在近几年爆发的原因。
深度学习的理论虽然并不难,但实现起来所需的计算量却是巨大的。 在低算力时代,算力的单位成本非常高。 在罗森布拉特提出深度学习思想雏形的时代,计算机几乎和房子一样大,但即便如此,它计算更大的矩阵也需要很长时间。 虽然理论上我们也可以利用深度学习来训练大型模型并取得更好的结果,但其成本显然是任何人都无法承担的。 相比之下,符号学模型需要的计算量要少得多,因此这些模型的相对价格也低于深度学习模型。 在这种情况下,深度学习理论在市场上肯定不会有竞争力。 然而,当算力成本大幅降低时表情包设计,深度学习模型的相对价格下降,其竞争力就会增强。 从这个角度来看,深度学习现阶段的胜利其实并不是纯粹的技术事件。 很大程度上,这仍然是一个经济事件。
提高计算能力的方法
那么,决定算力的因素有哪些呢?
为了直观起见,我们不妨通过计算数学问题来说明这一点:如果我们想提高单位时间计算数学问题的效率,有什么方法可以达到这个目的呢? 我认为以下方法或许可行:第一,找更多的人一起算。 如果一个人一分钟能算出一道题,那么十个人一分钟就能算出十道题。 这样,即使每个人的效率没有提高,但随着人数的增加,单位时间可以计算的数学问题数量也可以呈指数级增长。 二是完善装备。 比如早期我们完全依靠手工计算,效率非常低。 如果您使用计算器来代替,效率会更高。 如果使用Excel,效率可能会更高。 三是转化问题,用更好的方法来计算。 例如,如果将1到100的数字相加,则将数字按顺序一一相加可能需要很长时间。 但是,如果我们像高斯那样用等差数列求和公式来解决这个问题,就可以很快地计算出结果。
对应以上三种提高计算能力问题的解决方案,我们也可以发现三种类似的方法:一是采用高性能计算和分布式计算;二是采用分布式计算。 二是计算模型实现突破; 第三是改进算法——虽然严格来说并不意味着算力本身会得到提升,但是会让同样的算力能够完成更多的计算。 从某种角度来说,这就像增加了计算能力。
1、高性能计算与分布式计算
从根本上来说,高性能计算和分布式计算都是同时使用更多的计算资源来完成计算任务,就像我们前面提到的,用更多的双手来解决数学问题。 不同的是,前者聚集的计算资源一般聚集在本地,而后者使用的计算资源可能分散在线上。
(1)高性能计算
我们先来看看高性能计算。 在高性能计算中,最重要的核心技术就是并行计算(ParallelComputing)。 所谓并行计算是相对于串行计算来说的。 在串行计算中,计算任务不会被拆分,任务的执行会占用固定部分的计算资源。 在并行计算中,任务被分解并交给多个计算资源进行处理。 例如,串行计算过程就像要求一个人按顺序独立完成一张试卷,而并行计算就像将试卷上的问题分配给许多人同时回答。 显然,这种任务的分解和分配可以是多种多样的:可以是把计算任务划分到多个设备上,让它们协同解决,也可以是将要解决的问题分解成几个部分,每个部分由独立的并行计算设备组成。 并行计算系统可以是包含多个处理器的超级计算机,也可以是由以某种方式互连的多个独立计算机组成的集群。
从架构的角度来看,并行计算可以分为同构并行计算和异构并行计算。 顾名思义,同构并行计算将计算任务分配给一系列相同的计算单元; 异构并行计算将计算任务分配给不同进程架构、不同指令集、不同功能的计算单元。 例如,多核CPU的并行计算属于同构并行,而CPU+GPU的架构则属于异构并行。
与同构并行相比,异构并行有很多优点。 用通俗的语言解释,这种优势来自于各个计算单元之间的“技术专长”。 异构架构下,不同计算单元的优势可以得到更好的互补。 正是由于这个原因,异构并行计算受到越来越多的关注。
例如,现在越来越多的设备采用GPU和CPU混合的架构。 你为什么这么做? 为了解释这一点,我们需要简单介绍一下CPU和GPU的结构: 一般来说,CPU和GPU都包括算术逻辑单元(ALU)和控制单元(CL)。 、高速缓存(Cache)和动态随机存取存储器(DRAM)。 但两者中这些成分的比例是不同的。
CPU中,控制单元和存储单元所占比例较大,而作为计算单元的ALU所占比例较小,数量也较少; 在GPU中则相反,其ALU所占比例较大,而控制单元和Storage单元只占很小的比例。 这种结构上的差异决定了CPU和GPU的功能差异。 CPU具有比较强的控制和存储能力,可以进行比较复杂的计算,但同时可以执行的线程很少。 相反,GPU拥有大量的计算单元,使其能够同时执行多线程任务,但每个任务都相对简单。 打个比方,CPU就是一个博士。 他精通数学,从微积分到线性代数无所不通。 然而,即便如此,他也很难做到一万次四算术运算; 而GPU则是一群只会四种算术运算的小学生。 ,虽然他们不懂微积分和线性代数,但是人多而且厉害。 如果他们一起工作,几分钟内可以完成一万次四算术运算。
由于GPU的上述特性,它最初的用途是作为显卡,因为显卡负责图形和颜色变换,需要大量的计算,但每次计算的复杂度并不高。 深度学习兴起后,人工智能专家发现GPU其实非常适合训练神经网络模型。 因为在深度学习模型中,最重要的运算是矩阵运算和卷积,而这些运算从根本上可以分解为简单的加法和乘法。 就这样,GPU找到了新的“就业”空间,开始广泛应用于人工智能领域。 然而GPU无法单独执行任务,因此必须与CPU配对。 这种组合可以完成许多复杂的任务。 这就好比有一个能把握方向的导师,有很多肯努力的学生,就能产出很多科研成果。 正是在这种情况下,异构并行开始成为高性能计算的流行架构模式。
然而,异构架构是有代价的。 与同构架构相比,它对用户的编程要求更高。 换句话说,只有用户能够更好地掌握不同计算单元的属性并进行有针对性的编程,才能更好地利用它们。
此外,我们还必须认识到,即使借助异构架构,通过并行计算提高计算效率的可能性也是有限的。 根据阿姆达尔定律,对于给定的运算量,当并行计算线程数趋于无穷大时,系统的加速比将趋于上限。 该上限将是串行操作在总操作中的比例。 比例的倒数。 举个例子,如果一个操作中串行操作的比例是20%,那么无论我们在并行操作部分投入多少个处理器,引入多少个线程,加速比都不会超过5。就好比人工智能的算力是什么意思,如果我是要写一本关于生成人工智能的书,我可以将一些数据查找工作委托给研究助理。 显然,如果我有更多的研究助理,写书会更快。 但这种加速并不是无限的,因为这本书什么时候完成最终取决于我自己的“编码”速度。
(2)分布式计算
另一种通过聚集资源来提高计算能力的方法是分布式计算。 与高性能计算主要聚集本地计算单元不同,分布式计算将分散在不同物理区域的计算单元聚集在一起,共同完成某项计算任务。 例如,刘慈欣在他的小说《球状闪电》中提到了一个名为SETI@home的科研项目(注:这个项目是真实的)。 该项目试图将闲置的个人计算机计算能力集中到互联网上进行处理。 天文数据,这是典型的分布式计算用例。
分布式计算的典型代表就是我们现在经常听到的云计算。 关于云计算的定义,目前的观点并不统一。 更具代表性的观点来自美国国家标准与技术研究院(NIST)。 根据这种观点,“云计算是一种按使用付费的模式。这种模式对可配置的IT资源(包括网络、服务器、存储、应用软件、服务)共享池提供了严格的限制,提供可用的、便捷的、按需的网络在提供这些IT资源的过程中,只需要进行少量的管理和沟通工作。”
这个定义非常抽象和学术,我们可以用一个通俗的比喻来理解。 传统上,用户主要调用自己的单一IT资源,就像各家各户发电自用; 而云计算就像是建造一个大型“电站”(使用大量的计算设备),然后输出“电力”(IT资源)给所有用户使用。
根据云服务提供商提供的IT资源,可以生成不同的“云交付模型”。 由于IT资源种类繁多,相应的“云交付模式”也有很多。 在各种新闻报道中,最常见的“云交付模式”有以下三种:
第一个是IaaS,全称是“基础设施即服务”。 在这种交付模式中,云服务提供商主要提供存储、硬件、服务器和网络等基础设施。
第二种是PaaS,全称是“Platform as a Service”。 在这种交付模式下,云服务提供商需要提供更多的资源,为用户提供“即用型”的计算平台,以满足他们的设计、开发、测试和部署需求。 应用需求。
第三种是SaaS,即“软件即服务”。 在这种交付模型中,云服务提供商将完成的软件作为产品提供给用户使用。
通过以上不同的云交付模式,用户可以根据自己的需求选择相应的IT资源。 例如,如果元宇宙的用户需要更多的计算能力或存储空间而本地机器无法满足,他们可以从云端获得“外援”。 如果一个云 GPU 不够,那就多买几个,按需使用。 既方便又不会造成浪费。
需要指出的是,虽然云计算理论上可以承担巨大的计算和存储需求,但其缺点也很明显。 更重要的一点是,在进行云计算时,需要在本地和云端之间交换大量的数据,这可能会造成明显的延迟。 尤其是当数据吞吐量太大时,这种延迟变得更加严重。 对于用户来说,这可能会对他们的体验产生非常负面的影响。
那么我们如何克服这个问题呢? 一个直观的想法是,将一个可以进行计算、存储和传输的平台放置在靠近用户或设备的地方。 该平台一方面可以充当终端和云端之间的中介,另一方面可以实时响应终端的各种需求。 这个想法被称为边缘计算。 由于边缘平台距离用户较近,其与用户的数据交换会更加及时,延迟问题可以得到更好的解决。
2. 超越经典计算——以量子计算为例
无论是高性能计算还是分布式计算,本质都是在计算资源的分配上下功夫。 但正如我们之前所看到的,通过这种方法提高计算能力存在许多障碍。 因此,现在很多人希望在计算方法本身上有所突破,以达到更高的计算效率。 其中,量子计算是最具代表性的例子。
我们知道,经典计算的基本单位是比特,比特的状态要么是0,要么是1。因此表情包设计,经典计算机中的所有问题都可以分解为对0和1的运算。一个比特存储单元只能存储一个0或1。量子计算的基本单位是量子位,其状态可以是多维向量。 向量的每个维度都可以代表一种状态。 这样看来,量子存储器相对于经典存储器具有很大的优势。
考虑具有 N 个物理位的存储器。 如果是经典存储器,那么它只能存储2的N次方可能的数据中的任意一个; 如果是量子存储器,那么它可以同时存储2的N次方。 方形数据。 随着N的增加,量子存储器的存储容量相对于经典存储器将呈指数级增长。 例如,250 个量子位的存储器可能能够存储 2 的 250 次方,这比已知宇宙中的原子数量还要多。
进行量子计算时,可以同时对内存中的所有数据进行数学运算。 这样,量子计算机就可以在一次运算中同时对输入数字的2的N次方进行数学运算。 效果相当于经典计算机重复执行2的N次方运算,或者使用不同处理器的2的N次方执行并行运算。 依靠这样的设置,可以大大节省计算量。
为了帮助大家理解,我们可以用一个不太贴切的比喻:大部分玩过动作游戏的朋友都知道,在游戏中,我们所扮演的英雄往往可以使用很多招式,而有些招式只能针对单个物体输出; 并且其他招式可以对所有敌人输出。 这里,前一种个体输出技巧相当于经典计算,而后一种群体输出技巧相当于量子计算。 我们知道,在面对大量小怪的围攻时,一组输出的效果可以和很多单目标输出招式一样好。 同样的道理,在某些情况下,量子计算相对于经典计算能够实现非常大的效率提升。
例如,对大数进行因式分解对于破解公钥加密具有重要价值。 如果使用计算机,使用常用的 Shor 算法对数字 N 进行因式分解,运算时间会随着 N 对应的二进制数的长度呈指数增长。1994 年,有人组织了全球 1600 个工作站,用二进制长度为129。这项工作花了整整8个月的时间才完成。 然而,如果使用量子计算解决同样的问题,整个问题可以在1秒内解决。 这说明了量子计算的力量。
然而,在看到量子计算威力的同时,我们也必须认识到,至少到目前为止,量子计算的威力只能体现在少数特殊问题的处理上,其通用性还比较弱。 事实上,现在报道的各种量子计算机只能执行专门的算法,而不能执行通用计算。 比如谷歌和NASA联合研发的D-Wave只能执行量子退火算法,而我国研发的光量子计算机“九丈”则专门用来研究“高斯玻色采样”问题。 虽然它们在各自的专业领域表现非常出色,但并不能用来解决一般问题。 这就像游戏中的群攻杀招一样。 虽然攻击范围很广,但是对个体的伤害却比较弱。 因此,如果遇到一大群小怪,群体攻击威力很大,但如果遇到防御高、血条厚的boss,这个攻击就没什么用了。
从这个角度来看,想要让量子计算变得更强大,首先要找到适合量子计算应用的问题和场景,然后找到相应的算法。 同时,我们也必须认识到,虽然量子计算的研发和探索非常重要,但它与其他技术路径探索的关系应该是互补而不是替代。
3.通过改进算法节省算力
如果说通过高性能计算、分布式计算、量子计算来提升算力是“开源”,那么通过改进算法来节省算力就是“节流”。 从提高计算效率、降低计算带来的经济和环境成本的角度来看,开源节流在某种程度上同样重要。
ChatGPT流行之后,大型模型开始越来越流行。 因为在同等条件下,模型的参数越多、训练数据越大,其性能就越好。 因此,为了追求模型更好的性能,目前的模型变得越来越大。 我们知道目前的ChatGPT主要是在GPT-3.5的基础上训练的。 在出现之前,GPT经历了三代。 GPT-1大约有1.17亿个参数,预训练数据为5GB,从现在来看似乎并不多; 通过GPT-2,参数数量增加到15亿,预训练数据达到40GB; 而到了GPT-3,参数数量迅速膨胀到惊人的1750亿,预训练数据也达到了45TB。 训练 GPT-3,单次成本为 140 万美元。 虽然OpenAI还没有公布GPT-3.5的具体情况,但可以想象,它的参数量和预训练数据都会高于GPT-3。 为了训练这个模型,微软专门搭建了一个由10000个V100 GPU组成的高性能网络集群。 总算力消耗达到了3640个“算力当量”——也就是说,如果用一台计算机每秒计算千万亿次的计算机来训练这个模型,大约需要十年时间才能完成这个任务。
如果让这种“一代比一代大”的趋势持续下去,未来几年对算力的需求将会爆发式增长。 一项新研究估计,五年后,人工智能模型可能需要比现在多 100 万倍的计算能力。 显然,由此产生的经济和环境成本将是惊人的。
令人欣喜的是,目前不少研究人员希望通过改进算法、优化模型来降低对算力的需求,并取得了一定的成果。 例如,今年 1 月 3 日,奥地利科学技术研究所(ISTA)的研究人员 Elias Frantar 和 Dan Alistarh 合作进行了一项研究,首次针对模型尺度提出了精确的单次剪枝方法 SparseGPT 10 到 1000 亿个参数。 SparseGPT 可以一步将 GPT 系列模型修剪到 50% 的稀疏度,而无需任何重新训练。 以目前最大的公开可用的GPT-175B模型为例,使用单个GPU只需几个小时即可实现这样的剪枝。 不仅如此,SparseGPT 还非常准确,可以最大限度地减少准确性的损失。 经过类似的剪枝,训练这些大型模型所需的计算量将会大大减少,它们对计算能力的需求也会相应降低。
关于提高算力支持人工智能发展的政策思考
随着ChatGPT引领新一轮人工智能热潮,市场对算力的需求也将出现爆发式增长。 在此情况下,为了有效支撑人工智能发展,需要通过政策手段引导算力供给大幅增加。 要实现这一目标,以下几方面的工作可能是最值得关注的。
一是加快算力基础设施建设布局,增强对全社会算力需求的支撑。 如前所述,从目前来看,分布式计算尤其是云计算是提高算力的有效途径。 要充分发挥云计算的功效,需要大力建设各类计算基础设施。 只有这样,人们才能随时随地通过网络直接获取所需的计算资源。
这里需要指出的是,在布局算力基础设施时,应仔细考虑其地理和空间分布,尽可能降低算力成本。 我们知道,不同地区的土地、水、电等要素的价格不同,这就决定了不同地区生产相同算力所需的成本也不同。 因此,在建设计算基础设施时,需要顾全大局,尽可能优化成本。 需要指出的是,我国正在推行的“东数西算”工程就是这一理念的体现。 由于我国东部地区各种资源的使用成本高于西部地区,在西部地区建立算力设施将显着降低算力的供给成本,从而在全国范围内实现更好的配置效率。
二是加强算力相关硬件技术及其应用的研发,为增加算力供给提供支撑。 与算力相关的硬件技术包括基于经典计算的各种硬件,如芯片、高性能计算机等,也包括基于超越经典计算理论的新计算理论开发的硬件,如量子计算机。 从供应角度来看,这些硬件是基础性的,其性能与计算能力提供的可能性边界直接相关。 因此,必须利用政策积极推动这些硬件的研发。 尤其是一些“卡壳”的项目,更应该先有所突破。
这里需要指出的是,在进行技术研发的同时,我们还应该积极探索技术的应用。 例如,我们现在在量子计算领域取得了一些成果,但由于缺乏用例,这些成果还没有能够转化为现实应用。 从这个意义上说,我们还需要加强技术应用的研究。 如果能够将一些计算问题转化为量子计算问题,就可以充分发挥量子计算机的优势,大大提高计算效率。
Third, software-level elements such as algorithms and architecture should be optimized to reduce dependence on computing power as much as possible while ensuring the performance of AI products. From the perspective of reducing AI computing costs, reducing the computing power requirements of the model is equally important as improving the computing power. Therefore, while using policy means to promote the supply of computing power, the same incentives should be given to the optimization of algorithms, architectures and models with the same intensity.
Considering that similar achievements have very huge positive social externalities, it is not the most appropriate to protect them with patents. Therefore, we can actively encourage direct rewards to people and units that have achieved similar successes, and at the same time encourage them to open source these results to the whole society; we can also consider the government's approach to tender and purchase similar model products. If there are individuals or units that can provide corresponding results as required, the government will pay the corresponding fees and make the results open source. Through these measures, people can be well motivated to actively participate in the cause of improving models and saving computing power, and can also allow the whole society to enjoy these results in a timely manner when results are produced.
All in all, in an era of rapid advancement in artificial intelligence, computing power may be a key factor in determining the upper limit of artificial intelligence development. Only by achieving a breakthrough in computing power can the development of artificial intelligence be fundamentally guaranteed.
- 本文固定链接: https://wen.nuanque.com/aigc/15494.html
- 转载请注明: nuanquewen 于 吉祥物设计/卡通ip设计/卡通人物设计/卡通形象设计/表情包设计 发表
- 文章或作品为作者独立观点不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。本文之内容为用户主动投稿和用户分享产生,如发现内容涉嫌抄袭侵权,请联系在线客服举报,一经查实,本站将立刻删除。本站转载之内容为资源共享、学习交流之目的,请勿使用于商业用途。