Back to blog
    当你的模型只有 10 亿参数时,数据分布更加重要
    data-qualitysmall-language-modelson-device-aimodel-distillationdata-preparationsegment:enterprise

    当你的模型只有 10 亿参数时,数据分布更加重要

    700 亿参数的模型可以靠蛮力处理嘈杂数据。5 亿参数的模型则不行。以下是小语言模型对数据分布问题指数级更敏感的原因,以及如何通过针对性过滤和质量评分来解决。

    EErtas Team·

    700 亿参数的模型很宽容。给它嘈杂的数据、不平衡的类别、不一致的格式和变长的示例——它会透过噪声学习。它有 700 亿个参数来吸收模式、补偿数据质量问题,并仍然产生合理的输出。

    5 亿参数的模型没有这种奢侈。它只有 5 亿个参数来编码完成任务所需的一切。每个嘈杂的训练示例都浪费容量。每个类别不平衡都会创建盲点。每个格式不一致都会引入一种失败模式。

    这不是一个微小的差异。它是模型在生产中能否工作的区别。

    容量问题

    将模型参数想象为预算。700 亿模型有 700 亿美元的预算来学习模式。它能负担花 5 亿美元在噪声容忍上,仍然有足够的预算用于实际任务。5 亿模型只有 5 亿美元的预算。如果它花 5000 万学习嘈杂示例,那就是总容量的 10%——没了。

    这个类比直接映射到实际结果:

    700 亿规模: 在训练集中添加 20% 的嘈杂示例通常会将准确率降低 1-3 个百分点。模型有足够的容量来尽管有噪声仍能学习信号。

    5 亿规模: 同样 20% 的嘈杂示例将准确率降低 8-15 个百分点。模型没有足够的容量在这个比例下区分信号和噪声。它将噪声作为信号来学习。

    这意味着对于不到 10 亿参数的模型,数据整理不是锦上添花的优化步骤。它是模型能否正常运作的必要工程步骤。

    类别不平衡的影响更大

    考虑一个二分类任务——检测客服消息是否需要升级。在真实数据中,15% 的消息需要升级,85% 不需要。

    在此分布上训练的 700 亿模型: 总体准确率 94%,升级类别召回率 87%。模型有足够的参数,尽管看到的示例较少,仍能很好地学习少数类模式。

    在此分布上训练的 5 亿模型: 总体准确率 91%,但升级类别召回率仅 62%。模型实际上学会了将"不升级"作为默认预测,只捕获最明显的升级信号。在生产中,38% 需要升级的消息被遗漏。

    解决方案不是更多数据。在相同 85/15 分布下再增加 100,000 个示例没有帮助——模型已经学习了分布,而且学错了。解决方案是重新平衡:过采样少数类或欠采样多数类,以实现 50/50 或 60/40 的训练分布。

    对于不到 10 亿参数的模型,训练数据中的类别平衡不是最佳实践——它是少数类获得可接受性能的先决条件。

    长度分布导致静默失败

    如果你的生产部署处理 50-200 token 的输入,但训练数据包含从 10 到 4,000 token 不等的示例,模型学习的模式跨越了整个长度范围。对于 700 亿模型,这没问题——它有容量优雅地处理变长输入。

    对于 5 亿模型,长训练示例产生两个问题:

    容量浪费。 模型花费参数学习处理它在生产中永远不会见到的 2,000 token 输入。这些参数无法用于提高 50-200 token 输入的性能。

    注意力稀释。 在 Transformer 模型中,注意力分布在上下文中的所有 token 上。长训练示例教模型广泛分散注意力。短生产输入因此获得过度分散的注意力,降低了模型对重要 token 的关注度。

    解决方案:过滤训练数据以匹配生产长度分布。测量你生产输入长度的第 10-90 百分位。丢弃该范围之外的训练示例。对于处理 50-200 token 输入的模型,你的训练数据应包含 30-250 token 的示例——比生产略宽以提供余量,但不会大幅偏离。

    词汇覆盖和嵌入浪费

    700 亿模型有一个可以有效表示超过 100,000 个唯一 token 的嵌入层。5 亿模型理论上通常具有相同的词汇量大小,但其较小的嵌入维度意味着它无法以相同的丰富度表示每个 token。

    如果你的训练数据包含 50,000 个唯一 token,但你的生产领域使用 5,000 个,那么 90% 的词汇在消耗嵌入容量而不贡献生产性能。

    实际影响: 在领域限制数据(5,000-10,000 个唯一 token)上训练的 5 亿模型在领域内任务上通常比在广泛词汇数据上训练的相同架构高出 5-8 个百分点。模型将有限的嵌入容量集中在重要的 token 上。

    如何实施: 计算训练数据中的 token 频率。如果一个 token 在整个数据集中出现少于 5 次,要么移除包含它的示例,要么用更常见的同义词替换稀有 token。标准化术语:如果你的数据交替使用"客户「和」用户",选择一个并统一。

    去重不是可选的

    来自大语言模型的合成数据倾向于重复常见模式。来自企业的人类生成数据倾向于包含多个模板文档、标准程序和公式化通信的副本。

    在 700 亿规模下,适度重复(10-15% 近重复示例)影响最小。模型有足够的容量学习每个近重复中的唯一信号。

    在 5 亿规模下,相同的 10-15% 重复导致模型过度加权重复的模式。如果你的样板电子邮件模板出现 500 次,而你的边缘情况升级示例出现 5 次,模型学习产生样板的强度比学习升级高 100 倍——即使升级检测才是实际的生产任务。

    使用 MinHash 或 SimHash,相似度阈值为 0.80-0.85。移除近重复并只保留每个簇中质量最高的变体。这通常将数据集大小减少 15-30%,同时将模型性能提高 3-7 个百分点。

    小模型的质量评分

    标准质量评分方法使用困惑度、嵌入一致性或统计异常值检测。对于不到 10 亿参数的模型,这些需要不同的校准。

    使用学生模型进行评分,而非教师模型。 如果你使用 700 亿模型评分训练示例,一切看起来都是高质量的,因为 700 亿模型理解一切。使用目标 5 亿模型(或类似大小的模型)评分示例。相对于学生模型高困惑度的示例超出了其学习能力,应该被移除。

    针对生产评分,而非训练。 训练示例的质量应该通过它与生产任务的相关性来衡量,而不是其内在质量。一篇精心撰写的 2,000 词分析如果生产任务是 50 词分类,那它就是低质量的训练示例。

    积极应用质量阈值。 对于 700 亿模型,包含质量评分最低 25% 的示例通常影响可以忽略不计。对于 5 亿模型,移除最低 25% 可将准确率提高 4-8 个百分点。阈值至少应在第 25 百分位,对于最受限的部署应在第 40 百分位。

    Ertas Data Suite 用于小模型数据准备

    Ertas Data Suite 的清洗模块提供质量评分、长度过滤、去重和分布分析,并根据目标模型大小进行校准。指定你的目标(5 亿、10 亿、30 亿),过滤阈值会自动调整。

    领域专家直接在应用中审查标记的示例——无需 Python 环境。每个过滤决策都记录有完整的审计跟踪,以满足监管合规要求。

    结果:每个示例都赢得了它的位置的数据集。没有容量浪费在噪声、不平衡、长度不匹配或重复上。模型有限的参数花在生产中重要的模式上。

    预约发现会议 讨论你的小模型部署的数据分布优化。

    Turn unstructured data into AI-ready datasets — without it leaving the building.

    On-premise data preparation with full audit trail. No data egress. No fragmented toolchains. EU AI Act Article 30 compliance built in.

    Keep reading