论文阅读笔记- Language Modeling with Gated Convolutional Networks

前言

统计语言模型本质上是在给定前面若干个单词的条件下,通过概率建模来估计单词序列的概率分布,即:
P ( w 0 , . . . , W N ) = P ( w 0 ) ∏ i = 1 N P ( w i ∣ w 0 , . . . , w i − 1 ) P(w_0,...,W_N)=P(w_0)\prod_{i=1}^NP(w_i|w_0,...,w_{i-1}) P(w0,...,WN)=P(w0)i=1NP(wiw0,...,wi1)
比较典型的方法是N-gram语言模型,即当前位置只和前面N个位置的单词相关,但是这样也会带来问题即,N若小了,语言模型的表达能力不够,N若大了,遇到稀疏性问题时,无法有效的表征上下文。LSTM模型一般会将单词embedding到连续空间,然后输入进LSTM,从而有效的表征上下文,但LSTM的问题在于,作为递归模型,当前状态依赖于上一状态,并行化受到限制,导致运行速度非常慢。

既然RNNs很难通过硬件的并行化进行加速,那么自然而言会尝试使用卷积,卷积网络非常适合这种计算范式,因为所有输入词的计算可以同时进行。所以这篇文章吸收了LSTM的门控机制,将其应用在了卷积结构中,从而使得卷积模型保留非线性能力的同时,能够一定程度上减少梯度消失问题,而使其拥有更加深的结构。

结构细节

在这里插入图片描述
首先使用一个lookup table D ∣ v ∣ × e D^{|v|\times e} Dv×e 对输入序列进行embedding,其中 ∣ v ∣ |v| v 表示单词表中的单词数量, e e e 表示嵌入大小,每个单词 w i w_i wi 在词嵌入查找表中都能找到一个向量表示 E = D w i E=D_{w_i} E=Dwi,然后将序列表示E作为卷积层的输入,输入表示为 X X X
h l ( X ) = ( X ∗ W + b ) ⊗ σ ( X ∗ V + c ) h_l(X)=(X*W+b)\otimes \sigma(X*V+c) hl(X)=(XW+b)σ(XV+c)
其主要结构跟原始的CNN并无很大差异,只不过在卷积层引入了门控机制,将卷积层的输出变成了一个没有非线性函数的卷积层输出*经过sigmod非线性激活函数的卷积层输出。其中 W W W V V V 是不同的卷积核,卷积核宽度为 k k k,输出通道数为 n n n b b b c c c 是偏置参数。 σ ( X ∗ V + c ) \sigma(X*V+c) σ(XV+c) 这一部分就是所谓的门控机制GLU,它控制着哪些信息可以传入下一层,这也使得卷积模型可以进行堆叠,以捕获Long Term Memory。

当然,除了GLU,还有一种被称为LSTM-style的门控机制,即GTU:
h l ( X ) = t a n h ( X ∗ W + b ) ⊗ σ ( X ∗ V + c ) h_l(X)=tanh(X*W+b)\otimes \sigma(X*V+c) hl(X)=tanh(XW+b)σ(XV+c)
不过从梯度的角度对两种门控单元进行分析,会发现GTU理论上会衰减的比较快,因为其梯度公式中包含两个衰减项,而GLU只有一个衰减项,可以较好地减轻梯度弥散,如下:

  • GLU: ▽ [ X ⊗ σ ( X ) ] = ▽ X ⊗ σ ( X ) + X ⊗ σ ′ ( X ) ▽ X \triangledown[X\otimes \sigma(X)]=\triangledown X\otimes \sigma(X)+X\otimes\sigma^{'}(X)\triangledown X [Xσ(X)]=Xσ(X)+Xσ(X)X
  • GTU: ▽ [ t a n h ( X ) ⊗ σ ( X ) ] = t a n h ′ ( X ) ▽ X ⊗ σ ( X ) + σ ′ ( X ) ▽ X ⊗ t a n h ( X ) \triangledown[tanh(X)\otimes \sigma(X)]=tanh^{'}(X)\triangledown X\otimes \sigma(X)+\sigma^{'}(X)\triangledown X\otimes tanh(X) [tanh(X)σ(X)]=tanh(X)Xσ(X)+σ(X)Xtanh(X)

在模型预测时最简单的方法是使用一个 s o f t m a x softmax softmax 层进行预测,但对于词量大的词表来说,在计算上显然不够有效率,本文中采用 a d a p t i v e s o f t m a x adaptive softmax adaptivesoftmax ,其为高频词提供更高的容量,为低频词提供更低的容量。这在训练和测试时降低了内存需求以及提供了更快的计算速度。

在这里插入图片描述

实验结果

在这里插入图片描述
Tanh是GTU去掉输出门部分后的模型,将其和GTU比较研究门限影响和贡献,从实验中对比可以看到GLU取得了最优的结果,如下:
在这里插入图片描述

总结

这里有几个小细节:

  • 论文使用的是宽卷积

Specifically, we zero-pad the beginning of the sequence with k−1 elements, assuming the first input element is the beginning of sequence marker which we do not predict and k is the width of the kernel

  • 对于文本长度更大的数据集而言,论文使用了更深的网络结构以获取其Long-Term记忆。

本篇论文做出的贡献如下:

  • 提出一种基于线性门控单元(Gated Linear Units)的卷积网络并将其运用于语言建模。GLU在保持一定非线性能力的同时通过为梯度提供线性的传播路径使得在深度架构中能够有效减少“梯度消失”的问题。
  • 在GBW数据集上证明了该卷积网络性能优于其他语言模型:如LSTMs,并在段落数据集WikiText-103上验证了该模型处理长距离依赖(long-range depenencies)的能力。
  • 证明了GLU比LSTM-style门控具有更高的准确度和更快的收敛速度。

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

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

dvwa:文件包含、文件上传

文件包含 本地文件包含(敏感信息泄露)和远程文件包含(命令执行) 本地文件包含一般包含一些本地的敏感文件,如:/etc/passwd或/etc/shadow等 远程文件包含能使得服务器代码执行,如包含黑客vps的…

文心一言 VS 讯飞星火 VS chatgpt (365)-- 算法导论24.3 7题

七、给定带权重的有向图 G ( V , E ) G(V,E) G(V,E),其权重函数为 w : E → ( 1 , 2 , … , W ) w:E→(1,2,…,W) w:E→(1,2,…&…

2024年诺贝尔物理学奖 机器学习与神经网络领域前景面面观 如何抉择

近日,2024年诺贝尔物理学奖颁发给了机器学习与神经网络领域的研究者,这是历史上首次出现这样的情况。这项奖项原本只授予对自然现象和物质的物理学研究作出重大贡献的科学家,如今却将全球范围内对机器学习和神经网络的研究和开发作为了一种能…

基于微信小程序的家校联动平台管理系统的设计与实现(毕业论文)

目 录 第一章 绪论 1 1.1研究背景 1 1.1.1教育信息化的发展 1 1.1.2家校沟通的重要性 1 1.1.3微信小程序的优势 1 1.2国内外研究现状 1 1.2.1教育管理信息系统 1 1.2.2家校互动平台 1 1.2.3微信小程序在教育领域的应用 2 1.3本文的主要工作 2 1.3.1系统需求分析 2 1.3.2系统设计…

边缘智能(Edge Intelligence):智能计算的前沿

随着物联网(IoT)、5G网络和人工智能(AI)的快速发展,边缘智能(Edge Intelligence)作为一种新兴的技术理念,逐渐成为数字化时代的重要组成部分。边缘智能通过在靠近数据生成端&#xf…

正则表达式-“三剑客”(grep、sed、awk)

1.3正则表达式 正则表达式描述了一种字符串匹配的模式,可以用来检查一个串是否含有某种子串,将匹配的子串替换或者从某个串中取出符号某个条件的子串等,在linux中代表自定义的模式模版,linux工具可以用正则表达式过滤文本。Linux…

《网络安全自学教程》- Nmap使用及扫描原理分析

《网络安全自学教程》 Nmap(Network Mapper)是一款免费的开源网络扫描器,向目标主机发送特定的数据包,根据返回的流量特征,分析主机信息。主要功能有:「端口扫描」、「主机探测」、「服务识别」和「系统识别…

Linux之实战命令32:chroot应用实例(六十六)

简介: CSDN博客专家、《Android系统多媒体进阶实战》一书作者 新书发布:《Android系统多媒体进阶实战》🚀 优质专栏: Audio工程师进阶系列【原创干货持续更新中……】🚀 优质专栏: 多媒体系统工程师系列【…

字节跳动最新音乐生成模型Seed-Music

Seed-Music是一个由字节跳动研发的音乐生成模型,用户可以通过输入多模态数据(如文本描述、音频参考、乐谱、声音提示等)来生成音乐,并且提供了方便的后期编辑功能,比如修改歌词或旋律。 Seed-Music 结合了自回归语言模…

CentOS快速配置网络Docker快速部署

CentOS裸机Docker部署 1.联通外网 vi /etc/sysconfig/network-scripts/ifcfg-ens33systemctl restart networkip addrping www.baidu.com2.配置CentOS镜像源 参考文章 进入/etc/yum.repos.d目录下找到 CentOS-Base.repo cd /etc/yum.repos.dcp CentOS-Base.repo CentOS-B…

双向广搜 bfs进阶 open the lock——hdu1195

目录 前言 传统bfs 双向广搜 open the lock 问题描述 输入 输出 问题分析 状态转变 去重 单向搜索的bfs 双向广搜 结束条件 输出步数 前言 其实这题数据不算复杂,不用双向广搜也可以完成,仅仅是为了更直观展现双向广搜的编码方式。 传统bfs bfs向来都…

通用文件I/O模型之open

前面介绍了linux系统一切皆文件的概念,系统使用一套系统调用函数open()、read()、write()、close()等可以对所有文件执行I/O操作。应用程序发起的I/O请求,内核会将其转化为相应的文件系统操作,或者设备驱动程序操作。接下来我们一起了解一下o…

电磁兼容(EMC):整改案例(五)EFT测试,改初级Y电容

目录 1. 异常现象 2. 原因分析 3. 整改方案 4. 总结 1. 异常现象 某产品按GB/T 17626.4标准进行电快速瞬变脉冲群测试,测试条件为:频率5kHz/100kHz,测试电压L,N线间2kV。其中频率5kHz时,测试通过,但频…

在Centos中安装、配置与使用atop监控工具

目录 前言1. atop工具的安装1.1 atop简介1.2 atop的安装步骤 2. 安装并配置netatop模块2.1 安装内核开发包2.2 安装所需依赖2.3 下载netatop2.4 解压并安装netatop2.5 启动netatop 3. atop的配置与使用3.1 配置监控周期与日志保留时间3.2 设置定时任务生成日志3.3 启动与查看at…

【2024年最新】基于springboot+vue的垃圾分类网站lw+ppt

作者:计算机搬砖家 开发技术:SpringBoot、php、Python、小程序、SSM、Vue、MySQL、JSP、ElementUI等,“文末源码”。 专栏推荐:SpringBoot项目源码、Vue项目源码、SSM项目源码、微信小程序源码 精品专栏:Java精选实战项…

Facebook脸书投放目录guanggao(更适合独立站)操作步骤教学

Facebook guanggao是企业进行品牌推广、产品销售和营销转化的有效工具。在Facebook guanggao中创建目录可以帮助企业更好地展示产品,提高guanggao效果。以下是创建目录的详细步骤: 登录Facebook Business Manager(BM业务管理器)&a…

yolo 11从原理、创新点、训练到部署(yolov11代码+教程)

YOLO(You Only Look Once)系列模型以其高效的目标检测能力在计算机视觉领域取得了显著的成果。YOLOv11 作为 YOLO 系列的最新进展,进一步提升了模型的性能和实用性。本文将从 YOLOv11 的原理、创新点、训练到部署进行详细介绍,并附…

【写个本地的html】写个本地的html文件,做个demo,直接用浏览器打开

需求:需要给甲方发个html文件版本的demo,本地打开,如图所示 ui给了6张图片,写6个按钮点击更换背景图片 代码没写完,但是基础结构都有,供大家参考: 创建一个文件夹,用vscode打开,创建index.html index.html代码如下 <!DOCTYPE html> <html> <head&g…

【含开题报告+文档+PPT+源码】基于springBoot+vue超市仓库管理系统的设计与实现

开题报告 随着电子商务的快速发展和物流行业的日益壮大&#xff0c;超市仓库管理系统的重要性也日益凸显。传统的超市仓库管理方式存在许多问题&#xff0c;比如人工操作繁琐、数据统计不准确、管理效率低下等。因此&#xff0c;需要设计和实现一个高效、智能的超市仓库管理系…

Vite + Vue3 使用 cdn 引入依赖,并且把外部 css、js 文件内联引入

安装插件 pnpm i element-plus echarts axios lodash -S在 vite.config.js 引用 注意事项&#xff1a;element-plus 不能在 vite.config.js 中使用按需加载&#xff0c;需要在 main.js 中全局引入&#xff1b; import { resolve } from path import { defineConfig } from v…