大模型训练语料(通俗易懂)第二篇

这一篇在前篇的基础上继续把“数据能用、可审计、能复现”的工程链条往前推:将怎么采样配比如何训得又稳又快的过程讲清楚。


七、 权重配比与混合采样

7.1 目的

决定各来源/语言/领域/长度的采样比例,做到 “主域稳定 + 长尾覆盖”

7.2 “三步走”策略:

  1. 分类:按 lang / domain / length_bucket / quality_score 等建类别桶。

  2. 配比:设定各类别占比,例如 主域 70% + 泛化域 20% + 长尾 10%

  3. 比重调配:引入温度采样 T 来动态调整长尾被选中的机会。通过温度T来调整初始占比(权重)。当设置温度  > 1 时会增加长尾机会,当温度 < 1时,会增加主域的权重。

  4. 抽样:按类别权重抽样,对近重复块施加惩罚权重,对关注的类别增加权重。

7.3 案例:

中文电商问答占 80%,英文通用问答占 10%,冷门知识文档 10%;在中文桶里,再按长度短/中/长 的原始配比 [ 0.7, 0.2, 0.1 ] :

        当温度T=1.2 → 约 [0.645 , 0.227 , 0.128](长尾从 0.10→0.128

        当温度T=0.7 → 约 [0.814 , 0.136 , 0.050](主域从 0.70→0.814

7.4 名词解释:

  • 温度采样(Temperature):对概率分布加温/降温,控制长尾被抽到的概率。

  • 主域/长尾:主域=你的核心业务领域;长尾=低频但必要的边角场景。


八、 训练样本构建

在第一至第七章节中做完数据“清洗、脱敏、去重、合规过滤、分块”等操作后,下一步就将数据按照目标来构成训练样本。

模型训练语料处理完成后,就可以按照所需的目的来进行模型的训练,常见模型预训练的目的是可以分为三个,第一,为了让模型学会自然语言的表示。第二、让模型学会理解上下文内容,预测词义。第三、根据理解的内容,进行内容生成。

8.1   Causal LM(自回归,decoder-only

  1. 用途:按顺序预测下一个 token。
  2. 概念:将多条短样本拼接到同一长度窗口,使用EOS样本分隔符隔离样本。
  3. Sequence packing(序列打包):当处理很短的句子,需要补齐固定长度,所以要加入填充,但是就会浪费内存,占空间。
  4. 屏障loss损失 使用<EOT> 标记样本边界,推理用 <EOS>停止。

8.2   遮挡式训练

目的:通过双向学习的方式,帮助模型训练理解能力、抗噪音能力,对于语篇的生成和编辑能力。

8.2.1 MLM(字/词遮挡式, encoder-only):
  1. 概念:只随机抽取部分字/词进行遮挡,让模型进行预测被遮挡的词/字的语义、作用。
  2. 用途:理解上下文、补充语义。
  3. 做法:
    1. 随机调15%(假设的量)的token 当考点,对这些token 80%进行遮挡,10%换成随机词,10%保持不变。

    2. 让这些被挑中的位置让模型去预测原词并记损失(其他位置不统计)。

    3. 每次训练都会重新抽位置,同一条句子被抽成不同的填空题去做。

  4. 被随机抽中的词会进行遮挡,被填上[mask]
  5. 基于BERT模型的编码器实现,强理解,不擅长生成。
8.2.2   T5(句/段遮挡式,encoder-decoder
  1. 概念:基于transFormer的预训练,T5是去遮挡一段句子,或者是百分比的片段,通过让模型学会“看上下文补缺口”,对其编辑/改写/补全。
  2. 用途:编辑/补全缺失的内容,重在生成。

8.4 名词解释

  • MLM/T5:遮挡式目标,填补被遮的片段。

  • Sequence Packing:把多个短样本拼成一个长窗口以减少 padding。

  • <EOT>:分隔样本符号,区别文本源,从而控制损失函数的计算范围。 ‌


总结

以上我们把如何配比采样、以及 如何稳妥训练样本及目标 拆开说清楚了。

如果你觉得本文对你有帮助,欢迎点赞 、收藏 、关注我获取更多与大模型干货!

也欢迎留言区交流你的理解和问题!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值