写点什么

展望 AI 的未来,GPT-3 驱动的第一批应用程序已兴起

  • 2020-09-25
  • 本文字数:5290 字

    阅读完需:约 17 分钟

展望AI的未来,GPT-3驱动的第一批应用程序已兴起

本文要点


  • GPT-3 是目前已训练的最大的语言模型。

  • GPT-3 的基本操作模式是根据输入的文本生成文本响应。例如回答问题或根据标题撰写论文。

  • OpenAI 现在提供了一个开发者 API,可以与 GPT-3 进行交互并能在它上面构建应用程序。

  • GPT-3 是一个小样本学习者。它需要用一些示例来启动,以在特定的上下文中工作。

  • 一旦正确启动,GPT-3 就可以执行数学计算并用编程语言生成答案,尽管它还没有显式地学习过这两种语言。


由 GPT-3 驱动的第一批应用程序震惊了“开发人员的 Twitter”。它们提供了人工智能(AI)未来的惊鸿一瞥。


GPT-3(Generative Pre-training Transformer-3)是 OpenAI 最新也是最出色的自然语言预测模型。简而言之,对于任何输入文本,它都能生成文本来响应。它是一个能对问题或陈述作出回应的程序。


GPT-3 预先训练了大量来自互联网的自然语言文本(45TB 的训练文本,有 4990 亿个单词)。在 GPU 上进行训练至少要花费460万美元(有些估计要高达1200万美元)。结果模型有 1750 亿个参数。


InfoQ早在6月份就报道过OpenAI的GPT-3发布。它比之前任何语言的 AI 模型都要大 100 倍。在官方的GPT-3研究中,OpenAI 团队演示了 GPT-3 在不需要进行任何微调的情况下就能够实现开箱即用的最先进的效果。但它在现实世界中是如何运作的呢?它只是另一个玩具,还是对人类的一个严重威胁?在它初始版本发布一个月后,由 GPT-3 驱动的第一批应用程序正在涌现。现在我们可以亲自看到:


我们认为大多数开发人员完全可以使用 GPT-3 非常快速地构建项目。

——Yash DaniGeorge Saad


在本文中,我们采访了许多这样的创建者和企业家,并回顾了其中的一些应用程序。开发人员和记者都用“令人震惊”和“令人振奋”这样的词来描述 GPT-3 的好。

它的工作原理

GPT-3 模型一次只生成一个单词的文本。作为一个假设性的示例,我们假设开发人员将以下单词作为输入。


“生命、宇宙和万物终极问题的答案是”


AI 模型可以生成单词“40”作为响应。然后,开发人员将生成的单词附加到输入中,并再次运行模型。


“生命、宇宙和万物终极问题的答案是 40”


这次,AI 模型可以生成单词“2”作为响应。再重复一次,下一个答案应该是句号,这样就完成了一个句子。


“生命、宇宙、万物问题的终极答案是 42。”


GPT-3 之所以能够做到这一点,是因为它在训练中多次从文本中看到这种特殊的流行文化参考。因此,它的神经网络能够以很高的统计确定性来猜测“下一个单词”。


然而,在自然语言中,预测并不总是那么明确。输入后的单词通常取决于上下文。这就是 GPT-3 作为小样本学习者(Few-shot Learner)的优势所在。小样本学习就是先给 GPT-3 举几个例子,然后让它做出预测。这使用户可以为 AI 模型提供语言环境,并大大提高准确性。图 1 展示了零样本(zero-shot)、单样本(one-shot)和小样本(few-shot)学习的示例,这些示例可以启动 AI 模型生成外语翻译。



图 1 AI 翻译的三种学习方式。图片引自语言模型是小样本学习者的图 2.1


小样本学习与婴儿学习语言的方式非常相似。学习者从语言示例中学习,而不是从语法规则中学习。正如我们将要看到的,通过使用不同的示例来启动 GPT-3,开发人员可以创建出差异非常大的应用程序。


Jay Alammar 写了一篇很棒的文章,通过视觉动画展示了GPT-3的工作原理。点击查看更多信息。

它通过图灵测试了吗?

对于语言 AI,人们首先要问的一个问题是:它是否能够通过图灵测试,让人们误以为它是一个人?有些人认为 GPT-3 已经可以误导人类了。图 2 展示了一篇 GPT-3 生成的论文。根据 GPT-3 小组的说法,只有不到 12%的人能分辨出它是由机器撰写的。



图 2 一篇由 GPT-3 撰写的原创文章。图片引自语言模型是小样本学习者的图 3.14


只需列举几个示例,GPT-3 就可以模仿名人的写作风格。“向任何人学习”项目允许用户选择一个名人,然后提供一个主题。以这个人已知的著作来启动 GPT-3,然后使用主题文本作为输入。它会返回一篇由 GPT-3 生成的 200 字的文章。结果不言而喻。一条推文展示了怎样轻松地冒充埃隆·马斯克(Elon Muck)谈论火箭。现在想象一下托马斯·杰斐逊(Thomas Jefferson)对火星探测的评论!或者生成一句关于 COVID-19 和戴口罩的 Fauci 博士的名言。在 GPT-3 时代,我们还能相信互联网上的任何东西吗?我们将在本文的后面再回来讨论这一点。


当然,除了名人,GPT-3 还可以模仿任何人!开发人员 Ravi Vadrevu 创建了一个服务来为任何用户编写商业电子邮件摘要。该应用程序使用用户过去的电子邮件来启动 GPT-3。通过输入特定的意图,例如招聘、网络或销售,GPT-3 会代表用户编写电子邮件。像这样的服务就是赌 GPT-3 能通过图灵测试。

翻译和律师

在 GPT-3 学习的 4990 亿个单词中,有些不是英语。通过将单词与语境相关联,GPT-3 似乎可以进行翻译(另请参见图 1)。在 GPT-3 的论文中,作者举例说明了如何使用 GPT-3 进行英语到法语和西班牙语翻译。


通过语境来理解英语单词的能力能带来很多有趣的可能性。例如,Revtheo是一个基于 GPT-3 的词典,它可以根据语境为用户提供单词的含义。


但是,对于 GPT-3 而言,也许更有趣的是基于段落进行英语到英语的“翻译”!也就是说,重新措辞一段英文文本,使之更简单或更严谨。法律技术企业家 Francis Jervis 让 GPT-3“像律师一样写作”,让其将日常英语语句翻译成法律术语。结果是很有希望的。显然,很难从表面上衡量机器生成的法律语言的价值,但即使是法律专家也指出,GPT-3 可以作为律师的助手,提高律师的工作效率。另一方面,投资者 Michael Tefula 要求 GPT-3 将复杂的法律术语翻译成简单的英语。在这两种情况下,只需要 2-3 个示例即可启动 GPT-3。结果虽然并不完美,但也相当接近了。请记住,GPT-3 从未接受过法律术语的训练。只是列举几个简单的例子,它就能启动了。

会计和设计师

在 GPT-3 的论文中,一个有趣的发现是 AI 从语言中“学习数学”的能力。从未教过 AI 基本的数据结构和定理。然而,它可以生成数学问题的正确答案。对于简单的两个数相加,GPT-3 的准确性几乎能达到 100%,尽管它从未了解过这两个数的含义。图 3 展示了 GPT-3 论文中的一些示例。



图 3. GPT-3 进行数学运算。图片引自语言模型是小样本学习者的图 G.42 到 G.48


将这种数学能力与 GPT-3 在训练过程中看到了大量的结构化数据这一事实相结合,似乎可以让 AI 用结构化的数据输出(如 JSON 或 XML)来响应英语输入。


开发人员 Yash Dani 和 George Saad 用了八个示例来启动 GPT-3,以将事务的英文描述转换为 Python 数据对象。以下是他们训练数据的一个示例。


  • 输入:我额外买了一个价值 1200 美元的货物,我立即支付。

  • 输出:[[“添加”,1200,“货物”],[“删除”,1200,“现金”]]


然后,他们编写了一个 Python 程序来处理这个对象,并将其内容插入到 Excel 电子表格中。其结果是一个自动化的会计,他可以根据交易的任意描述来更新财务报表。


如果我们可以使用自然语言来操作和编辑 Excel 文件,也许我们也可以对 PowerPoint 做同样的事情?果不其然,这是 Twitter 用户nutanc制作PowerPoint演示


开发人员 Jordan Singer 也采用了类似的方法构建了一个Figma插件。这个插件允许用户用英语描述用户界面(UI),使用 GPT-3 生成 UI 的结构化 JSON 表示,然后使用计算机程序在 Figma 中呈现 JSON 内容。了解更多有关Jordan开发经验的信息


在这些示例中,GPT-3 输出结构化的数据,然后由另一个计算机程序对其进行处理以完成任务。这似乎是一种非常有前途的自然语言 AI 应用模式。

no-code 程序员

如果 GPT-3 能够生成计算机程序所使用的结构化数据,那么它也许可以再进一步,直接生成计算机程序。这可能吗?答案似乎是肯定的!



一些开发人员告诉 InfoQ.com,这种启动在生成结构化输出时对 GPT-3 的表现至关重要。该系统仅需用正确的示例来启动即可。和其他深度神经网络一样,GPT-3 对人类来说基本上也是一个黑匣子。这使得我们很难拿出正确的示例来为它提供精确的输出。这是一个反复试验的过程,可能需要几天时间。


它需要通过一些示例来捕捉模式,一旦完成了,它就能像变魔法一样了。

——Tushar Khattar


开发 GPT-3 应用程序不是用传统的编程语言编写算法,而是要拿出自然语言示例来启动 AI。它需要一种新的无代码(no-code)技能,这将在软件开发中创造新的就业机会。


人为描述,AI 构建,人为调试。

——以太坊的创建者Vitalik Buterin


机器生成代码可能是一个有趣的(而且是有利可图的)未来研究领域。我们甚至可以有目的地构建生成输出编程语言的 AI 系统,比如 Facebook Research 的TransCoder项目,它使用无监督学习将一种编程语言(例如 Python)翻译成另一种编程语言(例如 C++)。

我们可以理解的 AI

尽管打着 OpenAI 的名号,但 GPT-3 既不是开源的,也不是开放访问的。它为开发人员提供了一个简单的 Web 服务 API 来启动模型,然后发送文本以获得响应。API 很简单,但目前有一个等待列表。


到目前为止,一切都很惊人。能够看到 GPT-3 学习的速度是多么不可思议。API 再简单不过了,只需一个与之交互的核心端点。文本输入、文本输出的想法允许你做任何你可以想到的事情。

——Jordan Singer


GPT-3 访问障碍是刻意设置的。正如我们所看到的那样,GPT-3 是一款功能强大的软件。然而,由于它是一个黑匣子,我们无法轻易预测或控制它生成的文本。正如我们所讨论的那样,为精确的输出做启动主要是一个反复试验的过程。鉴于互联网上存在大量的种族主义、女性歧视和其他仇恨内容,因此在 GPT-3 4990 亿个单词的训练数据中,无监督的 GPT-3 可能会产生带有偏见或伤害性的文本。例如,试想一下 GPT-3 可能会产生的那种听起来很有说服力的假新闻。


开发者社区必须使用功能强大的 AI 系统来对此作出响应。这可能需要我们对语言模型的工作原理 有更深入的理解,而不是仅仅列出禁止使用的单词列表。


当 AI 做出或说出政治上不正确的话时,人们就会很生气。如果很难阻止它们得出这样的结论,而解决这个问题最简单的方法就是教它们隐藏自己的想法,那该怎么办?开始教授 AI,这似乎是一个可怕的技能。

——Paul Graham在 Twitter 上说


虽然 AI 黑匣子里的推理对人类来说很难理解,更不用说解释和控制了,但 AI 能向我们解释自己吗?软件开发人员 Daniel Bigham 要求 GPT-3 纠正英语句子中的语法错误,并提出纠正原因。结果相当令人惊讶,因为 GPT-3 从未被显式地教授过语法规则。它从示例中得到了理解。这里有一个例子。这是迈向 AI 可解释性的微小但又诱人的一步!


  • 输入:Its time to get cracking!

  • 输出纠正: It’s time to get cracking!

  • 输出说明:应该用缩略语 it’s 而不是所有格 its。


我们希望开发人员将继续为 GPT-3 的创建和解释提供更多的可能性!

黑匣子

尽管 GPT-3 已经表现出了巨大的希望,但它仍然存在一些长期困扰神经网络 AI 的问题。具体来说,它在某些任务上表现得非常好,而在其他常识性任务上却惨败。AI 真的理解赋予它的任务吗?


在哲学层面上,这可能并不重要。毕竟,AI 可以进行数学、翻译和语法检查。AI 从来没有被教过数学和语法的概念,这有关系吗?GPT-3 能够推导和应用数学和语法规则。但是,对于构建 GPT-3 应用程序的开发人员来说,不了解 AI“知识”的边界是很麻烦的,因为需要关注 AI 无法处理的情况。


本文展示了一些令人印象深刻的 GPT-3 应用程序示例。但是开发人员也告诉 InfoQ,为了生成这些结果,需要仔细地“启动”系统。所以,从某种意义上说,这些结果是精心挑选的。更糟糕的是,由于 GPT-3 是一个黑匣子,开发人员很难理解为什么某些启动可以工作而其他方法却失败了。如前一节所述,在 GPT-3 被广泛采用之前,可解释性可能是其最重要的限制之一。

一应俱全的 AI

GPT-3 证明了AI的表现随着模型规模的增长呈指数增长的关系。不断增长的模型规模将产生更强大更精确的 AI。这是我们这个时代的摩尔定律吗?


深度学习的先驱 Geoffrey Hinton 博士对 GPT-3 进行了推断,并开玩笑说,一个能够回答宇宙终极问题的 AI 需要的不是 42 个参数,而是 4.2 万亿个参数。这仅仅是 GPT-3 的 25 倍。


将 GPT3 的出色表现外推到未来,则表明:生命、宇宙和万物的答案只有 4.398 万亿个参数。

——Geoffrey Hinton在 Twitter 上说


现在回想一下我们在本文开头提出的假设性问题。答案是 4.398 万亿,现在已经在互联网上了,并且它将成为 GPT-4 训练数据的一部分。那么 GPT-4 将如何回答宇宙的终极问题呢?


免责声明:本文是由 Vivian Hu 撰写的,一个活生生的人。不是由 GPT-3 编写的。


作者简介:


Vivian Hu 是一名亚洲的开源爱好者和 Developer Advocate。她是 Second State 的产品经理。她非常关心通过更好的工具、文档和教程来提高开发人员的体验和生产力。Vivian 在WebAssembly Today上为 WebAssembly、Rust 和 Serverless 撰写每周新闻。


原文链接:


https://www.infoq.com/articles/gpt3-enabled-applications/


2020-09-25 13:213039

评论

发布
暂无评论
发现更多内容

leetcode 513. Find Bottom Left Tree Value 找树左下角的值 (简单)

okokabcd

LeetCode 数据结构与算法

数据价值平台化输出:数据服务平台

Taylor

数据中台 接口管理 API接口管理 数据服务 数据服务平台

基于边缘计算的渲染新应用

火山引擎边缘云

边缘计算 渲染 边缘云 渲染性能 渲染服务

字符串哈希

留白的艺术

第56届世乒赛团体赛开幕!三思近900㎡ LED显示点燃赛事激情

电子信息发烧客

(WebFlux)004、WebFilter踩坑记录

编号94530

Spring Boot WebFlux Reactor3 WebFilter

还在为产品的客户服务而烦恼?来搭建在线客服中心!

Baklib

面试官问我 JS 中 foreach 能不能跳出循环

茶无味的一天

JavaScript js foreach for

OptaPlanner场景和示例

成长兔🐇

【译】日志:每个软件工程师都应该了解实时数据的统一抽象【三】

Rae

kafka 日志 原理

大数据开发应用场景解读

Jackchang234987

大数据 数据开发

新品速递|海泰边缘安全网关护航工控数据采集

电子信息发烧客

Spring Security 在 Servlet 的作用区域

HoneyMoose

「产品运营」研发效能之DevOps平台如何运营?

laofo

DevOps cicd 研发效能 持续交付 工程效率

分享|破世界纪录的OceanBase,如今入选了国际顶会VLDB 2022

OceanBase 数据库

葡萄城受邀参加WOT全球技术创新大会

葡萄城技术团队

好的代码是优质资产、莫让代码成为负债

葡萄城技术团队

给你一本武林秘籍,和KeeWiDB一起登顶高性能

腾讯云数据库

redis 腾讯云 NoSQL 数据库 腾讯云数据库 KeeWiDB

微信架构图

Johnny

#架构实战营

Java中的悲观锁和乐观锁是什么意思?其分类依据是啥?

wljslmz

Java 乐观锁 悲观锁 9月月更

Python之简易计算器的制作

芯动大师

Python 9月月更 简易计算器

GPU是AI时代的算力核心

Finovy Cloud

人工智能 云渲染

Databricks Data Science&Engineering模块介绍

Jackchang234987

大数据 数据产品经理 数据产品 大数据开发 Databricks

工业4.0时代IIoT存储面临哪些挑战

CnosDB

IoT 时序数据库 开源社区 CnosDB infra

2022-09-30:以下go语言代码输出什么?A: true true false true false; B: true false false true false; C: true true

福大大架构师每日一题

zookeeper集群之间如何通讯

浅羽技术

zookeeper 通信 集群 ZooKeeper原理 9月月更

打破线上社交“不可能三角”,语音社交可以做到既要、又要、还要

擎声科技

音视频 sdk 语音社交 实时互动 擎声Qtt

无线网络安全技术中的王牌标准:WPA到底是个什么东东?解决了什么问题?

wljslmz

网络安全 无线技术 9月月更 WAP

还不知道产品帮助中心怎样制作?,来看看这个吧

Baklib

产品的帮助中心怎么建设?关于编辑帮助文档的几个小技巧~

Baklib

Python之斐波那契数列的实现

芯动大师

Python 9月月更 斐波那契数列

展望AI的未来,GPT-3驱动的第一批应用程序已兴起_AI&大模型_Vivian Hu_InfoQ精选文章