当前位置: 首页 > news >正文

transformer剪枝论文汇总

文章目录

  • NN Pruning
      • 摘要
      • 实验
  • 大模型剪枝
    • LLM-Pruner
    • SparseGPT
  • LTP
  • VTP
  • Width & Depth Pruning
  • Patch Slimming
  • DynamicViT
  • SPViT
  • DynamicBERT
  • ViT Slimming
  • FastFormers
  • NViT
  • UVC
  • Post-training pruning

NN Pruning

《Block Pruning For Faster Transformers》
《为更快的transformer进行块修剪》

摘要

预训练提高了模型在分类和生成任务的精度,但缺点是成本较高,性能慢;
剪枝是一种减少模型大小的有效方法;
论文引入了块剪枝方法,为了得到小且快的模型。通过将任意大小的块剪枝集成到运动剪枝微调范式中;
实验在分类和生成任务,得到剪枝后的模型2.4x更快,74%更小的BERT在SQuAD v1,F1仅下降1%,与其他蒸馏模型相比速度更快,与其他剪枝模型相比模型更小。

实验

在这里插入图片描述

在这里插入图片描述

论文地址
github地址1
github地址2

FFN剪枝 attention heads剪枝

大模型剪枝

LLM-Pruner

《LLM-Pruner: On the Structural Pruning of Large Language Models》

《LLM-Pruner: 大语言模型结构化剪枝》

github地址

SparseGPT

《SparseGPT: Massive Language Models Can Be Accurately Pruned in One-Shot》
《SparseGPT:大规模语言模型可以一次精确剪枝》
github地址

LTP

《Learned Token Pruning for Transformers》
《transformer的Token修剪学习》
github地址

VTP

《Vision Transformer Pruning》

稀疏 剪枝 finetune
剪维度,Dimension Pruning

Width & Depth Pruning

《Width & Depth Pruning for Vision Transformers》

剪维度,剪深度

Patch Slimming

《 Patch Slimming for Efficient Vision Transformers》
《高效视觉transformer的块瘦身》

剪patch

DynamicViT

《DynamicViT: Efficient Vision Transformers with Dynamic Token Sparsification》
《DynamicViT:具有动态Token稀疏化的高效视觉transformer》
github地址

token 剪枝: 在MSA和MLP后面添加一个轻量化的注意力模块来动态的识别不重要的patch

SPViT

《Pruning Self-attentions into Convolutional Layers in Single Path》
《在Single Path中将自注意力剪枝成卷积层》
github地址

核心思想是nas,过预训练好的nsa的权重来初始化得到对应卷积的权重,达到一种权重共享的方法

DynamicBERT

《DynaBERT: Dynamic BERT with Adaptive Width and Depth》
《DynaBERT: 具有自适应宽度和深度的动态BERT》

github地址

深度 和宽度 剪枝;

训练时,对宽度和深度进行裁剪,训练不同的子网络
推理时,根据速度需要直接裁剪,用裁剪后的子网络进行预测

ViT Slimming

《Vision Transformer Slimming: Multi-Dimension Searching in continuous optimization space》
《视觉Transformer瘦身:连续优化空间中的多维搜索》
github地址

只需训练 / 搜索一次,就可以通过排序 mask 得到无数个子网络

FastFormers

《FastFormers: Highly Efficient Transformer Models
for Natural Language Understanding》
github 地址
step1:蒸馏
step2:剪枝
step3: 量化

NViT

《NViT: Vision Transformer Compression and Parameter Redistribution》
(2021)
剪枝规则分为三步:

  1. 确定剪枝的空间
  2. 通过建立全局重要性分数ranking,迭代地进行全局结构剪枝。
  3. 观察剪枝后网络结构的维度变化趋势,进行参数重分配,得到最终的NViT

UVC

《UNIFIED VISUAL TRANSFORMER COMPRESSION》
《统一视觉transformer压缩》

github地址

Post-training pruning

《A Fast Post-Training Pruning Framework for Transformers》
《transformer 快速后训练剪枝框架》
github地址
在这里插入图片描述

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 使用内联函数,降低函数调用开销,实现移动时绘制
  • GPIO结构
  • Docker-CE 国内源国内镜像
  • 【ASP.NET Core 基础知识】--部署和维护--日志记录和错误处理
  • OpenAI推出ChatGPT已经过去一年多了,AI 取代了内容创作者吗
  • IEEE Access投稿经历--2024最新
  • 如何将 Hexo 部署到 GitHub Pages
  • 科技的成就(五十六)
  • Idea Git Review插件
  • Maven构建OSGI+HttpServer应用
  • 探索C语言的内存魔法:动态内存管理解析
  • Windows下搭建Redis Sentinel
  • 【Linux】学习-动静态库
  • ef core原始sql查询
  • 幻兽帕鲁服务器哪家强?腾讯、阿里和华为云?
  • [ 一起学React系列 -- 8 ] React中的文件上传
  • [分享]iOS开发 - 实现UITableView Plain SectionView和table不停留一起滑动
  • 【跃迁之路】【519天】程序员高效学习方法论探索系列(实验阶段276-2018.07.09)...
  • 10个确保微服务与容器安全的最佳实践
  • 2017年终总结、随想
  • android高仿小视频、应用锁、3种存储库、QQ小红点动画、仿支付宝图表等源码...
  • Apache Zeppelin在Apache Trafodion上的可视化
  • Java Agent 学习笔记
  • java B2B2C 源码多租户电子商城系统-Kafka基本使用介绍
  • JavaScript标准库系列——Math对象和Date对象(二)
  • Mysql5.6主从复制
  • NSTimer学习笔记
  • react-core-image-upload 一款轻量级图片上传裁剪插件
  • Vue 重置组件到初始状态
  • Xmanager 远程桌面 CentOS 7
  • 讲清楚之javascript作用域
  • 来,膜拜下android roadmap,强大的执行力
  • 理清楚Vue的结构
  • 适配mpvue平台的的微信小程序日历组件mpvue-calendar
  • 温故知新之javascript面向对象
  • 小程序、APP Store 需要的 SSL 证书是个什么东西?
  • 写代码的正确姿势
  • 移动端解决方案学习记录
  • Prometheus VS InfluxDB
  • ​​​​​​​STM32通过SPI硬件读写W25Q64
  • ​sqlite3 --- SQLite 数据库 DB-API 2.0 接口模块​
  • ​云纳万物 · 数皆有言|2021 七牛云战略发布会启幕,邀您赴约
  • # 手柄编程_北通阿修罗3动手评:一款兼具功能、操控性的电竞手柄
  • (2024.6.23)最新版MAVEN的安装和配置教程(超详细)
  • (4)通过调用hadoop的java api实现本地文件上传到hadoop文件系统上
  • (C语言)共用体union的用法举例
  • (附表设计)不是我吹!超级全面的权限系统设计方案面世了
  • (教学思路 C#之类三)方法参数类型(ref、out、parmas)
  • (四)汇编语言——简单程序
  • *ST京蓝入股力合节能 着力绿色智慧城市服务
  • .NET 6 Mysql Canal (CDC 增量同步,捕获变更数据) 案例版
  • .NET core 自定义过滤器 Filter 实现webapi RestFul 统一接口数据返回格式
  • .net反编译的九款神器
  • .sh 的运行
  • [ C++ ] STL---stack与queue