openAI给出chatGPT的四个功能
- fix code
- chatgpt是有道德的
- chatgpt是理解上下文的,8000字以内是可以联系上下文的
- chatgpt是理解自己的局限性
GPT可以支持多轮对话
一般openAI是先发模型和博客,再发论文
InstructGPT
发表在2022.3.4
训练语言模型,使他能预测你问的东西
标一点数据,然后再做一点微调
OpenAI Alignment openAI的联合项目 有两个team leader
摘要
把语言模型做大不是用户的本意,在AI模型的落地上,安全性和有效性是非常重要的。
语言模型的输出非常灵活,这也导致输出错误的概率会更大一些。
大家对创业公司(openAI)的容忍度会更大一些
把语音模型和人类意图做align,方法是把语言模型和人类反馈做微调
在openAI的API收集了很多问题,然后对模型做了微调
又收集了一些数据,收集了他一个问题的很多答案,做了一个排序的数据集,看哪个回答更好点
Introduction
问题、方法、结果
训练的目标函数和想要让他干的事情是不一样的,目标函数是按照预测下一个词是什么来做的,但是我们想让他干的事情是能够有帮助的无害的事情
方法:RLHF 强化学习 让模型来生成符合人偏好的答案
Step1
首先写了一堆问题,作为模型的输入的数据
让人来写答案
问题+答案,拼成一段话,用这些数据去训练GPT-3
SFT有监督的微调
训练出了第一个模型
Step2
给一个问题,给SFT生成答案
生成四个问题的答案
让人来标四个答案谁好谁坏,得到排序的标注
训练一个RM模型(rewarded model)
给prompt,给输出,并得到一个答案的分数
Step3
微调SFT
用RM的分数去微调SFT,使得他的参数更加可以得到比较高的分数
最后训练出来的模型就叫intruct GPT
工作人员觉得instructGPT的答案会比GPT3好很多
在某一个任务上做微调,在别的任务上的效果可能会下降
微调对数据还是比较敏感的
模型具有泛化性
模型还是会犯一些简单的错误
更像一个玩具,而不是一个工具
数据集
prompt的来源
- 标注人员去写了很多问题
- 让标注人员写一个指令
- 用户给提供了一些支持
训练了第一个instructGPT
放在他们的playground里,再把问题采集回来做了一些筛选
得到了更多的prompt,按照用户来划分,并把用户的个人信息过滤掉
Human-in-the-loop
数据集的use-case: Generation、openQA、brainstorming、classification、extract
scaleAI数据标注的公司,怎么样去挑人 Human data collection
长对话的判断都是比较模棱两可的任务
并且要同意对方的评测
数据标注有很多技术是可以借鉴的
训练
RM:pairwise排序损失
对9个答案排序,产生了36对排序的信息
有两两比较信息
RL
PPO目标函数+原始GPT3的目标函数
在强化学习里,模型叫Policy
环境会发生变化
学习一个人的排序来给一个实时的反馈
结论
给定一些标注数据,在一个大的语言模型上去训练
优化帮助性
更多推荐
【论文阅读】Instruct GPT论文阅读
发布评论