SFT loss 计算的那些坑(多轮合并/packing)
Micheli
2024-09-25 00:00:00
1308
该内容讨论了神经网络训练中损失函数的复杂性,特别关注了SFT(安全模糊技术)损失计算及其对LLM(大型语言模型)等语言模型的影响。
该内容讨论了神经网络训练中损失函数的复杂性,特别关注了SFT(安全模糊技术)损失计算及其对LLM(大型语言模型)等语言模型的影响。它深入探讨了使用SFT进行训练的挑战,例如需要仔细管理input_ids和标签,并介绍了像“packing”这样的概念来优化训练过程。这篇内容的重要性在于探讨如何在加速神经网络训练的同时保持损失函数的完整性。它还涉及到使用因果关注掩码以及填充和截断数据对训练效果的影响。这份指南对于对高级训练技术和优化大规模语言模型损失函数感兴趣的机器学习从业者可能非常有价值。-SFT损失是一种将多个输入打包为单个序列的方法。
-SFT损失函数计算每个输入的损失,并将其除以令牌的数量。
-SFT损失的公式为(l_1/n_1+l_2/n2+l_3/n_3)/3,其中l_i是输入i的损失,n_i是输入i的令牌数。
-SFT损失可以与因果注意力掩码一起使用,以确保正确的词元会计。
-PyTorch交叉熵损失函数可用于计算损失,并可选择使用“均值”方法。
版权声明:
创新中心创新赋能平台中,除来源为“创新中心”的文章外,其余转载文章均来自所标注的来源方,版权归原作者或来源方所有,且已获得相关授权,若作者版权声明的或文章从其它站转载而附带有原所有站的版权声明者,其版权归属以附带声明为准。其他任何单位或个人转载本网站发表及转载的文章,均需经原作者同意。如果您发现本平台中有涉嫌侵权的内容,可填写
「投诉表单」进行举报,一经查实,本平台将立刻删除涉嫌侵权内容。