趋近智
尽管理想情况是拥有充足、高质量、完美平衡且能反映目标任务或相关数据的数据,但现实往往不尽如人意。您会经常遇到相关数据稀缺,或数据中某些指令类型、主题或类别相较于其他类型显著不足(不平衡)的情况。数据稀缺和不平衡都给有效的微调带来了重大难题,可能导致模型表现不佳、出现偏差或无法可靠泛化。了解如何缓解这些问题对于大型语言模型的实际调整非常必要。
数据稀缺指的就是缺少足够的示例数据来充分训练模型,使其完成预期任务或具备特定专业能力。微调使用了预训练模型中已编码的丰富知识,这意味着通常您所需的数据量远少于从头开始训练。然而,“少”是相对的,特别是对于复杂的指令或高度专业化的特定场景。
数据稀缺的后果包括:
数据不平衡发生于示例在不同类别、指令类型或期望输出上的分布严重倾斜之时。例如,一个指令数据集可能包含数千个摘要示例,但只有少量用于创意写作提示。或者,一个用于医疗聊天机器人的特定数据适应集可能拥有大量常见疾病的数据,但罕见疾病的数据却很少。
数据不平衡的后果包括:
当面临有限的目标数据量时,可以考虑以下方法:
处理不平衡问题需要仔细操作,以确保模型在所有类别上都有效学习:
这些方法修改数据集本身,以在训练期间创建更平衡的分布。
重采样:
有针对性地数据获取/生成: 优先收集或专门为未充分代表的类别创建新数据。这通常是最有效的做法,尽管可能资源密集。如果使用合成数据生成(例如,使用另一个大型语言模型生成示例),请严格验证生成样本的质量和多样性。
微调数据集中不同指令类型示例的分布示例,突显了创意问答和翻译任务的代表性不足。
这些方法调整的是训练过程,而非数据本身。
加权损失函数: 修改标准损失函数,对少数类别示例上发生的错误施加更高的惩罚。这迫使模型更关注正确处理这些示例。一种常见的方法是为每个类别 的损失加权,使其与该类别的频率成反比。例如,权重 可以计算为:
这里 是训练示例的总数, 是类别数量, 是类别 中的示例数量。这需要在训练循环中仔细实现,以便在计算损失时应用正确的权重。PyTorch 和 TensorFlow 等库提供了应用样本或类别权重的机制。
关注相关指标: 在评估期间(第6章将详细讲解),不要仅仅依赖整体准确率。分析每个类别或类型下的性能指标,如精确率、召回率和F1分数。这能更清楚地展现模型如何处理不平衡问题。使用混淆矩阵来可视化类别间的错误分类。
处理数据稀缺和不平衡通常是一个迭代过程:
有效处理数据限制不仅仅是让模型进行训练;更是为了构建一个可靠、公平且能在所有预期任务和数据变体上表现良好的模型。这里讨论的策略提供了一套工具,用于解决大型语言模型微调中这些常见且重要的难题。
简洁的语法。内置调试功能。从第一天起就可投入生产。
为 ApX 背后的 AI 系统而构建
这部分内容有帮助吗?
© 2026 ApX Machine Learning用心打造