ransformer是一种强大的序列模型,但是它所需的时间和内存会随着序列长度出现二阶增长。而OpenAI研究人员开发出了一种深度神经网络Sparse Transformer,该网络在预测长序列方面创造了新纪录——无论预测的是文本、图像还是声音。该神经网络利用注意力机制中的一种改进算法,可以从长度可能是之前30倍的序列中提取模式。


OpenAI提出的模型可以使用数百个层对数万个元素的序列进行建模,在多个域中实现最先进的性能。稀疏Transformer能够帮助我们构建具有更强的理解世界能力的AI系统。



Sparese Transformer 项目说明文档




一 、项目介绍


Transformer 中 Self-attention的计算时间和显存占用量都是 的(表示序列长度),随着序列长度的增加,计算时间和显存占用也都成二次方增长。因此当序列长度足够大时,计算时间和显存带来的问题也会很大。Sparse Transformer 引入了注意力矩阵的稀疏分解将计算时间和显存占用减小至,同时不会降低性能。


  • 项目所需环境:

  • 项目目录:

 


二、数据集介绍



三、算法原理


Sparse Transformer 主要介绍了strided attention和fixed attention,并与full attention进行了对比,结构如下:



四 、数据训练测试


训练结果如下:


©著作权归作者所有:来自51CTO博客作者mb5fd86d5f5874e的原创作品,如需转载,请注明出处,否则将追究法律责任

更多相关文章

  1. 协整分析和误差修正操作步骤, 程序和各种检验, 附上代码并通过示
  2. ARIMA时间序列模型的步骤, 程序和各种检验, 附上代码并通过示例
  3. ARCH及其扩展模型的操作步骤, 程序和各种检验, 附上代码并通过示
  4. Json序列化在golang中的应用
  5. 时间序列异常检测机制的研究
  6. Python将一个数逆序列放入列表中
  7. leetcode331 验证二叉树的前序序列化 golang
  8. select使用方法
  9. Spark2.x优化:高性能序列化库Kryo使用及性能测试

随机推荐

  1. 在代码中实现android:tint效果
  2. 【Android 开发】: Android 消息处理机制
  3. Android SELinux 概览(转自官网)
  4. Android的系统构架
  5. 十六周总结报告
  6. Android布局优化(二)优雅获取界面布局耗时
  7. RelativeLayout布局的对齐属性
  8. Android占领2010的六大理由!
  9. Android退出当前应用程序的方法
  10. Android JNI打印c\c++日志信息