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

2023-10-30

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

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

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


FLAN大模型基本信息资料卡

序号 大模型名称 归属 推出时间 规模 预训练语料 评测基准 模型与训练方法 开源 论文 模型地址 相关资料
22 FLAN Google 2022-02 137B 该模型不涉及到预训练部分,因此没有预训练语料。 整理了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的复现与应用等;
  • 大厂算法刷题;

在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

【通览一百个大模型】FLAN(Google) 的相关文章

随机推荐

  • Chatgpt API调用报错:openai.error.RateLimitError

    Chatgpt API 调用报错 openai error RateLimitError You exceeded your current quota please check your plan and billing details
  • 常用图像增强方法,利用tf.keras来完成图像增强

    学习目标 知道图像增强的常用方法 能够利用tf keras来完成图像增强 大规模数据集是成功应用深度神经网络的前提 例如 我们可以对图像进行不同方式的裁剪 使感兴趣的物体出现在不同位置 从而减轻模型对物体出现位置的依赖性 我们也可以调整亮度
  • allure在python环境下的集成使用

    python环境下 集成allure 首先打开Allure官网 https docs qameta io allure 选择对应平台的安装方式 最下面有通用安装方法 1 去maven central下载一个新版本的zip 2 下载到本地后解
  • 【手写一个RPC框架】simpleRPC-02

    目录 前言 实现 项目创建 依赖配置 common service client server 文件结构 运行 本项目所有代码可见 https github com weiyu zeng SimpleRPC 前言 在simpleRPC 01
  • Flask - 应用上下文

    目录 一 应用上下文 二 current app 在任何地点 获取flask app对象 三 g 单次请求的数据存储字典
  • 关于Unity3D中的Debug类的一些函数内容

    这篇文章主要是我对Debug类中的一些个人理解以及一些Debug的方法 请大家理性阅读 有错误可以私聊本人指出 Unity3DEngine Debug 这中间可能包含了一些常用的debug方法 比如下面这个黑科技 这是我在学习debug类的
  • 实时脑波和眼动连通性分析 python-(3)

    实时提取脑波的delta theta alpha beta 对于baseline的比率差 import os import pandas as pd import numpy as np def mkdir path 3 folder os
  • 使用rke2安装高可用k8s集群

    文章目录 使用rke2安装高可用k8s集群 使用rke2安装高可用k8s集群 服务器rke集群节点角色规划 用户 主机名 内网IP SSH端口 系统 角色 root rke server 01 192 168 2 131 22 CentOS
  • MySql操作笔记(表查看、删除、行数据删除...)

    1 显示表的结构 1 desc table name 2 describe table name 3 show columns from table name 2 显示表中所有内容 select from table name 3 行数据删
  • RS232以及RS485的一些理解

    今天 在吾爱PLC网站上阅读了关于PLC通讯的相关知识 讲得十分详细 之前一直搞不懂RS232协议 RS485协议 MODBUS协议 通过前几天在十堰的实习 在口罩生产线上的对嵌入式板卡与伺服驱动器以及HMI的连接时 查阅了一些关于通讯的知
  • C++中构造函数调用其他函数

    include
  • TTMS课程设计 管理员板块 前端页面+使用技术总结

    文章目录 一 部分实现效果 二 使用技术 三 主要代码 1 jq ajax提交表单数据 2 数据分页 3 省市区三级联动 4 选择日期 5 渲染数据 6 Session Storage在页面存储数据 7 使用es6模板字符串 四 总结 1
  • 1.数字图像识别

    传送门 https www lintcode com ai digit recognition overview 题目描述 MNIST是计算机视觉领域的 hello world 数据集 自1999年发布以来 这种手写图像的经典数据集已经成为
  • CV计算机视觉核心09-图像分割FCN(Penn-Fudan Database数据集)

    CV计算机视觉核心09 图像分割FCN Penn Fudan Database数据集 Penn Fudan Database数据集下载地址 https www cis upenn edu jshi ped html 1 首先读取数据 Pen
  • 【错误解决】git报错:you are not allowed to push code to protected branches on this project

    场景回忆 本地修改需要退回到之前的版本 打算强制push本地版本覆盖远程版本 但是在git push force后出现了以下的错误 Fix GitLab error you are not allowed to push code to p
  • [556]python实现神经网络

    神经网络 人工神经网络的洋文是Neural Network 这个计算模型在上世纪40年代就出现了 但是直到2011 2012年由于大数据和深度学习的兴起 神经网络才得到广泛应用 参看wiki神经网络 https en wikipedia o
  • SSM(ssm)心得体会之一原理理解

    最近在中软学习ssm框架的知识在这里总结一下 以前开发BS架构的web项目时 像笔者这种菜鸟就是用html js css ajax写前台 servlet作为后台接收请求 再用jdbc操作数据库 用这样的方式实现 1 前台发送请求 gt 2
  • clock gate cell 时钟门控单元

    1 结构图 锁存器 与门 D触发器 latch或reg 用于同步使能信号 防止出现亚稳态和毛刺 与门 使能信号无效时 关断模块输入时钟 D触发器 简化的reg 2 为什么需要clk gate 模块不工作时 clk翻转浪费功耗 模块 reg相
  • rsync: mkstemp ... failed: Operation not permitted

    今天在整理文件时遇到了下面的错误 rsync mkstemp abc def txt dm1u5x failed Operation not permitted 1 说说我的情况 我的 abc 目录是一个独立的 mount point 只有
  • 【通览一百个大模型】FLAN(Google)

    通览一百个大模型 FLAN Google 作者 王嘉宁 本文章内容为原创 仓库链接 https github com wjn1996 LLMs NLP Algo 订阅专栏 大模型 NLP 算法 可获得博主多年积累的全部NLP 大模型和算法干