服务粉丝

我们一直在努力
当前位置:首页 > 科技 >

编程的终结:经典计算机领域正迎来剧变

日期: 来源:返朴收集编辑:返朴

我们大多数人都是恐龙,等待着流星的撞击。

撰文 | Matt Welsh

本文作者Matt Welsh ([email protected])是一家最近成立的初创公司Fixie.ai(致力于开发人工智能功能来支持软件开发团队)的首席执行官和联合创始人。他曾是哈佛大学计算机科学教授、谷歌的工程总监、苹果的工程主管,以及OctoML的工程高级副总裁。他在加州大学伯克利分校获得博士学位的时候,人工智能还不太会下国际象棋。本文The End of Programming 发表于 JANUARY 2023 | VOL. 66 | NO. 1 | COMMUNICATIONS OF THE ACM(《美国计算机协会通讯》),本文只代表着其中一种观点,但由权威刊出,说明这种观点值得关注。

上世纪80年代,我长大了,开始在家中为Commodore VIC-20和Apple等个人电脑编程。我在大学里继续学习计算机科学 (CS),并最终在伯克利获得博士学位,我的大部分专业培训都植根于我称之为“经典”的CS:编程、算法、数据结构、系统、编程语言。在经典计算机科学中,最终目标是将一个想法简化为由Java、C++或Python等语言编写的程序。经典计算机科学中的每一个思想——无论多么复杂,从数据库连接算法到令人难以置信而滑稽的Paxos共识协议——都可以表达为人类可读、可理解的程序。

上世纪90年代初,当我还在上大学的时候,我们还处于AI寒冬的深处,AI作为一个领域同样被经典算法所主导。我在康奈尔大学的第一份研究工作是和Dan Huttenlocher一起工作,他是计算机视觉领域的领军人物(现在是麻省理工学院施瓦茨曼计算学院的院长)。1995年前后,在Huttenlocher 的计算机视觉的博士生课程中,我们从未讨论过任何类似于深度学习或神经网络的东西,而是经典算法,如Canny边缘检测、光流和Hausdorff距离。深度学习还处于起步阶段,还没有被认为是主流人工智能,更不用说主流计算机科学了。

当然,这是30年前的事情了,从那时起发生了很多变化,但有一件事没有真正改变——计算机科学是一门“数据结构、算法和编程”作为其核心的学科来教授的。如果再过30年,甚至10年,我们还在用这种方式研究计算机科学,我会感到惊讶的。事实上,我认为计算机科学作为一个领域正在经历一个巨大的变迁——我们中很少有人真正做好了准备。

编程将被淘汰,我相信“写程序” 的传统观念正在走向消亡。事实上,除了非常专业的应用,我们所知道的大多数软件将被经过训练而不是编程的人工智能系统所取代。在需要一个“简单”程序的情况下(毕竟,并不是所有的程序都需要一个运行在GPU集群上、有数千亿个参数的大模型),这些程序本身将由人工智能生成,而不是手工编码。

我不认为这个想法很疯狂。毫无疑问,从(相对)原始的电气工程洞穴中走出的最早的计算机科学先驱们坚信,所有未来的计算机科学家都需要对半导体、二进制算术和微处理器设计有深刻的理解才能理解软件。快进到今天,我敢打赌99%的编写软件的人几乎不知道CPU是如何工作的,更不用说晶体管设计的物理基础了。进一步地说,我相信未来的计算机科学家将远离“软件”的经典定义,他们将很难逆转链表或实现快速排序。(见鬼,我不确定我是否还记得如何实现快速排序。)

像CoPilot这样的AI编码助手只是触及了我所描述的内容的表面。在我看来,很明显,未来所有的程序最终都将由AI来编写,而人类充其量只能扮演监督的角色。任何怀疑这一预测的人只需看看AI内容生成的其他方面(如图像生成)正在取得的惊人进展。DALL-E v1和仅在15个月后宣布的DALL-E v2在质量和复杂性上的差异是惊人的。如果说我在过去几年的人工智能工作中学到了什么,那就是,人们很容易低估日益庞大的人工智能模型的力量。几个月前还像是科幻小说的事情正在迅速成为现实。

(创造出令人惊艳的图像, https://openai.com/dall-e-2/)

所以,我不只是在谈论像Github的CoPilot[1]取代程序员,而要说的是,用训练模型取代编写程序的整个概念。在未来,计算机科学的学生将不需要学习诸如如何向二叉树添加节点或C++代码这样的平凡技能。这种教育将会过时,就像教工程专业的学生如何使用计算尺一样。

未来的工程师只需敲击几下键盘,就能启动一个包含400亿亿个参数(four-quintillion-parameter)的模型实例,这个模型已经对人类知识的全部范围(包括子集)进行了编码,并随时准备执行机器要求的任何任务。让机器做我们想做的事情的大部分脑力工作将是提出正确的示例、正确的训练数据和正确的方法来评估训练过程。像基于小样本学习(few-shot learning)且能泛化的、这样强大的模型只需要执行任务的几个好的示例。在大多数情况下,大规模的、人工管理的数据集将不再是必要的,大多数人“训练”一个AI模型将不会在PyTorch中运行梯度下降循环(gradient descent loops)或类似的东西。他们只是教模型几个示例,机器将完成其余的工作。

在这门新的计算机科学中——如果我们还称之为计算机科学的话——机器将如此强大,并且已经知道如何做很多事情,这一领域将看起来不像一个工程领域,而更像一个教育领域。也就是说,如何最好地教育机器,就像如何最好地教育学校里的孩子一样。不过,与 (人类) 孩子不同的是,这些人工智能系统将驾驶我们的飞机、运行我们的电网,甚至可能统治整个国家。我认为,当我们的注意力转向教授智能机器而不是直接编程时,绝大多数经典CS就变得无关紧要了。传统意义上的编程实际上将会消亡。

我认为CS作为一个领域正在经历一场相当大的剧变,我们中很少有人真正做好了准备。

这一切将如何改变我们对计算机科学领域的看法?新的原子计算单元不再是处理器、内存和I/O系统,而是一个大规模的、预先训练过的、高度自适应的AI模型。这对我们思考计算的方式来说是一个巨大的转变——不再是一个可预测的、静态的、受指令集、类型系统和可判定性概念支配的过程。基于人工智能的计算早已跨越了静态分析和形式证明的界限。我们正在迅速走向这样一个世界,在这个世界里,计算的基本构件是有气质的、神秘的、自适应的代理。

没有人真正了解大型人工智能模型是如何工作的,这一事实突显了这种转变。人们发表的研究论文实际上发现了现有大型模型的新行为,即使这些系统是由人类“设计”出来的。大型人工智能模型能够做一些它们没有受过明确训练的事情,这应该会把Nick Bostrom[2]和其他担心超级智能人工智能横行的人吓得魂飞魄灭 (这是正确的)。除了实证研究,我们目前没有办法确定当前人工智能系统的局限性。至于未来更大更复杂的人工智能模型——祝我们好运!

对于任何读过现代机器学习论文的人来说,焦点从程序到模型的转变应该是显而易见的。这些论文几乎没有提到创新背后的代码或系统:人工智能系统的构建模块是更高层次的抽象,如注意力层(attention layers)、标记器(tokenizers)和数据集。即使是20年前的时间旅行者,也很难理解GPT-3论文[3](描述为该模型构建的实际软件)的三句话(three sentences):

“我们使用与GPT-2相同的模型和架构,包括其中描述的修改后的初始化、预归一化和可逆标记化,除了我们在Transformer Layer中使用交替的密集和局部稀疏注意力模式,类似于 稀疏矩阵(Sparse Transformer)。为了研究ML性能对模型大小的依赖关系,我们训练了8种不同大小的模型,从1.25亿个参数到1750亿个参数,范围超过三个数量级,最后一个是我们称之为GPT-3的模型。先前的工作表明,在足够的训练数据下,验证损失的缩放应该近似于一个平滑幂律(power law)作为规模的函数。许多不同规模的训练模型允许我们测试这个假设的验证损失(validation loss)和下游语言任务。”

计算基础定义的这种转变带来了巨大的机遇,也带来了巨大的风险。然而,我认为现在是时候接受这是一个很有可能的未来,并相应地发展我们的思想,而不是只是坐在这里等待流星撞击。

参考文献

[1] Berger, E. Coping with copilot. SIGPLAN PL Perspectives Blog, 2022; https://bit.ly/3XbJv5J

[2] Bostrom, N. Superintelligence: Paths, Dangers, Strategies. Oxford University Press, 2014.

[3] Brown, T. et al. Language models are few-shot learners. 2020; https://bit.ly/3Eh1DT5

[4] Kojima, T. et al. Large language models are zero-shot reasoners. 2022; https://bit.ly/3Ohmlqo

[5] Nye, M. et al. Show your work: Scratchpads for intermediate computation with language models. 2021; https://bit.ly/3TLnfMY

本文转自微信公众号“软件质量报道”,原标题为《编程的终结:经典计算机科学的末日即将来临》。

特 别 提 示

1. 进入『返朴』微信公众号底部菜单“精品专栏“,可查阅不同主题系列科普文章。

2. 『返朴』提供按月检索文章功能。关注公众号,回复四位数组成的年份+月份,如“1903”,可获取2019年3月的文章索引,以此类推。

相关阅读

  • 百度CTO王海峰:AI发展进入“深度学习+”阶段

  • 封面新闻记者 付文超1月10日,百度Create AI开发者大会举办。百度首席技术官王海峰表示,当前规模化的AI大生产已然形成,深度学习从技术、生态、产业等多个维度逐渐成熟,人工智能
  • 李彦宏:把软件的根扎深,才能让创新持续发生

  • 在人工智能时代,经济社会活动高度依赖数字基础设施。基础软件是推动信息技术发展的根本驱动力。回望过去的信息时代和移动互联网时代,蓬勃发展的关键节点都是开放的操作系统出
  • 127天!宁波“最强算脑”这样建成

  • 宁波又添一重磅数字基础设施!1月10日,宁波人工智能超算中心正式上线,为城市治理、产业升级、关键技术研发等提供强有力的算力支撑。这颗“最强算脑”的建成投用,也补上了宁波缺
  • 未来教育峰会—教育信息科学与技术年会在线召开

  • 中国教育报讯(记者 程墨 通讯员 党波涛 尚紫荆)近日,“未来教育峰会—教育信息科学与技术(F0701)2023年会”线上成功召开,会议聚焦智能教育主题,旨在探索教育科学研究的新理论、新
  • 首届全国矿山AI大模型大赛举办

  • 日前,由中国煤炭学会、中国矿业大学(北京)、华为技术有限公司联合举办的第一届全国煤炭行业矿山AI大模型大赛决赛暨颁奖典礼在京举行。首届矿山AI大模型大赛关注矿山一线生产的

热门文章

  • OPPO k1的低价高配真实么?网友:不看不知道

  • 近日OPPO一款新机OPPO k1,摒弃了高价低配,就连自家老大哥r17都要怼一下。更是放弃了请代言人,以往的OPPO手机还没出来,各路流量小生,花样美男的代言就先来了。还有线下销售人员的
  • 一招教你手机无限制成为一台新设备

  • 大家平时用手机去注册app,肯定会遇到检测设备异常,交易关闭,等问题 这个都是手机已经不止1-2次注册过此app,不断更换手机仅是一个暂时的方法,却不是长久之计,手机总归会用完
  • 从零开始如何开网店

  • 随着互联网的高速发展,人们的生活发生了翻天覆地的变化,生活节奏越来越快,网购已经成为家家户户生活中离不开的一种购物方式了。网购的发展使得越来越多的人想要涉足电商事业,那

最新文章

  • 泉州文物亮相中国国家博物馆

  • 泉州晚报社·泉州通客户端1月11日讯(东南早报记者张素萍 通讯员曾世彬 文/图)1月8日,“源·缘——闽台艺术展”在中国国家博物馆展出,泉州市博物馆馆藏清代金门风狮爷大门陶灯座
  • 能防心肌炎?又一种药被抢购!

  • 继黄桃罐头、诺氟沙星、蒙脱石散后,辅酶Q10也遭抢购。 “现货不多,只有数十瓶,单瓶售价在100元-400元左右。” 多位上海的药店工作人员坦言,辅酶Q10十分抢手。除了上海,北京市多
  • 定了!辽宁高速将有新变化!

  • 1月9日,辽宁省高速公路建设总指挥部召开扩大会议,总结去年全省高速公路建设情况,部署2023年工作任务。辽滨疏港高速公路。今年,辽宁将以构建高质量综合立体交通网为重点,进一步完