DeFINE:用于神经序列建模的深度分解输入令牌嵌入

一、说明

DeFINE,是华盛顿大学和艾伦人工智能开发的自然语言处理工具,可以处理的范围是:NLP、语言模型、LM、神经机器翻译、NMT、变压器、变压器-XL等;本文对token-bedding进行生成。

        借助DeFINETransformer-XL可以在低n维空间而不是高m维空间中学习输入(嵌入)和输出(分类)表示,从而显着减少参数,同时对性能的影响最小。

        DeFINE:用于神经序列建模的深度分解输入令牌嵌入

  • 提出了一种具有新型跳跃连接的分层结构,允许使用低维输入和输出层减少总参数和训练时间,同时提供与现有方法相似或更好的性能。
  • DeFINE可以很容易地整合到新的或现有的序列模型中。

二、分层组转换(HGT)

        使用N = 3的不同转换层学习令牌表示。(a) 线性变换 (b) 组线性变换 (GLT) (c) HGT

2.1. 动机和整体想法

  • 大多数NLP研究使用浅层网络来学习令牌嵌入的良好近似。
  • DeFINE,一种在高维空间中学习深度令牌表示的有效方法,只需最少的附加参数。
  • 该方法基于Map-Expand-Reduce(MER)原理,首先将输入令牌映射到低维嵌入向量,然后使用计算高效的分层组变换(HGT)将其转换为高维空间
  • 然后将生成的向量转换为低维空间。
  • 通过使用在输入层和输出层之间建立直接链接的新连接模式,促进要素重用改进梯度流。

2.2. 映射-扩展-缩减 (MER)

  • MER的第一步,Map,类似于标准序列模型。 词汇表V中的每个输入标记都映射到大小为n×1的固定维度向量ei然而,在本文中,n的值很小(比如64或128,而典型的尺寸为400或更大)。
  • 下一步 Expand,将 ei 作为输入应用分层群变换 (HGT) 来生成大小为 k×1 的非常高维向量 ^ei,其中 k>>n
  • 最后一步Reduce将向量^ei投影到较低维空间,以生成给定输入令牌大小m×1的最终嵌入向量eo
  • eo的尺寸可以与上下文表示模型(例如LSTM或变压器)相匹配,从而使DeFINE可以作为这些模型的输入层。

2.3. 分层组转换 (HGT)

  • HGT由N层的堆栈组成。
  • HGT 从第一层的 gmax 组开始然后在每个级别将组数减少 2 倍。
  • 群线性变换(GLT)最初是为了提高LSTM的效率而引入的,也稀疏了全连接层中的连接,如上所示。然而,某个组的输出仅来自输入的一小部分,因此学习弱表示
  • 形式上,在 HGT 中,第 l 层从 ei 到 ^ei 的转换为:

  • 哪里:

  • Wl 是在第 l 层学习的权重FG 群变换函数
  • 组变换将输入拆分为 g 组,每个组都使用线性变换独立处理。然后将这些组的输出连接起来以产生最终输出

.  DeFINE的单元

        N = 2 的 DeFINE 单元,它使用 HGT 有效地学习输入令牌表示,并与输入直接连接以最大化信息流。

  • DeFINE单元由HGT变换组成。
  • 使用一个简单的新跳过连接,在 HGT 中的任何层与输入 ei 之间建立直接链接,如上所述。
  • 输入和输出使用拆分层块到 gl 组中。然后混合分块的输入和输出向量

此机制可有效地促进输入要素重用。此外,它还与输入 ei 建立直接链接,允许梯度通过多条路径回流到输入,从而提高性能。

  • 输入令牌和 DeFINE 单元 (eo) 输出之间的映射可以使用查找表进行缓存,从而产生一种允许在推理时跳过 DeFINE 单元计算的机制。

堆叠转换层 FG(第 A.1 节)的不同方法,用于学习深度令牌表示。

  • 此图总结了具有不同设置的不同体系结构

四、 结果

4.1. LSTM 模型

基于RNN的语言模型在WT-103和PTB数据集上的性能。

  • (a):所提出的方法进一步提高了约3分的性能,同时只学习了1.25%(或0万个)的参数

(b):DeFINE的深度从3层缩放到11层。性能进一步提高了 6 个百分点,为具有更少参数的现有基于 RNN 的方法提供了有竞争力的性能(例如,参数是 Merity 等人 (1a) 的 3/2018)。

  • (c):所提出的方法将AWD-LSTM的性能提高了4个百分点,同时减少了4万个参数。

4.2. 变压器模型

Transformer-XL在Wikitext-103数据集上的性能。DeFINE 用于 N = 3、k = 4096 和 m = 384。

  • 所提出的方法能够获得与Dai等人(2019)相似的性能,同时学习的参数减少了10M

带有DeFINE的变压器XL能够实现与具有投影嵌入的标准变压器-XL相当的困惑度,同时使用的参数明显更少。

4.3. 机器翻译

基于变压器的模型(有和没有DeFINE)在神经机器翻译任务上的结果

不同因子分解方法的不同序列模型的性能比较。 对于语言建模,性能是通过困惑来衡量的;对于机器翻译,使用 BLEU。

  • OpenNMT用于变压器模型训练。

DeFINE将无检查点平均值的变压器模型的性能提高了2%,同时将参数总数减少了26%,这表明DeFINE是有效的。

4.4. 进一步分析和消融

Transformer-XL中使用的不同嵌入层的相关图(m×m),在WikiText-128上n = 384和m = 103。

DeFINE能够有效地近似标准嵌入矩阵

Transformer-XL使用 不同分解方法的性能,有和没有Shu&Nakayama(2017)的压缩方法。

DeFINE 嵌入可以像标准嵌入一样压缩,而不会损失性能。

WikiText-103数据集上不同变换之间的比较。

左:HGT将困惑度提高了约5分,同时学习了与GLT相似数量的参数。

:此外,当使用直接连接时,性能进一步提高了 2.9 点。

缩放深度和宽度对WT-103的影响。

对于相同的 k 值,语言模型的性能随着深度 N 的增加而提高。但是,当我们缩放深度 N 的固定值的宽度 k 时,性能并没有提高。

WT-103上的不同设置:(a)不同跳跃连接的影响。(b) 减少市面汇率作业的影响

左图:提议的跳过连接更有效。

右:有和没有这个归约步骤的性能相似的,但是,没有归约步骤的模型会学习更多的参数

        作者认为,ELMo和BERT等预训练语言模型架构可以从整合DeFINE中受益,以提高效率和性能。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/103334.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

SHELL 基础 入门(三) Bash 快捷键 命令执行顺序,详解通配符

目录 Bash 常用快捷键 输入输出重定向 << 用法 输出重定向 命令执行顺序 ; 分号 && || 通配符 传统通配符 &#xff1f; * [ ] [ - ] [ ^ ] 常用字符 强调 &#xff1a; { } 生成序列 Bash 常用快捷键 Ctrl A 把光…

RabbitMQ 消费者

RabbitMQ的消费模式分两种&#xff1a;推模式和拉模式&#xff0c;推模式采用Basic.Consume进行消费&#xff0c;拉模式则是调用Basic.Get进行消费。   消费者通过订阅队列从RabbitMQ中获取消息进行消费&#xff0c;为避免消息丢失可采用消费确认机制 消费者 拉模式拉模式的实…

Delphi 中 interface 如何使用 (chatGPT回答)?

目录 1. 定义接口&#xff1a;可以使用interface关键字来定义一个接口。例如&#xff1a; 2. 实现接口&#xff1a;类可以实现一个或多个接口。要实现接口&#xff0c;需要在类声明中使用implements关键字&#xff0c;并提供对应接口的方法的实现。例如&#xff1a; 3. 使用…

科技资讯|苹果Apple Watch新专利,可根据服装、表带更换表盘颜色

根据美国商标和专利局&#xff08;USPTO&#xff09;公示的清单&#xff0c;苹果公司近日获得了一项 Apple Watch 相关的技术专利&#xff0c;最大的亮点在于配备颜色采样传感器&#xff0c;可以根据表带、服装自动变幻变盘颜色和主题。 Apple Watch 正面配备颜色采样传感器&am…

【LVS】2、部署LVS-DR群集

LVS-DR数据包的流向分析 1.客户端发送请求到负载均衡器&#xff0c;请求的数据报文到达内核空间&#xff1b; 2.负载均衡服务器和正式服务器在同一个网络中&#xff0c;数据通过二层数据链路层来传输&#xff1b; 3.内核空间判断数据包的目标IP是本机VIP&#xff0c;此时IP虚…

微服务中间件--分布式搜索ES

分布式搜索ES 11.分布式搜索 ESa.介绍ESb.IK分词器c.索引库操作 (类似于MYSQL的Table)d.查看、删除、修改 索引库e.文档操作 (类似MYSQL的数据)1) 添加文档2) 查看文档3) 删除文档4) 修改文档 f.RestClient操作索引库1) 创建索引库2) 删除索引库/判断索引库 g.RestClient操作文…

思维导图工具有哪些?如何挑选思维导图工具?10款好用工具推荐!

在我们的生活和工作中&#xff0c;思维导图是一种有效的工具&#xff0c;可以帮助我们更好地组织和理解信息&#xff0c;提高我们的学习和工作效率。当然&#xff0c;如何选择一款适合自己的思维导图工具也是一门学问。在这篇文章中&#xff0c;我将为大家介绍如何挑选一款适合…

UE4/5Niagara粒子特效之Niagara_Particles官方案例:1.1->1.4

目录 1.1-Simple Sprite Emitter ​编辑 发射器更新 粒子生成 粒子更新 1.2-Simple Sprite Emitter 发射器更新 粒子生成 粒子更新 渲染 1.3-Simple GPU Emitter 属性 发射器更新 粒子生成 粒子更新 1.4-Sprite Facing 发射器更新 粒子生成 粒子更新 通过对官方…

lwIP更新记10:IP 冲突检测

lwip-2.2.0-rc1 版本于 2023 年 6 月 29 日发布&#xff0c;带来了我期盼已久的 IPv4 冲突检测 功能。 lwip-2.2.0-rc1 版本重新回归了 master 分支&#xff08;主分支&#xff09;&#xff0c;不再使用单独的稳定分支。 master 分支 是一个 Git&#xff08;版本控制程序&…

el-table动态合并单元格

el-table使用这个方法合并单元格&#xff0c;:span-method“hbcell” <el-table size"small" :data"table.data" border empty-text"暂无数据" :cell-style"cellStyle" :header-cell-style"tableHeaderColor":span-meth…

Haproxy原理及部署

一、Haproxy简介 1、Haproxy应用分析 LVS在企业中康复在能力很强&#xff0c;但存在不足&#xff1a; LVS不支持正则处理&#xff0c;不能实现动静分离对于大型网站LVS的事实配置较为复杂&#xff0c;维护成本相对较高 Haproxy是一款可以供高可用性、负载均衡和基于TCP和HT…

OpenCV + CLion在windows环境下使用CMake编译, 出现Mutex相关的错误的解决办法

最近在windows下面用cmake编译OpenCV的项目代码,但是一直碰到找不到mutex的问题&#xff0c;百思不得其解, Executing task: g -g -o bin/debug.exe src/main.cppC:\MinGW\lib\opencv\build\include/opencv2/core/utility.hpp:697:14: error: recursive_mutex in namespace st…

ssl卸载原理

SSL卸载&#xff0c;也称为SSL解密&#xff0c;是一种将SSL加密数据流卸成非加密的明文数据流的过程。SSL卸载通常在负载均衡器、代理服务器、WAF等设备中实现&#xff0c;可以提高传输效率和安全性。 SSL卸载的原理是将SSL数据流拦截下来&#xff0c;通过设备内置的证书进行解…

图为科技-边缘计算在智慧医疗领域的作用

边缘计算在智慧医疗领域的作用 随着科技的进步&#xff0c;智慧医疗已成为医疗行业的重要发展趋势。边缘计算作为新兴技术&#xff0c;在智慧医疗领域发挥着越来越重要的作用。本文将介绍边缘计算在智慧医疗领域的应用及其优势&#xff0c;并探讨未来发展方向。 一、边缘计算…

androidstudio Please specify a signing configuration for this variant (release)

当直接运行release版本时&#xff0c;报错Error: The apk for your currently selected variant cannot be signed. Please specify a signing configuration for this variant (package64-release). 解决报错&#xff1a;添加签名&#xff0c;signingConfigs 写在buildTypes前…

知道吗?微软将Python集成到Excel中,国产软件“抄作业”了

Excel集成Python 众所周知哦&#xff0c;VBA是一种基于微软的Visual Basic语言的宏编程语言&#xff0c;专为在Office应用程序中执行自动化任务而设计。 VBA适用于Excel、Word、PowerPoint等Office套件中的宏编程&#xff0c;可直接操作和控制Office应用程序的对象模型。 我们…

appium2.0+ 单点触控和多点触控新的解决方案

在 appium2.0 之前&#xff0c;在移动端设备上的触屏操作&#xff0c;单手指触屏和多手指触屏分别是由 TouchAction 类&#xff0c;Multiaction 类实现的。 在 appium2.0 之后&#xff0c;这 2 个方法将会被舍弃。 "[Deprecated] TouchAction action is deprecated. Ple…

Docker 搭建 LNMP + Wordpress(详细步骤)

目录 一、项目模拟 1. 项目环境 2. 服务器环境 3.任务需求 二、Linux 系统基础镜像 三、Nginx 1. 建立工作目录 2. 编写 Dockerfile 脚本 3. 准备 nginx.conf 配置文件 4. 生成镜像 5. 创建自定义网络 6. 启动镜像容器 7. 验证 nginx 四、Mysql 1.…

无脑入门pytorch系列(五)—— nn.Dropout

本系列教程适用于没有任何pytorch的同学&#xff08;简单的python语法还是要的&#xff09;&#xff0c;从代码的表层出发挖掘代码的深层含义&#xff0c;理解具体的意思和内涵。pytorch的很多函数看着非常简单&#xff0c;但是其中包含了很多内容&#xff0c;不了解其中的意思…

PySide6学习笔记--gui小模版使用

一、界面绘制 1.desiner画图 2.画图代码 # -*- coding: utf-8 -*-################################################################################ ## Form generated from reading UI file t1gui.ui ## ## Created by: Qt User Interface Compiler version 6.5.2 ## ##…