写点什么

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

  • 2020-09-17
  • 本文字数:3203 字

    阅读完需:约 11 分钟

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-09-17 17:162748
用户头像
刘燕 InfoQ高级技术编辑

发布了 1123 篇内容, 共 609.0 次阅读, 收获喜欢 1982 次。

关注

评论

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

什么是策略模式?如何在Java项目中引入策略模式来优化代码结构

(-0 , +0)

SpringBoot整合MybatisPlus基础教程

(-0 , +0)

springboot Mybatis Plus

可逆计算:下一代软件构造理论

canonical

低代码 软件架构 函数式编程 领域驱动模型DDD 中台架构 低代码平台

支持GraalVM原生编译的开源低代码平台:Nop Platform

canonical

开源 低代码 GraalVM Quarkus 低代码平台

从张量积看低代码平台的设计

canonical

开源 低代码 架构设计 低代码平台 领域模型

数说热点|社恐人群运动健身指南:不想去健身房,那就在家找面墙

MobTech袤博科技

javaweb脚手架springboot基础入门

(-0 , +0)

宝兰德应用服务器软件与华为云GaussDB完成兼容互认证

华为云开发者联盟

数据库 后端 华为云 华为云开发者联盟 企业号 5 月 PK 榜

关于 ModelScope 的视频 “AI 换脸” 优化方案

北桥苏

Python ModelScope

再见!Fastjson!

Java你猿哥

Java ssm Fastjson

问鼎CodeXGLUE榜单,华为云UniXcoder-VESO-v1算法取得突破

华为云开发者联盟

人工智能 华为云 华为云开发者联盟 企业号 5 月 PK 榜

《银河护卫队3》观后感:AI、人生

无人之路

AI 电影

关于Tensorflow!目标检测预训练模型的迁移学习

北桥苏

Python 深度学习 tensorflow 目标检测

Java常见集合类型及其异同点,简单使用

(-0 , +0)

Java 集合

采用Excel作为设计器的开源中国式报表引擎:NopReport

canonical

开源 低代码 报表 BI 报表 中国式报表

led大屏幕存在的问题

Dylan

LED显示屏 全彩LED显示屏 led显示屏厂家

一图看懂CodeArts Deploy 5大特性,带你玩转部署服务

华为云开发者联盟

云计算 后端 华为云 华为云开发者联盟 企业号 5 月 PK 榜

如何用 ModelScope 实现 “AI 换脸” 视频

北桥苏

Python ModelScope

分类树,我从2s优化到0.1s

Java你猿哥

Java 算法 ssm 分类树

分库分表的 21 条法则,hold 住!

程序员小富

分库分表 springboot 分库表

中移链合约常用开发介绍(四)工程树目录

BSN研习社

从可逆计算看开源低代码平台Skyve的设计

canonical

开源 低代码 架构设计 低代码平台 扩展机制

简单聊聊MySQL索引优化的内容

(-0 , +0)

springboot整合redis基础示例

(-0 , +0)

一把王者的时间,带你吃透Java面试八股文(2023最新整理)

Java你猿哥

Java 面试 微服务 Spring Boot mybatis

eBPF动手实践系列二:构建基于纯C语言的eBPF项目

阿里云大数据AI技术

运维 C语言 ebpf 企业号 5 月 PK 榜

火山引擎DataTester:A/B实验平台数据集成技术分享

字节跳动数据平台

如何将训练好的Python模型给JavaScript使用?

北桥苏

Python tensorflow AI

火山引擎DataLeap数据调度实例的 DAG 优化方案 (一):问题与需求分析

字节跳动数据平台

数据平台 DAG DataLeap

Java中常见集合类核心源码阅读

(-0 , +0)

Java 源码 集合

如何在不修改基础产品源码的情况下实现定制化开发

canonical

开源 低代码 定制化 迭代增量开发 可扩展性

BigBird会是 NLP 的另一个重要里程碑吗?_AI&大模型_Praveen Mishra_InfoQ精选文章