你的LLM在胡言乱语?让100个AI重获新生的RLHF工具来了!

文摘   科技   2024-08-15 18:03   浙江  

过去两年,ChatGPT、Claude争奇斗艳,国内也掀起百模大战群雄逐鹿,各个模型在面对千奇百怪的问题仍对答如流,似乎已经打破了机器和人的边界,这一工作的背后是大语言模型(Large Language Model,LLM)一个新的训练范式:RLHF(Reinforcement Learning from Human Feedback),即基于人类反馈的强化学习。这个概念拆开来每个字都认识,但是连起来就读不懂了。


强化学习的介绍

              
在电影中,我们经常看到机器人通过学习来提高自己的能力。在现实世界中,强化学习就是让机器通过“试错”来学习的一种方式。想象一下,你教一个小孩子骑自行车,你会告诉他“做得好”,或者在他摔倒时说“再试一次”。这就是强化学习的基本思想:通过奖励和惩罚来引导学习过程。
        
人类反馈的介绍
       
但是,机器怎么知道它做得好不好呢?这就是人类反馈发挥作用的地方。当我们告诉机器“这样做很棒”,或者“那样做不行”,我们实际上是在给机器提供反馈,帮助它更好地学习。

以前,我们通过基于规则的文本生成指标(如BLUE和ROUGE)来衡量机器生成文本与参考文本之间的相似度,但是不能很好地评估文本的语义质量和上下文连贯性。
        

比如: 

参考文本:今天天气很好,适合出去散步。   

生成文本(高BLUE得分但低语义质量):今天散步天气很好,适合出去。   

这个生成的文本每个单词都与文本匹配,BLUE得分会很高,但是生成的语序混乱,这种表达并没有任何意义。

      

那么为什么不直接让人来对模型生成的内容进行评分或提供反馈呢?让模型的输出更符合用户需求、更自然和更有用。

     

这便是 RLHF :使用强化学习的方式直接优化带有人类反馈的语言模型


如何进行 RLHF ?

       

主要分为三步:


  1. 收集人类反馈:通过问卷、对话或其他形式,让人类对LLM模型的输出进行评分或提供反馈。

  2. 建模人类偏好:利用收集到的人类反馈,训练一个奖励模型(Reward Model),也叫偏好模型(Preference Model),该模型能够预测人类对不同输出的偏好。

  3. 强化学习:使用偏好模型作为奖励函数,通过强化学习算法(如策略梯度、Q学习等)来优化LLM模型的行为,使其产生的输出更符合人类的偏好。

   

第一步:收集人类反馈——使用MooreData数据工程平台 RLHF 工具

    

整数智能MooreData智能数据工程平台重磅推出 RLHF 工具,支持文本、图像的 RLHF 标注(视频和音频可联系整数智能数据专家定制开发):

    

    MooreData智能数据工程平台-RLHF标注工具


在任务创建时,选择 RLHF 工具即可使用:

    

    

团队用户速速点击 https://app.molardata.com/ 体验吧!

    

第二步:建模人类偏好——了解人们喜欢什么

     

RM(Reward Model,奖励模型)是 RLHF 的核心。这个模型通过一系列文本输入,输出一个数值,这个数值代表了人类对这些文本的偏好,就像是一个评委,它告诉我们,人们是喜欢还是不喜欢某个文本。它通过看一些文字,然后给这些文字打分,分数越高,说明人们越喜欢。

   

有两种方式来建立这个奖励模型:

   

  1. 端到端建模:直接用一个语言模型(LM)来处理整个过程,就像是一个全能的评委,从头到尾都能搞定。

  2. 模块化系统建模:先对输出进行排序,再将排序结果转化为奖励数值。就像是一个团队,先排序,再给分数。


第三步:强化学习——让LLM更聪明

    

强化学习就像是让LLM参加一个马拉松,通过不断的训练来提高成绩。目前大家使用策略梯度强化学习(Policy Gradient RL)算法和近端策略优化(PPO)来微调语言模型的部分或全部参数。由于微调整个拥有数十亿到上百亿参数的模型成本很高,研究人员提出了低秩适应(LoRA)和 DeepMind 的 Sparrow LM 等方法来降低成本。而PPO算法已经存在较长时间,有很多关于其原理的指南,因此成为 RLHF 中的有利选择。

    

PPO算法的应用

   
PPO算法就像是LLM的教练,它通过以下步骤来帮助语言模型提高:
    
  1. 输入提示:将提示输入初始语言模型和当前微调的语言模型,得到输出文本y1和y2。即给语言模型一些提示,让它回答。
  2. 计算奖励:将当前策略生成的文本传递给奖励模型,得到一个奖励值$rθ$。即根据评委的打分来奖励LLM。
  3. 惩罚项:比较两个模型生成文本的差异,计算一个惩罚项,通常使用输出词分布序列之间的Kullback–Leibler(KL)散度的缩放,即$r = r_{\theta} - \lambda r_{\text{KL}}$。如果去掉惩罚项,模型可能会生成乱码文本来愚弄奖励模型提供高奖励值。所以如果语言模型的回答和原来差太多,就会扣分,这样语言模型就不会乱来。
    
举例说明
   
假设我们有一个语言模型,它接受提示“今天的天气怎么样?”并返回一个文本输出。  
    
这个LLM有两个版本,一个是初始模型,一个是当前经过上述步骤微调后的模型。初始模型输出“今天阳光明媚”,微调后的模型输出“今天的天气非常好,适合出门散步”。我们将这两个模型的输出都传递给奖励模型,奖励模型给初始模型的输出一个较低的奖励值,给微调后模型的输出一个较高的奖励值。然后,我们计算两个版本模型输出的差异,添加一个惩罚项,防止模型生成与初始模型偏差过大的文本。最终,我们使用这个奖励值来优化模型,使其生成更符合人类偏好的文本。  

通过这种方式,LLM能够学习如何生成更自然、更有用的回答,从而更好地服务于人类。

参考文章:

https://openai.com/index/chatgpt/

https://openai.com/research/openai-baselines-ppo/

https://openai.com/research/instruction-following/

 

      

整数智能信息技术(杭州)有限责任公司,起源自浙江大学计算机创新技术研究院,致力于成为AI行业的数据领航员。整数智能也是中国人工智能产业发展联盟、ASAM协会、浙江省人工智能产业技术联盟成员,其提供的智能数据工程平台(MooreData Platform)与数据集构建服务(ACE Service),满足了智能驾驶、AIGC等数十个人工智能应用场景对于先进的智能标注工具以及高质量数据的需求。



      

目前公司已合作海内外顶级科技公司与科研机构客户1000余家,拥有知识产权数十项,通过ISO9001、ISO27001等国际认证,也多次参与人工智能领域的标准与白皮书撰写,也受到《CCTV财经频道》《新锐杭商》《浙江卫视》《苏州卫视》等多家新闻媒体报道。

  


    

            


        


点击「在看」
好内容大家分享

整数智能
整数智能作为AI行业的数据合伙人,我们提供专家级的数据标注工程平台与数据集解决方案(数据采集、数据清洗与数据标注)。
 最新文章