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

深度学习模型之BERT的24个小模型源码与预训练紧凑模型的重要性

原始信息

  • 论文: Well-Read Students Learn Better: On the Importance of Pre-training Compact Models
  • 作者:Iulia Turc, Ming-Wei Chang, Kenton Lee, Kristina Toutanova
  • 地址:arxiv.org/pdf/1908.08…
  • 中文:阅读良好的学生学得更好:关于预训练紧凑模型的重要性
  • 源码:见微小BERT模型的源码地址章节

目前24个较小的BERT模型的发布版本,现在只有英语,采用WordPiece掩码。
笔者翻译水平有限,有误之处请指正,万分感激。

摘要

自然语言表征模型的最新发展伴随着庞大而昂贵的模型,这些模型通过自监督的预训练的方式来利于通用领域文本。 由于应用此模型的下任务的成本,关于预训练的语言表征模型的几个压缩技术已经被提及(Sun等.,2019a;Sanh,2019) 。 然而,令人惊讶的是仅预先训练和微调紧凑型模型的简单基线已经被忽视。 在文本中,我们首先展示了较小体系架构中保留预训练的重要性,而且微调预先训练的紧凑模型可以与并行工作中提出的更精细的方法相竞争。 从预训练凑型模型开始,我们将探索通过标准知识提取从大的微调模型中转移任务知识,由此产生的简单、有效且通用的算,将给预训练提取带来更多的提升。通过广泛的实验,我们更加普遍的探索了在两个研究不足的变量(模型大小与未标记任务的数据属性)下在预训练与提取之间的相互作用。我们有一个让人吃惊的发现,即使是按序给相同的数据,他们仍然会产生复合效应。为了加快未来的研究,我们公开了24个预训练的微小BERT模型.

介绍

在通用领域文本语料库上的自监督学习,最终任务学习是实现基于深度和广度Transforme网络的两阶段训练方法(Vaswani等.,2017)来促进语言理解(Devlin等,2018;Sun等,019b;Sun等,2019b;Liu等,2019)。然而,最先进的模型有数亿个参数,计算成本很高。我们的目标是在有限的内存和延迟预算下有收获。我们寻求一个性能良好,通用且简单的训练方法,能够利用额外的资源,例如未标记的任务数据。

在考虑压缩技术之前,我们先从以下问题开始:我们能使用同样的两阶段方法训练较小模型么?换一句话说,我们探索了将语言模型预训练和任务微调直接应用于紧凑模型的想法。到目前为止,这个简单的基线一直被NLP社区所忽视,这可能潜在于这样的一个假设,当焦点集中在最终任务而不是通用语言模型的目标时有限能力的紧凑模型会得到更好的资本化。与我们一起提出了标准预训练+微调程序的变体的也有,但通用性有限(Sun等人,2019a;Sanh,2019)。我们惊喜的发现,在最初的公式中进行预训练+微调是构建紧凑模型的一种有竞争力的方法。

image.png

从这里开始,我们把它称为预训练提取(PD) 如上图。PD优于预训练+微调(PF)基线,尤其是在存在用于蒸馏的大转移集的情况下。特别是在提取大型转移设置的情况下。 在一项对照研究中,遵循并行工作中的数据和模型架构设置,我们展示了预训练蒸馏优于或具有更精细方法的竞争力,这些方法使用更复杂的任务知识提取(Sun等,2019a)或从未标记文本中进行更复杂的预训练(Sanh,2019)时。前者从中级教师激活中提取任务知识,从启发式初始化的学生开始。后者在更大的LM教师的帮助下,对在未标记文本上预先训练的紧凑模型进行微调。

本论文中最值得注意的贡献之一是:就预训练提取及其基线在各种条件下的表现 进行了广泛的实验。我们调查先前工作中研究不足的两个要点:模型大小和未标记数据的数量/质量。在对24个不同尺寸(4m至110m参数)的模型进行实验时深度/宽度的权衡,我们观察到,经过预训练的学生更好地利用深度而非宽度,这个属性对于随机初始化的模型是不可见的。对于第二点,我们改变了未标记数据的数量,以及它与标记集的相似性。有趣的是,预训练的取比标准提取对传递集中的这些变化更具鲁棒性。

最后,为了深入了解LM预训练和任务特定提取之间的相互作用,我们在同一数据集上依次进行了这些操作。在这个实验中,尽管单个操作数据集用于这两个步骤,这种复合效应令人惊讶,表明预训练和蒸馏是学习数据的互补方面。在这个实验中,尽管两个步骤都使用了单个数据集,但这两个操作链接起来的性能比单独应用的任何一个都要好。这种复合效应令人惊讶,表明预训练和提取是学习数据的互补方面。

结论

我们进行了大量的实验,以了解知识提炼和预训练+微调算法是如何单独工作的,以及它们如何交互。我们发现他们好处的复合,并且揭示训练训提取的力量。 这是一种简单且有效的方法,可以最大限度的利于可用:一个强大的老师,复合数据源(他们的好处是复合的,并揭示了预训练蒸馏的力量,这是一种简单而有效的方法,可以最大限度地利用所有可用的资源:一个强大的老师,以及多个数据源(标记集、未标记转移集和未标记LM集)。

章节说明

  1. INTRODUCTION:介绍(已译)
  2. PROBLEM STATEMENT:问题描述
  3. PRE-TRAINED DISTILLATION:预训练提取
  4. COMPARISON TO CONCURRENT WORK:与并行工作的比较
  5. ANALYSIS SETTINGS:配置分析
  6. ANALYSIS:实验分析
  7. RELATED WORK: 相关工作
  8. CONCLUSION:结论(已译)

微小BERT模型的源码地址

H=128H=256H=512H=768
L=22/128 (BERT-Tiny)2/2562/5122/768
L=44/1284/256 (BERT-Mini)4/512 (BERT-Small)4/768
L=66/1286/5122/5126/768
L=88/1288/2568/512 (BERT-Medium)8/768
L=1010/12810/25610/51210/768
L=1212/12812/25612/512-

GLUE分数

image.png

相关阅读

深度学习经典模型之BERT(上)
深度学习经典模型之BERT(下)

[参考]

  • 见原论文
  • 部分数据来源于官方源码站 github.com/google-rese…

如果您也对AI大模型感兴趣想学习却苦于没有方向👀
小编给自己收藏整理好的学习资料分享出来给大家💖
👉获取方式:

😝有需要的小伙伴,可以保存图片到wx扫描二v码关注免费领取【保证100%免费】🆓
请添加图片描述

👉AI大模型学习路线汇总👈

大模型学习路线图,整体分为7个大的阶段:(全套教程文末领取哈)
在这里插入图片描述

第一阶段: 从大模型系统设计入手,讲解大模型的主要方法;

第二阶段: 在通过大模型提示词工程从Prompts角度入手更好发挥模型的作用;

第三阶段: 大模型平台应用开发借助阿里云PAI平台构建电商领域虚拟试衣系统;

第四阶段: 大模型知识库应用开发以LangChain框架为例,构建物流行业咨询智能问答系统;

第五阶段: 大模型微调开发借助以大健康、新零售、新媒体领域构建适合当前领域大模型;

第六阶段: 以SD多模态大模型为主,搭建了文生图小程序案例;

第七阶段: 以大模型平台应用与开发为主,通过星火大模型,文心大模型等成熟大模型构建大模型行业应用。

👉如何学习AI大模型?👈

作为一名热心肠的互联网老兵,我决定把宝贵的AI知识分享给大家。 至于能学习到多少就看你的学习毅力和能力了 。我已将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。

这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

请添加图片描述

一、全套AGI大模型学习路线

AI大模型时代的学习之旅:从基础到前沿,掌握人工智能的核心技能!

在这里插入图片描述

二、640套AI大模型报告合集

这套包含640份报告的合集,涵盖了AI大模型的理论研究、技术实现、行业应用等多个方面。无论您是科研人员、工程师,还是对AI大模型感兴趣的爱好者,这套报告合集都将为您提供宝贵的信息和启示。
在这里插入图片描述

三、AI大模型经典PDF籍

随着人工智能技术的飞速发展,AI大模型已经成为了当今科技领域的一大热点。这些大型预训练模型,如GPT-3、BERT、XLNet等,以其强大的语言理解和生成能力,正在改变我们对人工智能的认识。 那以下这些PDF籍就是非常不错的学习资源。

在这里插入图片描述

四、AI大模型商业化落地方案

在这里插入图片描述

作为普通人,入局大模型时代需要持续学习和实践,不断提高自己的技能和认知水平,同时也需要有责任感和伦理意识,为人工智能的健康发展贡献力量。
请添加图片描述

相关文章:

深度学习模型之BERT的24个小模型源码与预训练紧凑模型的重要性

原始信息 论文: Well-Read Students Learn Better: On the Importance of Pre-training Compact Models作者:Iulia Turc, Ming-Wei Chang, Kenton Lee, Kristina Toutanova地址:arxiv.org/pdf/1908.08…中文:阅读良好的学生学得更…...

【HarmonyOS】深入理解@Observed装饰器和@ObjectLink装饰器:嵌套类对象属性变化

【HarmonyOS】深入理解Observed装饰器和ObjectLink装饰器:嵌套类对象属性变化 前言 之前就Observed和ObjectLink写过一篇讲解博客【HarmonyOS】 多层嵌套对象通过ObjectLink和Observed实现渲染更新处理! 其中就Observe监听类的使用,Object…...

Java笔试面试题AI答之设计模式(1)

文章目录 1. 简述什么是设计模式 ?2. 叙述常见Java设计模式分类 ?3. Java 设计模式的六大原则 ?4. 简述对 MVC 的理解, MVC 有什么优缺点?MVC 的三个核心部分:MVC 的优点:MVC 的缺点&#xff1a…...

java调用opencv部署到centos7

1、官网下载opencv https://opencv.org/releases/ 2、下载opencv并解压 unzip opencv-3.4.7.zip cd opencv-3.4.7 mkdir build cd build/ 3、安装cmake yum remove cmake -y ; yum install -y gcc gcc-c make automake openssl openssl-devel wget https://cmake.org/files/…...

【python qdrant 向量数据库 完整示例代码】

测试一下python版本的dqrant向量数据库的效果,完整代码如下: 安装库 !pip install qdrant-client>1.1.1 !pip install -U sentence-transformers导入 from qdrant_client import models, QdrantClient from sentence_transformers import SentenceT…...

初识C语言(三)

感兴趣的朋友们可以留个关注,我们共同交流,相互促进学习。 文章目录 前言 八、函数 九、数组 (1)数组的定义 (2)数组的下标和使用 十、操作符 (1)算数操作符 (2&#xff…...

用通义灵码如何快速合理解决遗留代码问题?

本文首先介绍了遗留代码的概念,并对遗留代码进行了分类。针对不同类型的遗留代码,提供了相应的处理策略。此外,本文重点介绍了通义灵码在维护遗留代码过程中能提供哪些支持。 什么是遗留代码 与过时技术相关的代码: 与不再受支持的…...

新书推荐——《Python贝叶斯深度学习》

在过去的十年中,机器学习领域取得了长足的进步,并因此激发了公众的想象力。但我们必须记住,尽管这些算法令人印象深刻,但它们并非完美无缺。本书旨在通过平实的语言介绍如何在深度学习中利用贝叶斯推理,帮助读者掌握开…...

数据结构-3.1.栈的基本概念

一.栈的定义: 栈和线性表的区别:栈只能在表尾一端进行插入或者删除的操作,而线性表可以在任意一个地方进行插入或者删除 二.有关栈的关键术语: 三.栈的基本操作: 1.回顾线性表的基本操作: 2.栈的基本操作&…...

关于 NLP 应用方向与深度训练的核心流程

文章目录 主流应用方向核心流程(5步)1.选定语言模型结构2.收集标注数据3.forward 正向传播4.backward 反向传播5.使用模型预测真实场景 主流应用方向 文本分类文本匹配序列标注生成式任务 核心流程(5步) 基本流程实现的先后顺序…...

linux如何启用ipv6随机地址

简介 在 IPv6 中,临时随机地址(Temporary IPv6 Address)是一种为了提高隐私和安全而设计的功能。通常,默认的 IPv6 地址是基于设备的 MAC 地址生成的,容易导致跟踪和识别设备。启用临时 IPv6 地址可以避免这个问题&am…...

探索 Android DataBinding:实现数据与视图的完美融合

在 Android 开发中,数据与视图的交互一直是一个关键的问题。为了更好地实现数据的展示和更新,Google 推出了 DataBinding 库,它为开发者提供了一种简洁、高效的方式来处理数据与视图之间的绑定关系,大大提高了开发效率和代码的可读…...

Java 编码系列:线程基础与最佳实践

引言 在多任务处理和并发编程中,线程是不可或缺的一部分。Java 提供了丰富的线程管理和并发控制机制,使得开发者可以轻松地实现多线程应用。本文将深入探讨 Java 线程的基础知识,包括 Thread 类、Runnable 接口、Callable 接口以及线程的生命…...

《深度学习》—— ResNet 残差神经网络

文章目录 一、什么是ResNet?二、残差结构(Residual Structure)三、Batch Normalization(BN----批归一化) 一、什么是ResNet? ResNet 网络是在 2015年 由微软实验室中的何凯明等几位大神提出,斩获…...

针对考研的C语言学习(定制化快速掌握重点3)

1.数组常见错误 数组传参实际传递的是数组的起始地址&#xff0c;若在函数中改变数组内容&#xff0c;数组本身也会发生变化 #include<stdio.h> void change_ch(char* str) {str[0] H; } int main() {char ch[] "hello";change_ch(ch);printf("%s\n&q…...

pikachu XXE(XML外部实体注入)通关

靶场&#xff1a;pikachu 环境: 系统&#xff1a;Windows10 服务器&#xff1a;PHPstudy2018 靶场&#xff1a;pikachu 关卡提示说&#xff1a;这是一个接收xml数据的api 常用的Payload 回显 <?xml version"1.0"?> <!DOCTYPE foo [ <!ENTITY …...

shell脚本定时任务通知到钉钉

shell脚本定时任务通知到钉钉 1、背景 ​ 前两天看了一下定时任务&#xff0c;垃圾清理、日志相关、系统巡检这些&#xff0c;有的服务器运行就有问题&#xff0c;或者不运行&#xff0c;正好最近在做运维标准重制运维手册&#xff0c;顺便把自动化这块优化一下&#xff0c;所…...

2.4K star的GOT-OCR2.0:端到端OCR 模型

GOT-OCR2.0是一款新一代的光学字符识别&#xff08;OCR&#xff09;技术&#xff0c;标志着人工智能在文本识别领域的重大进步。作为一款开源模型&#xff0c;GOT-OCR2.0不仅支持传统的文本和文档识别&#xff0c;还能够处理乐谱、图表以及复杂的数学公式&#xff0c;为用户提供…...

【JavaEE】——线程的安全问题和解决方式

阿华代码&#xff0c;不是逆风&#xff0c;就是我疯&#xff0c;你们的点赞收藏是我前进最大的动力&#xff01;&#xff01;希望本文内容能够帮助到你&#xff01; 目录 一&#xff1a;问题引入 二&#xff1a;问题深入 1&#xff1a;举例说明 2&#xff1a;图解双线程计算…...

初步认识了解分布式系统

背景认识&#xff1a;我们要学习redis&#xff0c;还是得了解一下什么是分布式。为什么呢&#xff1f;因为redis只有在分布式系统中才能发挥它最大的作用&#xff0c;也就是领域展开&#xff0c;所以接下来我们就简单过一下什么是分布式系统 一些术语认识&#xff1a; &#x…...

XML Group端口详解

在XML数据映射过程中&#xff0c;经常需要对数据进行分组聚合操作。例如&#xff0c;当处理包含多个物料明细的XML文件时&#xff0c;可能需要将相同物料号的明细归为一组&#xff0c;或对相同物料号的数量进行求和计算。传统实现方式通常需要编写脚本代码&#xff0c;增加了开…...

stm32G473的flash模式是单bank还是双bank?

今天突然有人stm32G473的flash模式是单bank还是双bank&#xff1f;由于时间太久&#xff0c;我真忘记了。搜搜发现&#xff0c;还真有人和我一样。见下面的链接&#xff1a;https://shequ.stmicroelectronics.cn/forum.php?modviewthread&tid644563 根据STM32G4系列参考手…...

k8s从入门到放弃之Ingress七层负载

k8s从入门到放弃之Ingress七层负载 在Kubernetes&#xff08;简称K8s&#xff09;中&#xff0c;Ingress是一个API对象&#xff0c;它允许你定义如何从集群外部访问集群内部的服务。Ingress可以提供负载均衡、SSL终结和基于名称的虚拟主机等功能。通过Ingress&#xff0c;你可…...

全球首个30米分辨率湿地数据集(2000—2022)

数据简介 今天我们分享的数据是全球30米分辨率湿地数据集&#xff0c;包含8种湿地亚类&#xff0c;该数据以0.5X0.5的瓦片存储&#xff0c;我们整理了所有属于中国的瓦片名称与其对应省份&#xff0c;方便大家研究使用。 该数据集作为全球首个30米分辨率、覆盖2000–2022年时间…...

【项目实战】通过多模态+LangGraph实现PPT生成助手

PPT自动生成系统 基于LangGraph的PPT自动生成系统&#xff0c;可以将Markdown文档自动转换为PPT演示文稿。 功能特点 Markdown解析&#xff1a;自动解析Markdown文档结构PPT模板分析&#xff1a;分析PPT模板的布局和风格智能布局决策&#xff1a;匹配内容与合适的PPT布局自动…...

Java多线程实现之Thread类深度解析

Java多线程实现之Thread类深度解析 一、多线程基础概念1.1 什么是线程1.2 多线程的优势1.3 Java多线程模型 二、Thread类的基本结构与构造函数2.1 Thread类的继承关系2.2 构造函数 三、创建和启动线程3.1 继承Thread类创建线程3.2 实现Runnable接口创建线程 四、Thread类的核心…...

处理vxe-table 表尾数据是单独一个接口,表格tableData数据更新后,需要点击两下,表尾才是正确的

修改bug思路&#xff1a; 分别把 tabledata 和 表尾相关数据 console.log() 发现 更新数据先后顺序不对 settimeout延迟查询表格接口 ——测试可行 升级↑&#xff1a;async await 等接口返回后再开始下一个接口查询 ________________________________________________________…...

纯 Java 项目(非 SpringBoot)集成 Mybatis-Plus 和 Mybatis-Plus-Join

纯 Java 项目&#xff08;非 SpringBoot&#xff09;集成 Mybatis-Plus 和 Mybatis-Plus-Join 1、依赖1.1、依赖版本1.2、pom.xml 2、代码2.1、SqlSession 构造器2.2、MybatisPlus代码生成器2.3、获取 config.yml 配置2.3.1、config.yml2.3.2、项目配置类 2.4、ftl 模板2.4.1、…...

NPOI Excel用OLE对象的形式插入文件附件以及插入图片

static void Main(string[] args) {XlsWithObjData();Console.WriteLine("输出完成"); }static void XlsWithObjData() {// 创建工作簿和单元格,只有HSSFWorkbook,XSSFWorkbook不可以HSSFWorkbook workbook new HSSFWorkbook();HSSFSheet sheet (HSSFSheet)workboo…...

[大语言模型]在个人电脑上部署ollama 并进行管理,最后配置AI程序开发助手.

ollama官网: 下载 https://ollama.com/ 安装 查看可以使用的模型 https://ollama.com/search 例如 https://ollama.com/library/deepseek-r1/tags # deepseek-r1:7bollama pull deepseek-r1:7b改token数量为409622 16384 ollama命令说明 ollama serve #&#xff1a…...