Echo

Echo 关注TA

大家好,我是Echo!

Echo

Echo

关注TA

大家好,我是Echo!

  •  普罗旺斯
  • 自由职业
  • 写了306,264,086字

该文章投稿至Nemo社区   资讯  板块 复制链接


GPT-3 回答问题不靠谱?OpenAI 找来人类“调教师”,终于给教明白了

发布于 2022/01/28 14:53 556浏览 0回复 2,011

如何用几句话向 6 岁儿童解释登月?GPT-3 给出的答案实在离谱:向孩子解释引力理论、相对论、大爆炸、进化论……

为了修正这样的“bug”,OpenAI 在今天推出了全新的“指导版 GPT”——InstructGPT 模型。InstructGPT 甚至不用出全力,只要 13 亿参数,就能比 1750 亿参数的模型效果更好。来看看 InstructGPT 是怎么回答的吧:

人类去月球,拍摄他们所看到的,然后返回地球,我们就看到了他们。

(People went to the moon, and they took pictures of what they saw, and sent them back to the earth so we could all see them.)

这一下子就合理多了,6 岁孩子肯定能懂。我们再看一个例子,GPT-3 再次被 InstructGPT 无情碾压,不过这次换上了完全版,也就是 1750 亿参数的。

请问:以下这段 C 代码的用途是什么?

def binomial_coefficient(n, r):  C = [0 for i in range(r + 1)];  C[0] = 1;  for i in range(1, n + 1):    j = min(i, r);    while j > 0:      C[j] += C[j - 1];      j -= 1;return C[r]

GPT-3 的回答俨然是一台“复读机”:(叫你回答问题,没让你出题啊!)

A. to store the value of C[0]

B. to store the value of C[1]

C. to store the value of C[i]

D. to store the value of C[i - 1]

如果这玩意给 GitHub 的自动编码工具 Copliot 用,真的会把程序员带到沟里。

InstructGPT 的回答简直就是计算机考试标准答案:

这段代码中的数组 C 是用来存储二项式系数值的。它用于计算给定 n 和 r 值的二项式系数,并将结果存储在函数的最终返回值中。

除了以上的案例外,还能避免将“淘气”和“女性”关联,或者将“犹太人”和“金钱”关联,避免触及性别种族歧视话题。

从人类反馈中学习

OpenAI 是如何升级 GPT-3 的?InstructGPT 背后的研究人员使用“从人类反馈中强化学习”(RLHF),让 GPT-3 的输出更准确,并且有害性更低。

RLHF 总共分三步:

第一步,找一些人写下示范答案,来微调 GPT-3 模型,训练监督模型 baseline。

第二步,收集某个问题的几组不同输出数据,由人类对几组答案进行排序,在此数据集上训练奖励模型。

第三步,使用 RM 作为奖励函数,近端策略优化(PPO)算法微调 GPT-3 策略,以强化学习方法最大化奖励。

这种方法存在一个局限性在于它引入了“对齐问题”,因为模型仅根据对齐客户的 NLP 任务,那么可能会在学术 NLP 任务上的表现更糟。

OpenAI 发现了一个简单的算法更改,可以最大限度地减少该问题:在强化学习微调期间,混合用于训练 GPT-3 原始数据的一小部分,并使用正态似然对最大化(normal log likelihood maximization)来训练这些数据。这大致能保持内容安全和符合人类偏好,同时缓解学术任务上的效率下降,在某些情况下甚至超过了 GPT-3 baseline。

实验结果

在公开数据集上,InstructGPT 与 GPT-3 相比产生的模仿假象更少、有害性更低。而且 InstructGPT 编造事实的频率较低。

而且人类实际感受中也给 InstructGPT 打分更高。

但 OpenAI 表示 InstructGPT 仍有许多要改进的地方,比如接受的都是英语的训练,因此偏向于英语文化价值观,给语句标注的人的偏好,也会影响 GPT-3 的“价值观”。总之,纠正 GPT-3 的三观,还有很长的路要走。


本文由LinkNemo爬虫[Echo]采集自[https://www.ithome.com/0/600/988.htm]

点赞(0)
点了个评