大模型预训练-数据准备

名词释义

  • 预训练:大模型训练的第一个阶段
  • 数据集污染:预训练数据中包含测试数据中的部分或全部

数据来源

  • 通用数据
    • 网页
    • 书籍
  • 专用数据
    • 多语文本
    • 科学论文
    • 代码

数据预处理

质量过滤
  • 基于启发式规则
    • 规则建议
      • 基于语种过滤(过滤不支持的语种数据)
      • 基于简单统计指标过滤(针对论坛数据,过滤掉任何点赞数少于 3 的用户评论)
      • 基于关键词过滤(针对网页数据,过滤掉 HTML 标签)
    • 优缺点
      • 优点:清晰效率高
      • 缺点:质量差
  • 基于分类器规则
    • 实际方式:使用一个训练好的文本分类器来分类
    • 具体方案:
      • 轻量级模型
        • 优点:效率高
        • 缺点:准确度、精度差
      • 可微调预训练模型
        • 优点:可微调
        • 缺点:通用性、泛用性有限
      • 闭源大模型API
        • 优点:能力强
        • 缺点:成本高、灵活性差
    • 优缺点
      • 优点:质量高
      • 缺点:效率低
敏感内容过滤
  • 过滤内容
    • 有毒内容
    • 隐私内容
  • 过滤方法
    • 基于启发式方法
    • 基于分类器方法
去重
  • 方法
    • 计算粒度
    • 去重匹配方法
      • 精确匹配
      • 近似匹配(哈希)

词元化(分词)

  • 定义:将原始文本分割成可被模型识别和建模的词元序列,作为模型的输入数据
  • 作用:生成模型输入数据
  • 特殊说明:模型的输入输出都需要词元化,输出来的词元化数据经过反词元化,抓换成人类能直接阅读的数据
  • 词元化方法
    • 基于词汇分词
    • 子词分词器
      • 分词器关注点
        • 无损重构(可分词可还原)
        • 高压缩率
        • 不同数据类型要使用不同分词算法(比如数字分词就不能用BPE)
      • 常用分词算法:
        • BPE:从字符开始,逐步合并出现频率最高的字符对
        • WordPiece:类似BPE,但会在合并过程中考虑子词概率
        • Unigram:从一个初始的子词字典开始,逐步移除低频子词,保留高概率子词

数据调度

调度解决的问题:
  • 各种数据混合比例
  • 各种数据源用于训练的顺序
数据混合(比较依赖经验)
  • 数据混合常见策略
    • 增加数据多样性
    • 优化数据混合(使用代理小模型测试验证已获得某种最佳比例)
    • 优化特定能力(增加特定能力对应的原始训练数据比例)
  • 举例:LLaMA
    • 80%网页
    • 6.5%代码
    • 4.5%书籍
    • 2.5%科学论文
数据课程(训练顺序)
  • 定义:按照特定顺序安排预训练数据进行模型训练
  • 举例:
    • 代码大模型(CodeLLaMA):2T通用->500B代码
    • 数学大模型(L1emma):基于CodeLLaMA,最后追加50-200B数学数据
    • 长文本大模型(CodeLLaMA): 基于LLaMA-2,追加2.5T词元-4K上下问窗口->20B词元,16K上下文窗口

预训练数据准备示例(YuLan)

  • 数据收集
    • 网页
    • 代码
    • 书籍
    • 科学论文
    • 知乎、维基百科
  • 数据清洗
    • 质量过滤:启发式方法,去除低质量及有害数据
    • 去重、隐私去除:采用MinHash算法
    • 词元化:LLaMA的词表+中文数据BPE之后的词元化数据
  • 数据调度:
    • 采用代理小模型进行探索获得具体数据混合及数据课程数据

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

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

相关文章

kafka 消费者

消费者 消费者。消费者连接到Kafka上并接收消息,进而进行相应的业务逻辑处理。 消费组 消费者负责订阅Kafka中的主题,并且从订阅的主题上拉取消息。 消费组:每个消费者都有一个对应的消费组,每一个分区只能被一个消费组中的一个…

如何控制代码质量

大家好,我是嘻嘻,你们厂里是如何控制代码的质量的说道说道 最近的工作,主要是要偏重项目的质量管理这块,项目管理的现在一切以质量为导向,成本和质量冲突优先质量,进度与质量冲突优先质量,真正的…

方法引用 异常 file

目录 一.方法引用 1.方法引用概述 2.引用静态方法 3.引用成员方法 i.引用其他成员方法 ii.引用本类成员方法 iii.引用父类成员方法 4.引用构造方法 5.其他调用方式 i.使用类名引用成员方法 ii.引用数组的构造方法 二、异常 1.异常的作用 2.异常的处理方式 i.JVM…

6.Python学习:异常和日志

1.异常的抓取 1.1异常的概念 使用异常前: print(1/0)使用异常后:错误提示更加友好,不影响程序继续往下运行 try:print(10/0) except ZeroDivisionError:print("0不能作为分母")1.2异常的抓取 第一种:如果提前知道可…

2020 ICPC Shanghai Site B. Mine Sweeper II 题解 构造 鸽巢原理

Mine Sweeper II 题目描述 A mine-sweeper map X X X can be expressed as an n m n\times m nm grid. Each cell of the grid is either a mine cell or a non-mine cell. A mine cell has no number on it. Each non-mine cell has a number representing the number of…

Spring Boot使用@RestController注解的控制器(Controller)返回Map时,遇到序列化问题

在Spring Boot中使用RestController注解的控制器(Controller)返回Map时,如果遇到序列化问题,这通常是因为Map中的某些值类型无法被Spring Boot默认的JSON序列化库(通常是Jackson)正确处理。以下是一些可能导…

遍历请求后端数据引出的数组forEach异步操作的坑

有一个列表数据,每项数据里有一个额外的字段需要去调另外一个接口才能拿到,后端有现有的这2个接口,现在临时需要前端显示出来,所以这里需要前端先去调列表数据的接口拿到列表数据,然后再遍历请求另外一个接口去拿到对应…

【python技巧】pytorch网络可视化

参考 https://blog.csdn.net/qq_40726937/article/details/106122082 1. graphviz torchviz 环境安装简单 pip install torchviz pip install graphviz代码 import torch from torchvision import model from torchviz import make_dotmodels models.resnet18() x torc…

生产环境中秒杀接口并发量剧增与负载优化策略探讨

✨✨谢谢大家捧场,祝屏幕前的小伙伴们每天都有好运相伴左右,一定要天天开心哦!✨✨ 🎈🎈作者主页: 喔的嘛呀🎈🎈 目录 引言 1. 实施限流措施 1.1 令牌桶算法: 1.2 漏…

红酒知识百科:从入门到精通

红酒,这个深邃而迷人的世界,充满了无尽的知识与奥秘。从葡萄的选择、酿造工艺,到品鉴技巧,每一步都蕴藏着深厚的文化底蕴和精细的技艺。今天,就让我们一起踏上这场红酒知识之旅,从入门开始,逐步…

gpt-4o看图说话-根据图片回答问题

问题:中国的人口老龄化究竟有多严重? 代码下实现如下:(直接调用openai的chat接口) import os import base64 import requests def encode_image(image_path): """ 对图片文件进行 Base64 编码 输入…

【刷题汇总 -- 求最小公倍数、数组中的最长连续子序列、字母收集】

C日常刷题积累 今日刷题汇总 - day0081、求最小公倍数1.1、题目1.2、思路1.3、程序实现 -- 穷举法1.2、程序实现 -- 辗转相除法 2、数组中的最长连续子序列2.1、题目2.2、思路2.3、程序实现 3、字母收集3.1、题目3.2、思路3.3、程序实现 4、题目链接 今日刷题汇总 - day008 1、…

Windows C++ vs2022环境中下载、安装和使用osmesa

第一步:安装 MinGW-w64 请参考这篇文章进行安装: 在Windows中安装MinGW-w64最新版本 第二步:安装DirectX SDK 请参考这篇文章进行安装: 下载安装Microsoft DirectX SDK(June 2010) 第三步:安装Windows SDK 请参考这篇…

重定向(Redirect)和转发(Forward)

目录 重定向(Redirect) 转发(Forward) 在HTTP通信和Web开发中,重定向(Redirect)和转发(Forward)是两种常见的导航机制,它们各自具有不同的特点和适用场景。 forward是转发,foward url不会发生改变,forward可以共享request里的数据,forward 比 redirect 效率高。…

LeetCode 算法:课程表 c++

原题链接🔗:课程表 难度:中等⭐️⭐️ 题目 你这个学期必须选修 numCourses 门课程,记为 0 到 numCourses - 1 。 在选修某些课程之前需要一些先修课程。 先修课程按数组 prerequisites 给出,其中 prerequisites[i]…

oracle索引字段存储数据过长,导致索引失效

1:短位数据,索引生效 2:长位索引,索引不生效 此问题发现于6月中旬,线上问题优化。引以为戒。 解决: 并未解决索引不生效问题, 但是基于优化查询,是的查询保持毫秒级

第一个基于FISCOBCOS的前后端项目(发行转账)

本文旨在介绍一个简单的基于fiscobcos的前后端网站应用。Springbootjs前后端不分离。 所使用到的合约也是一个最基本的。首先您需要知道的是完整项目分为三部分,1是区块链平台webase搭建(此项目使用节点前置webase-front即可),2是…

[stm32f407]GPIO配置方式

GPIO模式: GPIO_InitStructure.GPIO_ModeGPIO_Mode_IN;GPIO_InitStructure.GPIO_OTypeGPIO_OType_PP;//是否需要GPIO_InitStructure.GPIO_PinGPIO_Pin_11;GPIO_InitStructure.GPIO_PuPdGPIO_PuPd_UP;//上拉GPIO_InitStructure.GPIO_SpeedGPIO_Speed_50MHz; GPIO_Mo…

什么是防抖和节流?如何理解它们并在不同的场景条件下灵活运用?

🙋‍♂️ 什么是防抖和节流? 防抖(Debouncing)和节流(Throttling)是两种常见的性能优化技术,常用于控制某些操作(例如事件处理器)的频率,从而减少资源消耗并…

Diffusion 公式推导 2

Diffusion 公式推导 中对 DDPM 进行了推导,本文接着对 DDIM 进行推导。 目录 六. 模型改进 六. 模型改进 从扩散模型的推理过程不难看出,DDPM 有一个致命缺点 —— 推理速度过慢,因为逆扩散是从 x T x_{T} xT​ 到 x 0 x_{0} x0​ 的完整过…