【通览一百个大模型】FLAN(Google)

news2024/11/15 17:33:04

【通览一百个大模型】FLAN(Google)

作者:王嘉宁,本文章内容为原创,仓库链接:https://github.com/wjn1996/LLMs-NLP-Algo

订阅专栏【大模型&NLP&算法】可获得博主多年积累的全部NLP、大模型和算法干货资料大礼包,近200篇论文,300份博主亲自撰写的markdown笔记,近100个大模型资料卡,助力NLP科研、学习和求职。


FLAN大模型基本信息资料卡

序号大模型名称归属推出时间规模预训练语料评测基准模型与训练方法开源论文模型地址相关资料
22FLANGoogle2022-02137B该模型不涉及到预训练部分,因此没有预训练语料。整理了62个NLP task、并划分了12种类型任务,用于测试在unseen task评测zero-shot性能。
如下图,深蓝色部分为训练集,浅蓝色部分为测试集。
image.png
基于LAMDA-PT(只有Pre-trained过程)模型进行instruction-tuning训练,训练目标为Causal LM。
在Instruction-tuning阶段,混合了所有数据集和每个数据集的随机样本示例,每个数据集的训练示例数量限制为30000。fine-tunine模型30000个step,每个step的batch size为8192,优化器为Adafactor,学习率3e-5,输入输出长度分别为1024和256。
FLAN论文未开源查看

Instruction-Tuning

概念:
Instruction-tuning——finetuning language models on a collection of tasks (more than 60 NLP tasks) described via instructions

本文提出一种基于instruction-tuning的方法叫做FLANFinetuned LAnguage Net)
评估方法:对所有的NLP task,根据其任务类型和目标划分若干个簇,随机挑选一个簇内的所有task作为评估,其他所有簇的task用于instruction-tuning

we group NLP tasks into clusters based on their task types and hold out each cluster for evaluation while instruction tuning FLAN on all other clusters.

如下图:
image.png
  首先在包括commonsense reasoning、machine translation、sentiment analysis等NLP task上进行微调,然后在从未见过的natural language inference任务上进行zero-shot evaluation

Instruction-tuning与Fine-tuning和Prompt-Tuning的对比:
image.png

  • Pretrain-Finetune:现在大规模语料上根据某一个(几个)训练目标进行预训练,然后主要针对某一个task进行微调;
  • Prompting(Prompt-based Fine-tuning):通用选择预训练语言模型,为每个样本生成一个prompt模板,并采用类似完形填空的模式,在某一个具体的task上微调;
  • Instruction-Tuning:在预训练语言模型的基础上,获得若干混合的NLP task上进行微调,然后在某一个具体的task上进行评估(zero-shot)

FLAN

  首先整理了62个NLP task,并进行了归类(cluster),如下图所示:
image.png

  • 可知,一共划分了12个cluster
  • 我们定义task表示一个数据集,例如RTE表示一个task;
  • 对于每个task,手动构建10个template,作为描述该任务的instruction;
  • 为了增加多样性,对于每个任务,我们包括多达3个“扭转任务”的模板;
  • 在混合的task上进行instruction-tuning,对于每个task,随机挑选template;

  例如下图,给定某个NLI任务的样本,构建与其有关的若干个template
image.png

  FLAN是在unseen task上进行zero-shot evaluation,那如何定义unseen task?

一个task T \mathcal{T} T对于FLAN是unseen的(即没有在instruction-tuning出现过),当且仅当这个task所属的clust的所有task都没有在instruction-tuning出现过。
In this work, we only consider task T \mathcal{T} T unseen at evaluation time if no tasks from any clusters that T \mathcal{T} T belongs to were seen during fine tuning.

  任务的目标主要分为classification和generation两种

  • generation:基于instruction-tuning的FLAN本质就是一个语言模型,输出部分即为free-text,因此对于纯生成式任务无需修改;
  • classification:先前工作通过添加template企图让模型生成出预设的几个label word,但是作者认为并不合理,因此在此基础上,添加了一个option;

模型训练:

  使用left-to-right(单向),只包含decoder部分的transformer模型,共计137B个参数,在未经处理的语料上(10%非英文,包含大量code,对话文本等),预训练的模型命名为BaseLM。

  在Instruction-tuning阶段,混合了所有数据集和每个数据集的随机样本示例。有些数据集有超过1000万个训练示例(例如,机器翻译),因此我们将每个数据集的训练示例数量限制为30000个。其他数据集很少有训练示例(例如,CommitmentBank只有250个),为了防止这些数据集被边缘化,我们采用示例-比例混合方案(examples-proportional mixing scheme,Raffel et al., 2020),混合率最大为3000。fine-tunine模型30000个step,每个step的batch size为8192,优化器为Adafactor,学习率3e-5,输入输出长度分别为1024和256,

  博客记录着学习的脚步,分享着最新的技术,非常感谢您的阅读,本博客将不断进行更新,希望能够给您在技术上带来帮助。


【大模型&NLP&算法】专栏

近200篇论文,300份博主亲自撰写的markdown笔记。订阅本专栏【大模型&NLP&算法】专栏,或前往https://github.com/wjn1996/LLMs-NLP-Algo即可获得全部如下资料:

  • 机器学习&深度学习基础与进阶干货(笔记、PPT、代码)
  • NLP基础与进阶干货(笔记、PPT、代码)
  • 大模型全套体系——预训练语言模型基础、知识预训练、大模型一览、大模型训练与优化、大模型调优、类ChatGPT的复现与应用等;
  • 大厂算法刷题;

在这里插入图片描述

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

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

相关文章

pytorch学习指南---安装anaconda ,pytorch

pytorch 和tenserflow并驾齐驱,但是,pytorch更好理解。所以选择学习pytorch。 安装anaconda: https://blog.csdn.net/fan18317517352/article/details/123035625 教程:bilibili up主:一只小土堆 构建pytorch空间 py…

密码学学习笔记(九):Public-Key Encryption - 公钥加密2

Rivest-Shamir-Adleman (RSA) - 经典非对称加密算法 如果我们知道𝑝, 𝑞 (即𝑁 𝑝𝑞) 我们可以在mod N中进行反幂运算。 比如: 我们有一个单向陷门函数,非常适合加密。 “教科书式”…

【2023年成都七中NOIP联赛】游记

Day 1: 8:30: 睡懒觉,一觉睡到 8:30,“嘟嘟嘟”的电话声响起,迷迷糊糊睁开眼睛,快点,去成都七中…… 没错,我连今天要考试都不知道(其实昨天老师给我发了消息的&#…

算法 | 滑动窗口算法笔记

滑动窗口:核心思想 核心思想:维护一个窗口(又叫做子区间),通过调整窗口的起始位置(start)和终止位置(end),来寻找符合特定条件的子区间。 滑动窗口算法常常…

包管理器 | 浅谈几个常用的包管理工具

目录 🖥️ 前言 ◼️ npm ◼️ cnpm ◼️ yarn ◼️ pnpm ◼️ Bower 🖥️ 参考文献 🖥️ 参考资料 🖥️ 前言 如果你是前端开发者,或多或少都会接触到一些包管理工具,包管理工具是用于持续自动化…

17.OpenCV中的GFTTDetector类

文章目录 GFTTDetector功能OpenCV中GFTTDetector类reference 欢迎访问个人网络日志🌹🌹知行空间🌹🌹 这是使用imgproc.hpp中的goodFeaturesToTrack函数封装的类,其使用和goodFeaturesToTrack函数基本相似。 GFTTDetec…

wps如何加载mathtype和Endnote

为了支持国产化软件,弃用office套装,现在改用wps办公软件,但是写作科技论文的时候还是会出现很多的不方便,比如文献引用、公式排版编号等等。尽管wps自带了公式编辑器,然鹅这可太不方便了,因此把几个技巧总…

由于找不到libmmd.dll,无法继续执行代码有什么好的解决办法修复?

其实要解决由于找不到libmmd.dll,无法继续执行代码这个问题还是比较简单的,因为这类问题不外乎就是丢失了dll文件,我们只要下载安装回来就可以了,但有朋友还是会好奇,libmmd.dll到底是什么文件,那我们就来详细说说吧&a…

paddlenlp安装教程

一、安装cuda和cuDNN 1、安装paddlepaddle之前,要确保电脑已经安装了对应版本的cuda和cuDNN (1)安装CUDA 进入官网选择合适版本下载: 按照步骤安装完成即可。安装完成后进行验证,打开cmd命令窗口,输入nv…

Floyd算法学习笔记

Floyd算法学习笔记 前言 同步于 c n b l o g s cnblogs cnblogs 发布 如有错误,欢迎各位 dalao 批评指出。 前置芝士: 1.邻接矩阵(Floyd要用邻接矩阵存图) 2.动态规划思想(最好学过,没学过也没有太大影响&#…

无线视频传输方案|远距离无人机图传应用,+28dBm大功率wifi图传模块

针对无人机远程图片、视频传输需求,市面上就有无线模块研发厂家推出了基于大功率图传WiFi模块SKW77的无人机远程视频传输解决方案。在无人机和地面的中继器内加入串口WiFi模块,手机通过与无人机和地面的中继器内置的串口WiFi模块给无人机传递控制信号&am…

深度理解 JAVA 动态代理

本文篇幅比较长,在确定您是否需要仔细阅读本文前,可以先思考一下下面几个问题: 动态代理是什么?如何实现动态代理?所有类都能实现动态代理吗?非目标方法是否会被代理?为什么 JDK 实现动态代理必…

平安养老险广东分公司积极开展“7·8全国保险公众宣传日”系列活动

2023年是全面贯彻落实党的二十大精神的开局之年,是实施“十四五”规划承上启下的关键之年。在国家金融监督管理总局指导、中国保险行业协会组织下,平安养老保险股份有限公司广东分公司(以下简称“平安养老险广东分公司”)以“78全…

ETHERNET/IP转MODBUS-RTU协议网关

远创智控YC-EIP-RTU是自主研发的一款ETHERNET/IP从站功能的通讯网关。该产品主要功能是将各种MODBUS-RTU设备接入到ETHERNET/IP网络中。 远创智控YC-EIP-RTU连接到ETHERNET/IP总线中做为从站使用,连接到MODBUS-RTU总线中做为主站或从站使用。 2.ETHERNET/IP转MODBU…

IDEA中配置Java反编译工具javap -c

IDEA中配置Java反编译工具javap -c 一、前置条件二、新建外部工具三、使用方式 欢迎访问我的个人博客:https://wk-blog.vip 一、前置条件 确保 IDEA 已经开启了编译 javac 。默认 IDEA 是开启的。 二、新建外部工具 首先进入 Settings ---> Tools ---> Ext…

自动化测试报告样式HTMLTestRunner、BeautifulReport、HTMLReport、Allure你喜欢哪个?

自动化测试报告样式HTMLTestRunner、BeautifulReport、HTMLReport、Allure你喜欢哪个? 1 框架设计(准备工作)1.1 简易框架图1.2 common/reportOut.py1.3 report1.4 testcase/test_baidu.py1.5 mian.py 2 HTMLTestRunner2.1 下载使用2.2 reportOut.py设计2.3 报告样式…

十一、框架与大数据模型

frameset标签 1、frameset标签 这种结构&#xff0c;基本上被淘汰 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>Title</title> </head> <frameset cols"25%,75%">&…

统计每列中不同值出现的次数.apply(pd.value_counts)

在Python 的pandas.DataFrame中有一种操作&#xff0c;它可以大大减轻我们的工作量&#xff0c;方便我们更快地进行数据分析&#xff0c;加快处理工作的效率。这就是 .apply(pd.value_counts) pandas 的强大&#xff0c;越使用&#xff0c;也就越爱了。现在就来夸夸它的作用啦…

统计学习导论(ISLR) 第八章树模型课后习题

统计学习导论(ISLR) 第八章树模型课后习题 🌸个人主页:JOJO数据科学📝个人介绍:统计学top3高校统计学硕士在读💌如果文章对你有帮助,欢迎✌关注、👍点赞、✌收藏、👍订阅专栏✨本文收录于【R语言数据科学】本系列主要介绍R语言在数据科学领域的应用包括: R语言…

二叉树 — 返回最大的二叉搜索子树大小

题目&#xff1a; 给定一棵二叉树的head节点&#xff0c;返回这颗二叉树中最大的二叉搜索子树的大小。 一颗二叉树来讲&#xff0c;可能整棵树不是搜索二叉树&#xff0c;但子树是一颗搜索二叉树。如下图所示&#xff0c;这时要返回这颗子搜索二叉树的最大节点个数。下图中&…