如何用几句话向 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 的三观,还有很长的路要走。
原版GPT-3居然要教孩子相对论?
杭州两天确诊22例,或已传播至第三代
“跳得很好,下次不要跳了!”危险超乎你的想象
此外,受制于续航里程短、充电不方便,混合动力汽车的需求依然旺盛。
目前还没有妥善解决,但相关视频和博文,都被平台限流。