写点什么

BigBird 会是 NLP 的另一个重要里程碑吗?

2020 年 9 月 17 日

BigBird会是 NLP 的另一个重要里程碑吗?

本文最初发表在 Towards Data Science 博客,经原作者 Praveen Mishra 授权,InfoQ 中文站翻译并分享。


去年,Google 研究人员发布了 BERT,事实证明,这是继 RankBrain 之后效率最高、效果最好的算法改进之一。从初步的结果来看,BigBird 也显示出了类似的迹象。


基于 Transformer 的模型概述


在过去的几年中,自然语言处理取得了巨大的进步,基于 Transformer 的模型在其中扮演了重要的角色。尽管如此,仍然还有很多东西有待发掘。


Transformer 是 2017 年推出的一种自然语言处理模型,主要以提高处理和理解顺序数据的效率而闻名,比如文本翻译和摘要等任务。


与递归神经网络在输入结束之前处理输入的开始不同,Transformer 可以做到并行处理输入,因此,计算的复杂性大大降低了。


BERT 是自然语言处理最大的里程碑式的成就之一,是一个基于 Transformer 的开源模型。2018 年 10 月 11 日,Google 研究人员发表了一篇介绍 BERT 的论文,就像 BigBird 一样。


BERT(BidirectionalEncoderRepresentations fromTransformers,代表 Transformer 的双向编码器表示)是一种先进的、基于 Transformer 的模型。它是在大量数据(预训练数据集)上进行预训练的,BERT-Large 训练了超过 25 亿个单词。


话虽如此,但由于 BERT 是开源的,任何人都可以创建自己的问答系统。这也是 BERT 广受欢迎的原因之一。


但 BERT 并不是唯一的上下文预训练模型。然而,与其他模型不同的是,它是深度双向的。这也是其取得成功和多样化应用的原因之一。



这种预训练模型的结果确实令人印象深刻。它已成功应用于许多基于序列的任务,如摘要、翻译等。甚至连 Google 也采用了 BERT 来理解用户的搜索查询。


但是,就像其他基于 Transformer 的模型一样,BERT 也有它自己的局限性。


以前基于 Transformer 的模型的局限性


虽然基于 Transformer 的模型,特别是 BERT,比起递归神经网络有很大的改进和效率提升,但它们仍然有也有一些局限性。


BERT 工作在一个完全的自注意力机制上。这就导致了每一个新的输入令牌的计算和内存需求的二次方的增长。最大的输入令牌长度一般为 512,这意味着这个模型不能用于更大的输入和大型文档摘要等任务。


这基本上意味着,在将大字符串应用为输入之前,必须将其拆分更小的段。这种内容碎片化也会导致上下文的严重丢失,从而使其应用程序受到限制。


那么,什么是 BigBird?它与 BERT 或其他基于 Transformer 的自然语言处理模型有什么不同呢?


BigBird 简介:用于更长序列的 Transformer


如前所述,BERT 和其他基于 Transformer 的自然语言处理模型的主要局限性之一是,它们运行在一个完全的自注意力机制上。


当 Google 研究人员在 arXiv 上发表了一篇题为《BigBird:用于更长序列的 Transformer》(Big Bird: Transformers for Longer Sequences)的论文后,情况发生了变化。


BigBird 是运行在稀疏注意力机制上的,允许它克服 BERT 的二次依赖性,同时又保持了完全注意力模型的属性。研究人员还提供了 BigBird 支持的网络模型如何超越以前的自然语言处理模型以及基因组学任务的性能水平的实例。



在我们开始讨论 BigBird 的可能应用之前,先看看 BigBird 的主要亮点。


BigBird 的主要亮点


以下是 BigBird 的一些特性,这些特性使它比以前基于 Transformer 的模型更好。


  • 稀疏注意力机制


假设给你一张图片,并要求你为这张图片创建一个相关的标题。你将从识别图片中的关键对象开始,比如说,一个人在扔一个“球”。


对于我们人类来说,识别这个主要对象很容易,但是为计算机系统简化这一过程在自然语言处理中却是一件大事。注意力机制的引入降低了整个过程的复杂性。


BigBird 使用稀疏注意力机制,使其能够处理序列的长度比 BERT 可能的长度多 8 倍。请记住,使用与 BERT 相同的硬件配置就可以实现这一结果。


在 BigBird 的那篇论文中,研究人员展示了 BigBird 中使用的稀疏注意力机制是如何与完全自注意力机制(用于 BERT)一样强大的。除此之外,他们还展示了“稀疏编码器是如何做到图灵完备的”。


简单地说,BigBird 使用稀疏注意力机制,这意味着注意力机制是逐个令牌应用的,而不是像 BERT 那样,注意力机制只对整个输入进行一次应用!


  • 可以处理多达 8 倍长的输入序列


BigBird 的主要特点之一是它能够处理比以前长 8 倍的序列。


研究小组设计 BigBird 是为了满足像 BERT 这样的全 Transformer 的所有要求。


利用 BigBird 及其稀疏注意力机制,研究小组将 BERT 的复杂度 降到 。这意味着原来限制为 512 个令牌的输入序列,现在可以增加到 4096 个令牌(8*512)。


BigBird 的研究人员之一 Philip Pham 在一次Hacker News 讨论中表示:“在我们大部分论文中,我们使用的是 4096,但我们可以使用更大的 16K 以上。


  • 针对大数据集进行预训练



Google 研究人员在 BigBird 的预训练中使用了 4 种不同的数据集:Natural QuestionsTrivia-QAHotpotQA-distractorWikiHop


虽然 BigBird 的预训练集远不如 GPT-3(训练参数为 1750 亿个参数)大,但研究论文中的表 3 显示,它比 RoBERTa 和 Longformer 的性能更好。RoBERTa 是一种稳健优化的 BERT 预训练方法,Longformer 是一种用于长文档的类 BERT 模型。


一位用户请求 Philip Pham将 GPT-3 与 BigBird 进行比较时,他说:“GPT-3 只是用了 2048 的序列长度。BigBird 只是一种注意力机制,实际上可能是对 GPT-3 的补充。


BigBird 的潜在应用


最近,介绍 BigBird 的论文于 2020 年 7 月 28 日才发表,因此,BigBird 的全部潜力还有待确定。


但这里有几个潜在应用的领域。BigBird 的作者在原始研究论文中也提出了其中的一些应用。


  • 基因组学处理


深度学习在基因组学数据处理中的应用越来越多。编码器将 DNA 序列的片段作为输入,用于诸如甲基化分析、预测非编码变体的功能效应等任务。


BigBird 的作者称:“我们引入了一种基于注意力的模型的新应用,在这种模型中,长下文是有益的:提取基因组序列(如 DNA)的上下文表示。


在使用 BigBird 进行启动子区域预测(Promoter Region Prediction)后,论文声称最终结果的正确率提高了 5%!


  • 长文档摘要与问答系统


由于 BigBird 现在可以处理多大 8 倍长的序列长度,它可以用于自然语言处理任务,如更长的文档格式的摘要和问答系统。在创建 BigBird 的过程中,研究人员还测试了它在这些任务中的性能,并见证了“最先进的结果”。


  • BigBird 用于 Google Search


Google 从 2019 年 10 月开始利用 BERT来理解搜索查询,并为用户显示更多的相关结果。Google 更新搜索算法的最终目的是比以前更好地理解搜索查询。


由于 BigBird 在自然语言处理方面的表现优于 BERT,所以使用这个新建立的、更有效的模型来优化 Google 的搜索结果查询是有意义的。


  • Web 和移动应用程序开发


自然语言处理在过去十年中取得了长足的进步。有了一个 GPT-3 驱动的平台,你可以将简单语句转化为可运行的 Web 应用程序(连同代码),人工智能开发者可以真正改变你开发 Web 和 Web 应用程序的方式。


由于 BigBird 可以处理比 GPT-3 更长的输入序列,它可以与 GPT-3 一起使用,为你的企业高效、快速地创建Web 和移动应用程序


结语


尽管 BigBird 还有很多有待探索的地方,但它绝对具有彻底改革自然语言处理的能力。你对 BigBird 及其对自然语言处理的未来的贡献有什么看法?


参考文献:


【1】 《BigBird:用于更长序列的 Transformer》(Big Bird: Transformers for Longer Sequences),Manzil Zaheer 及其团队,2020 年,arXiv


【2】 《BERT:用于语言理解的深度双向 Transformer 的预训练》(BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding),Jacob Devlin、Ming-Wei Chang、Kenton Lee、Kristina Toutanova,arXiv


作者介绍:


Praveen Mishra,技术爱好者,具有创造内容的天赋。热衷帮助企业实现目标。


原文链接:


https://towardsdatascience.com/understanding-bigbird-is-it-another-big-milestone-in-nlp-e7546b2c9643


2020 年 9 月 17 日 17:16798
用户头像
刘燕 InfoQ记者

发布了 484 篇内容, 共 150.5 次阅读, 收获喜欢 870 次。

关注

评论

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

不想做经理的程序员

escray

学习 面试 面试现场

融云 X- Meetup 技术沙龙广州站:全球通信云技术实践分享

InfoQ_967a83c6d0d7

week 11

Geek_2e7dd7

完了,这个硬件成精了,它竟然绕过了 CPU

简爱W

大数据技术思想入门(四):分布式文件的元数据是怎么存储的

抖码算法

Java 大数据 hadoop 分布式

Postman生成接口文档

书旅

Postman 接口文档

Redis 之父关于 CRC64 的神秘往事!

yes的练级攻略

redis CRC

Docker搭建项目环境实战

书旅

Docker Dockerfile Docker-compose

你可能不知道的计算机基础

书旅

c 常量 计算机 基础

Flink水位线和时间戳理解-7

小知识点

scala 大数据 flink 模块化流程

POI 之 策略游戏

zhoo299

随笔杂谈

请不要随便修改基类

架构师修行之路

SQL查询语句执行顺序详解

书旅

MySQL SQL语法 sql查询

week 11学习总结

Geek_2e7dd7

让理性思维走进我们的生活,帮助我们做出更好的决策。

叶小鍵

心理学 基思. 斯坦诺维奇 超越智商 认知科学

Spring Boot 集成 Sharding-JDBC + Mybatis-Plus 实现分库分表

简爱W

十一周作业

olderwei

极客大学架构师训练营

前端分页组件实现逻辑

书旅

php 前端 分页

图解javascript——基础篇(以思维导图总结js中关键技术点,为面试及工作助力)

执鸢者

Java 前端

揭晓{大发正规平台邀请码}12812888

InfoQ_95ab3e73a57e

数据库是咋工作的?

简爱W

战斗还是逃避,或许可以考虑一下合作?

escray

学习 面试 面试现场

Netty之旅二:口口相传的高性能Netty到底是什么?

一枝花算不算浪漫

【解Bug之路】——Nginx 502 Bad Gateway

简爱W

你可能需要一个脱机状态

非著名程序员

学习 程序员 个人成长 工作方式

「零代码」搭建简易招聘管理系统

Tony Wu

效率工具 SaaS 招聘管理 HRIS

Docker 最常用的镜像命令和容器命令

哈喽沃德先生

Docker 容器 微服务 容器技术 容器化

介绍一款API敏捷开发工具

棒锤🐮

敏捷开发 Rocket API API敏捷开发

一个快捷方便的油煎鸡胸肉,懒人标配香喷喷好吃看得见

小霸王其乐无穷

美食 鸡胸肉 懒人

动态修改logback的日志级别

华宇法律科技

Java springboot logback

LeetCode题解:26. 删除排序数组中的重复项,双指针,JavaScript,详细注释

Lee Chen

LeetCode 前端进阶训练营

飞猪Flutter技术演进及业务改造的实践与思考

飞猪Flutter技术演进及业务改造的实践与思考

BigBird会是 NLP 的另一个重要里程碑吗?-InfoQ