OpenChat

作者: 臻甄 | 来源:发表于2024-04-21 16:00 被阅读0次

    · 标题:OpenChat: Advancing Open-source Language Models with Mixed-Quality Data
    · 链接: https://arxiv.org/abs/2309.11235
    · 代码: https://github.com/imoneoi/openchat
    · 模型: https://huggingface.co/openchat
    · 演示: https://openchat.team/zh

    Motivation

    • 目前的SFT和RLHF方法都忽略了训练数据的质量,或是需要昂贵的人工标注
    • 探索一个新的可能的微调方案,让开源的LLMs可以使用简单的混合数据(高质量混合中等质量)提升效果(而非定制化的偏好数据)
    • 所谓混合数据,就是把GPT3.5(中等质量)和GPT4(高质量)的数据混合在一起。 ShareGPT dataset,3.5和4的数据分别采样128个对话,使用GPT4来打分

    Contribution

    • 提供了一个小数据集,包含高质量对话数据,和一个大数据集,包含次优的对话数据。且并不是偏好数据
    • 提出了一个新的嗯OpenChat framwork来平衡混合质量数据:Class Conditioned-RLFT(C-RLFT)


      Conditioned-RLFT

    Key Idea

    • 定义了 class-conditioned dataset and reward,使用来自GPT3.5和4的两个公开数据集,手工定义很粗糙的reward(coarse-grained reward):\alpha < 1
    • 通过C(onditioned)-RLFT来做微调,主要包括两个关键因素:

      (1)用明显的prompt tokens来区别不同的训练样本。
    (2)为了弥补coarse-grained reward的缺陷,跟OfflineRL那样用KKT条件推导了带KL限制的最大化reward的优化方式,把一个带限制的最大化目标问题,一个简单的奖励加权回归目标问题。
    • 本质上还是考虑到①目前开源的LLMs性能甚至比次优数据GPT3.5还要差,②(1)中的数据构造方式能帮助模型区别高质量回答和低质量回答

    Experiment $ Analysis

    • 效果1:在AlpacaEval,MT-bench上表现达到了13b模型的巅峰,Vicuna-bench上仅次于llama2-chat,openchat-13b是基于llama2基座微调的。相比较大于13b的模型也毫不逊色。 Table 1
    • 效果2:单独拉出来MT-bench上的表现,openchat-13甚至比llama-2-70b都要强,比好几个大于13b的模型都强。另外单独分析AGIEval的acc,可以看到虽然openchat-13b在Vicuna-bench上次于llama2-chat,但llama2-chat还是有比较大的能力不均衡问题的,不如openchat-13b的能力全面 Fig 2
    • 消融实验:如果without coarse-grained reward的设定,把所有数据都当做同等reward来训练,可以看到性能都有所下降;如果without condition的Prompt提示,无法分别那种回答来自低质量数据,也会损害性能。另外也分别在全量数据集、3.5、4的这3个数据集上分别SFT,效果都不如论文的方案。 image.png
    • 经过C-RLFT之后的模型对于GPT4和GPT3.5的数据更能区别:
    • 即便GPT4的数据量占比比较少,但GPT4数据(高质量)量的大小更加影响最终效果。
    • 测试了不同的Prompt类型,在assistant前面增加标识的性能更好。

    参考

    https://air.tsinghua.edu.cn/info/1007/2174.htm

    相关文章

      网友评论

          本文标题:OpenChat

          本文链接:https://www.haomeiwen.com/subject/zrkvxjtx.html