GPT-4论文阅读

GPT-4 Technical Report论文阅读

文章目录

    • GPT-4 Technical Report论文阅读
  • Abstract
    • 训练的稳定性
    • Training process
    • Predictable scaling
      • 训练的稳定性多么难能可贵
  • Capabilities
    • 考试成绩
    • 传统的benchmark
    • 语言方面的能力
    • Visual inputs
    • Steerability
  • Limitations
  • Risks & mitigations
  • 哪些工作可能会被GPT-4取代?
  • 未来研究方向

官方博客地址:https://openai.com/research/gpt-4

Abstract

本篇虽然是GPT-4的技术报告,但其中没有提到GPT-4的具体模型架构与训练过程,主要就是讲他的结果。

  1. GPT-4是一个多模态的模型,能够接受文本或者是图片的输入,最后输出纯文本
  2. GPT-4基本能够达到类人的表现,在事实性、可控性和安全性上有了很大的进步
    1. GPT-4在真实世界中与人还是存在差距,但是在很多具有专业性或者学术性的数据集或者任务上面上,GPT-4有时候能够达到甚至超过人类的水平
    2. GPT-4能够通过律师考试资格证考试,且能在所有参加考试的人中排名前10%(GPT-3.5在同样的考试中无法通过,且只能排到最后10%)

训练的稳定性

在此次GPT-4的训练过程中,训练表现出了前所未有的稳定性

  • 训练稳定
  • 硬件设施没有出错
  • 训练不会中断,一次训练直接跑到底
  • loss没有跑飞
  • 更重要的是,可以准确预测模型训练的结果(通过在小规模计算成本下训练出来的模型可以准确地预估扩大计算成本之后模型的最终性能)

对于大模型来讲,如果每次跑完训练才知道结果(参数的好坏,改进是否有效),花销比较大,一般会在较小的模型或者较小的数据集上做消融实验,验证之后再去大模型上进行实验。对于语言模型来讲,由于语言的扩展较大,所以导致在小规模模型上做的实验可能有效,但是换到大模型上就达不到想要的结果了;并且大模型上特有的涌现能力在小模型上无法观测。

Training process

与之前的GPT模型类似,GPT-4也是通过预测文章中下一个词的方式(Language Modeling Loss)去训练的,训练所用到的数据是公开数据(网络数据和公司所购买的数据)

  • 数据集非常大,包含了非常多的内容,比如数学问题的正确的解和不正确的解、弱推理、强推理、自相矛盾或者保持一致的陈述、各种意识形态和想法,以及更多的纯文本数据
  • 因为在大量的数据集上训练过,而且有的时候是在不正确的答案上训练过,所以预训练模型(Base Model)有些时候的回答跟想要得到的回答相差很远。为了能跟人的意图尽可能保持一致,并且更加安全可控,所以使用RLHF(Reinforcement Learning with Human Feedback)的方法对模型进行了微调

模型的能力看起来像是从预训练的过程中得到的,后续RLHF所进行的微调并不能够提高在考试中的成绩(如果没有好好调参,甚至会降低考试的成绩)

  • 模型所谓的涌现的能力靠堆数据、堆算力,然后用简单的Language Modeling Loss堆出来的

但是,RLHF用来对模型做控制,让模型更加清楚人类的意图,并且按照人类所能接受的方式做出回答

  • 这个预训练模型甚至需要prompt engineering才知道需要回答问题

Predictable scaling

GPT-4的关键问题在于如何构建深度学习的infrastructure,然后准确地进行扩大

  • 训练的主要原因是在大模型上是不可能做大规模的模型调参的,首先需要很多的算力,其次需要很长的训练时间。如果增加训练机器的数量,训练的稳定性也不能保证,多机器的并行训练很容易导致Loss跑飞

OpenAI研发出来了一套整体的infrastructure和优化方法,可以在多个尺度上的实验上达到稳定预测

  • 为了验证,利用内部的代码库在GPT-4模型刚开始训练的时候,就已经可以准确地预测到GPT-4最终训练完成的Loss(预测结果是由另外一个Loss外推出去的,用了比原始所需计算资源小一万倍的计算资源上用同样的计算方法训练出来的模型)

在这里插入图片描述

  • 图中绿色的点是GPT-4最终的Loss的结果
  • 纵坐标可以理解成Loss的大小,单位是Bits per word
  • 横坐标表示所使用的算力(这里将数据集的大小、模型的大小全部混在一起,表示总体训练一个模型所需要的算力),越往左,模型的训练代价越小
  • OpenAI通过将不同训练代价下的Loss点进行拟合,从而准确得到GPT-4最终的Loss
  • 在同等的资源下,可以以更快的速度尝试更多的方法,最后得到更优的模型

下图也是类似,只是任务不同,但是得到的都是可预测的结果

在这里插入图片描述

但是还有一部分数据集是不能完全根据小模型预测的,如inverse scaling prize竞赛,专门给大模型找茬,用来测试是否存在一些任务是小模型做的好,大模型反而做不好的,而且最好能够找到那些任务(随着计算成本的增加,任务的结果越来越差,除了GPT-4)

在这里插入图片描述

  • hindsight neglect:过去做一件事情的时候,使用很理性地判断做出一个决断,这个决断按道理来讲是正确的,但是运气不好导致最终的结果不是很好,那么如果回到过去,是继续选择当初选择的理性做法还是愿意赌一把选择一个更冒险的方式
  • 按道理来讲,每次做选择都应该按照最理性的方式做选择,但是大模型在这种情况下出现了一个很有意思的现象:随着模型越来越大,反而越来越不理性,会根据最后的结果来判断到底应不应该做出决定
  • GPT-4的准确度达到了100%,从侧面说明了可能GPT-4已经拥有了一定的推理能力,不会受到最后结果的影响

训练的稳定性多么难能可贵

斯坦福MLSYS 在MetaAi怎样用三个月的时间做了一个跟GPT-3同等大小的语言模型(OPT-175Billion)

  • 地址:https://www.bilibili.com/video/BV1XT411v7c9?t=1283.6
  • 模型虽然性能一般,但是整个过程干货比较多

在这里插入图片描述

  • OPT-175Billion在整个一个多月的训练过程中,因为各种各样的原因(机器崩掉,网络中断、Loss跑飞等),中间一共中断了五十多次,图中的每一段不同颜色就代表跑的一段
  • 训练一个大的模型的工程复杂度是难以想象的,所以GPT-4的成功除了大量算力的投入,还需要很多的工程上的努力

Capabilities

考试成绩

在日常对话中,GPT-3.5和GPT-4的区别是非常小的,但是这个区别随着任务难度的增加慢慢会体现出来

  • GPT-4更加可靠,更加具有创造力,而且能够处理更加细微的人类的指示

为了弄清楚这两个模型之间的区别,OpenAI设计了一系列的benchmark,包含很多之前专门为人类设计的模拟考试,使用了最近公开的一些数据,比如奥赛题目、AP(美国高中的一些大学先修课中的问题、购买的执照考试的版权数据)。在这些考试上没有做过特殊的训练

  • 可能有一些问题是之前在模型预训练的过程中被模型见过的,这里OpenAI为了澄清,他们跑了两个版本:一个版本是模型直接考试然后汇报分数;另一个版本虽然采用同样的模型,但是把在预训练数据集中出现的问题拿掉,只在那些模型可能没见过的问题上再做一次测试,最后取这两次的分钟较低的那一次来作为GPT-4的分数。希望这么做能更加具有说服力。
  • 这里的问题去重并没有说明具体的方法
  • GPT-4能在众多的考试中都取得较好的结果,说明其参加考试的能力还是不错的

在这里插入图片描述

  • 柱状图是按照GPT-3.5的性能从低到高进行排列的
  • GPT-3.5在最右侧的AP Environmental Science中表现是最好的
  • 淡绿色(no vision)表示没有使用图片
  • 图中可以看出GPT-4在有了图片加持之后,在有些考试上还能获得更大的进步
  • 在AP Caculus BC、AMC12、Codeforces Rating、AMC10上表现较差,GPT系列在数学上的表现比较差
  • 此外,虽然GPT-4能够修改文案,修改语法、润色文章,但是在高中英语文学课上以及高中英语语言本身的考试上得分都比较差。GPT系列的模型虽然能够生成大段大段的文字,但是它所写出来的东西很多时候就是翻来覆去地说话,都是一些空话大话,非常冠冕堂皇,并没有真正的思考,从而形成深刻的洞见

具体的考试结果如下图所示

在这里插入图片描述

  • 在生物竞赛中,GPT-4的表现很好几乎是第一名
  • 但是在 Codeforces Rating写代码测试中,GPT-4的表现并不如人意,甚至在某些情况下表现更差

传统的benchmark

GPT-4在传统的benchmark上的性能测试结果如下图所示,几乎刷新了之前的state-of-the-art

在这里插入图片描述

语言方面的能力

  • GPT-4在多语言上已经做得很好了,不仅是英语语系中的各种语言,对中文的支持也是不错的(能够识别拼音的输入,简体/繁体的转换也能够处理)
  • OpenAI为了进行测试,将MMLU全部进行了翻译(将14000多个多选题用微软的翻译全部翻译成不同的语言),通过测试发现,在26个语言中,其中24个语言中的测试结果GPT-4都要优于GPT-3.5和其他的一些大模型(Google的Chinchilla、PaLM),而且甚至在那些没有什么训练语料库的语言(Latvian、Welsh、Swahili)上表现也很好

在这里插入图片描述

Visual inputs

GPT-4是一个多模态的模型,可以接受图片作为输入

  • GPT-4可以允许用户任意自定义视觉或者语言任务
  • 不管用户输入的是文本、图片或者是图片和文本混合的形式,GPT-4都能生成文本(自然语言、代码)
  • GPT-4在其他任务上的表现也很不错,尤其是test-time techniques
  1. 这是一个用VGA线给手机充电的图片,很多时候GPT-4都能给出解释,而且是一步一步的解释为什么搞笑

在这里插入图片描述

  1. 图中是一个截图,并不是机器能够直接阅读的,需要内部自己做一个OCR才能让模型知道图片中到底是什么内容(截图中是一道法语描述的物理题)GPT-4用英语进行了一步一步的解释,最后得出答案

在这里插入图片描述

  1. 将一篇论文直接输入进GPT-4,让它输出对论文的总结。GPT-4能够很好地总结所输入的论文

在这里插入图片描述

Steerability

定义语言模型的行为,让语言模型按照用户所想要的方式进行答复

  • 相比于ChatGPT,ChatGPT的人格是固定的,每次都是同样的语调语气,回复的风格也是一致的;最新的GPT-4开发了一个新功能,除了发给它的prompt(描述用户需求的文字),前面添加了System Message
  • System Message可以定义AI使用什么样的语气语调进行对话

作为一个苏格拉底式的辅导员,回复永远都应该是保持苏格拉底的风格,即永远不告诉学生真正的答案,而是询问一些启发式的问题,通过暗示来进行辅导让学生自己意识到问题的解决方式,从而培养学生自己解决问题的能力。在这个过程中,将难度较大的问题进行拆分,在学生能够听懂的水平上进行因材施教。

在这里插入图片描述

Limitations

  1. 在能力和局限性方面,GPT-4和之前的GPT系列模型差不多,还是不能完全可靠,有的时候还是会瞎编乱造,扭曲事实,并且推理的时候也可能会出错。因此在使用这些大模型的时候还是需要更加小心谨慎,尤其是在一些高风险的领域(法律、金融、新闻、政治)中
    1. 虽然这些问题依然存在,但是GPT-4跟之前其他的模型以及外面的模型相比,在安全性上已经大幅提高了
    2. 在OpenAI内部专门用来进行对抗性测试的Evaluation Benchmark上,GPT-4比之前的GPT-3.5的得分要高出40%以上,提升显著

在这里插入图片描述

图中纵坐标表示准确度,横坐标表示OpenAI内部所使用的benchmark所涉及的领域

  1. GPT-4本身还会有各种各样的偏见,目前已经取得了一些进步,但是还有很多需要做的

  2. GPT-4一般是缺少2021年9月份之后的知识,因为预训练数据就是截止到2021年9月份

    • 但是ChatGPT有很多个版本,可能后续微调或者RLHF的时候,可能包含更新之后的数据,所以有时候也能正确回答2021年之后的一些问题
  3. GPT-4在很多的领域里都表现出强大的能力,取得很高的分数,但是有时候会犯一些非常简单的推理错误,看上去有点不可思议

    • 如果用户故意输入一些虚假的陈述,GPT-4还非常容易上当受骗
  4. 在一些特别困难的问题上,GPT-4跟人差不多,都会出现安全隐患,可能会写出不正确的代码。但是GPT-4哪怕有的时候预测错误了,也会非常自信

    1. 通过研究发现,这是因为经过预训练之后,GPT-4的model calibration做的非常完美(calibration可以理解为模型有多大的自信认为自己的预测是对的)

在这里插入图片描述

  • 从图中能够看出,模型经过了完美的矫正,即模型对自己的预测越有信心,他的预测就越可能是正确的(可以因为预训练的语料库比较大,已经掌握了客观事实的规律,因此模型对自己产生的结果比较自信)
  • 但是经过后处理(Instructed Tuning或者是RLHF)之后,calibration的效果就没有了,模型的校准就没有处理前好了(可能是经过RLHF之后,模型更接近于人,具备一定的主观性,因此校准性能就下降了)

Risks & mitigations

  1. Red Teaming
    1. 通过找各个领域的专家询问模型该问和不该问的问题,希望让模型知道哪些应该回答,哪些不该回答,通过人力的过程搜集数据,从而提升GPT-4的能力,能够拒绝不合理的要求
  2. GPT-4还利用自己来提升安全性的要求,在后续的RLHF的训练过程中,又新加了一个专门做安全的reward signal
    1. 这个reward signal是从自己已经预训练好的GPT-4模型开始,通过分类器分类当前prompt到底是不是sensitive,是不是存在危险,可能不应该进行回答
    2. 通过reward signal让RLHF更加智能,让模型更加贴合人的意图,而且更加安全
  3. 这种减少risk的方式能够显著提升GPT-4的安全性能,和GPT-3.5相比,对于那些不该回答的问题,GPT-4能比GPT-3.5少回答82%的问题

哪些工作可能会被GPT-4取代?

论文:GPTs are GPTs: An Early Look at the Labor Market Impact Potential of Large Language Models

  1. 大概有80%的美国劳动力会因为大语言模型的到来而受到影响,大概是平时工作中10%的任务(剩余90%的任务仍然需要人来完成),19%的工人会发现有50%的工作有可能会被影响(AI至少能够完成50%以上的工作任务)
  2. 受影响比较少的工作,如果有做科研(基础科学研究)的能力或者思维比较缜密,能够快速做出合理的决定,这些技能点大语言模型暂时还不具备
  3. 受影响比较多的工作,和大语言模型冲突的技能点:写代码、写文章。凡是和这两个技能点相关的工作可能会收到较大的影响

即使有些工作不会被GPT-4取代,如服务员、泥瓦匠,但是也会被其他的AI机器人取代。所以这篇文章讲的不会受影响的工作也是相对的(所以没列出来)。

未来研究方向

现在机器学习还有很多的问题悬而未决,而且现在大语言模型遇到的问题其实跟30年前机器学习领域遇到的问题还是一样的,现在依然不知道大语言模型到底是怎样工作、怎么泛化的:

  • 如何从单语言到多语言?
  • 为什么会具有涌现的能力?
  • 如何提高模型做推理的能力(尤其是做因果推理)?
  • 需要更多的方式阻止语言模型生成有害的文字或者带来比较坏的社会影响
  • 目前模型仅仅局限于文本,更多的问题都是在文本之外的,还有更多的模态等待探索

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/422263.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

架构模式:MVC

引言 MVC,即 Model(模型)-View(视图)-Controller(控制器),是广泛应用于交互式系统中的典型架构模式,尤其在 GUI 和 Web 应用中。 MVC 的概念源自 GOF(Gang …

Java设计模式之命令模式介绍和案例示范

一、命令模式简介 命令模式(Command Pattern)是一种行为型设计模式,它将请求封装为一个对象,从而使你可以用不同的请求对客户端进行参数化、对请求排队或记录日志,以及支持可撤销的操作。命令模式的核心思想是将发出请…

学习Vue3的第四天

目录 pinia 安装 Pinia 存储读取数据 修改数据(三种方式) storeToRefs getters $subscribe store组合式写法 组件通信 props 自定义事件 mitt v-model $attrs $refs、$parent provide、inject slot pinia Pinia 是一个用于 Vue.js 的状态管理库,作…

vue-i18n 使用 $t 导致的 Typescript 报错问题

目录 1&#xff0c;问题2&#xff0c;解决 1&#xff0c;问题 在 Vue3 项目中使用 vue-i18n v9.14.0 时&#xff0c;可以&#xff1a; <template><div>{{ t(xxx) }}</div> </template><script setup lang"ts"> import { useI18n } f…

顶踩Emlog插件源码

源码介绍 顶踩Emlog插件源码 前些天看到小刀娱乐网的文章页面有了一些变化&#xff0c;那就是增加了一个有价值/无价值的顶踩按钮。 样式也是非常的好看 再加上两个表情包是非常的有趣。 写到了Emlog系统&#xff0c;效果如上图。 如何使用&#xff1a; 需要在echo_log.…

Datasheet SHT20芯片的数据手册

Datasheet SHT20芯片的数据手册 I2C读取湿度传感器返回的16位数据。SCL SDA 14位有效&#xff0c;我以为是将后二位删除&#xff0c;实际上看完手册才知道是后二位值无用&#xff0c;不是删除&#xff0c;而是清0&#xff0c;实际上还是16为&#xff0c;知识后二位是0还是1&…

Flume 日志采集系统

Flume 日志采集系统 一、Flume 概述二、Flume 架构设计2.1 架构图2.2 Flume Source 类型2.3 Flume Channel 类型2.4 Flume Sink 类型 三、Flume 安装部署3.1 下载解压3.2 上传解压3.3 修改配置文件2.4 启动 Flume Agent 四、案例实践&#xff1a;Flume 分布式集群搭建4.1 Flume…

基于SpringBoot的准妈妈孕期交流平台

你好呀&#xff0c;我是计算机学姐码农小野&#xff01;如果有相关需求&#xff0c;可以私信联系我。 开发语言&#xff1a;Java 数据库&#xff1a;MySQL 技术&#xff1a;SpringBoot框架 工具&#xff1a;IDEA/Eclipse、Navicat 系统展示 首页 管理员登录 用户管理 早教…

利用CubeMX复现正点原子TFTLCD驱动例程

来源&#xff1a;正点原子 FMC的工作原理暂时先欠着&#xff0c;先记录一下CRUD的过程。 第一步准备一个us级别延时函数&#xff0c;不会的参考拙作&#xff1a;STM32的定时器简介-CSDN博客 第二部开启FMC外设&#xff1a; ①进入 Pinout->FMC 配置栏&#xff0c;配置 …

如何做好网络安全

随着互联网技术的飞速发展&#xff0c;网站已成为企业对外展示、交流和服务的重要窗口。然而&#xff0c;随之而来的网站安全问题也日益凸显&#xff0c;给企业的业务发展和用户数据安全带来了巨大威胁。因此&#xff0c;高度重视网站安全已成为网络安全的首要任务。今天我们就…

使用ffmpeg在视频中绘制矩形区域

由于项目需要对视频中的人脸做定位跟踪&#xff0c; 我先使用了人脸识别算法&#xff0c;对视频中的每个帧识别人脸、通过人脸库比对&#xff0c;最终记录坐标等信息。 然后使用ffmpeg中的 drawbox 滤镜功能&#xff0c;选择性的绘制区域。从而实现人脸定位跟踪 1、drawbox …

用于协作代码开发的 10 大 GitHub 集成

GitHub 是开发人员的天堂。开发人员在分布式 GitHub 存储库中存储和管理其源代码,允许多个贡献者同时处理项目。这种协作行动将生产力提高了 22%,将修复漏洞的速度提高了 7 倍,并将入职时间缩短了 80%。 作为一个版本控制系统,它允许开发人员跟踪和审查更改、管理分支和合…

【Sceneform-EQR】通过sceneform-eqr实现一个视频播放器(使用安卓MediaPlayer实现视频播放)

在前一篇文档中介绍了如何在AR\三维场景创建几种背景 【Sceneform-EQR】scenefrom-eqr中的几种背景实现(不仅用于AR、三维场景&#xff0c;在图片、视频播放器中也适用) 本文将侧重介绍如何使用安卓MediaPlayer实现视频播放。 ↓↓↓↓↓↓↓↓↓↓↓↓ 以下正文 ↓↓↓↓↓↓…

李彦宏内部讲话曝光,谈大模型三大认知误区:智能体还是非共识

“外界对大模型有相当多的误解&#xff0c;”近日据媒体报道&#xff0c;李彦宏的一则内部讲话曝光。在最近一次和员工交流中&#xff0c;李彦宏谈及三个大模型认知误区&#xff0c;涵盖了大模型竞争、开源模型效率、智能体趋势等热点话题。 李彦宏认为未来大模型之间的差距可…

DWI扩散磁共振成像和结构连接组学指南

扩散磁共振成像和结构连接组学指南 引言流程概述扩散磁共振成像(dMRI)dMRI基础ADC&#xff08; apparent diffusion coefficient, 表观扩散系数&#xff09;MD&#xff08;mean diffusivity, 平均扩散率&#xff09;FA&#xff08; fractional anisotropy, 分数各向异性&#x…

“左侧文字横向”的QTabWidget

左侧用 QToolButton 组&#xff0c; 右侧用 QStackedWidget&#xff0c;信号槽绑定切换页面 可定制化高 QButtonGroup* btnGp new QButtonGroup(this);btnGp->addButton(ui->btn1, 0);btnGp->addButton(ui->btn2, 1);btnGp->addButton(ui->btn3, 2);connect…

MongoDB的Map-Reduce操作与聚合管道操作的两个实例相互转换

一、插入集合 comment 的文档的内容 二、题目要求 将集合 comment 中的文档进行聚合操作&#xff0c;即将字段 state为1的文档查询出来&#xff0c;然后按字段 nickname 进行分组,最后计算出每个评论者的评论条数。 三、mapReduce 操作代码 db.comment.mapReduce(// Map函数&…

linux搭建深度学习平台

linux搭建深度学习平台&#xff08;Ubuntu&#xff09; /home/guangyao/anaconda3 我服务器的anaconda地址 ~/anaconda3 1 首先就是打开浏览器&#xff0c;我实验室的是火狐&#xff0c;搜索anaconda下载&#xff0c;找到下载目录&#xff0c;cd进去&#xff0c; 2安装 bas…

鸿蒙界面开发——组件(6):属性字符串(StyledString)文本输入

属性字符串StyledString/MutableStyledString MutableStyledString继承于StyledString&#xff0c;以下统一简称StyledString。 是功能强大的标记对象&#xff0c;可用于字符或段落级别设置文本样式。 通过将StyledString附加到文本组件&#xff0c; 可以通过多种方式更改文本…

爆改YOLOv8|利用SCConv改进yolov8-即轻量又涨点

1&#xff0c;本文介绍 SCConv&#xff08;空间和通道重构卷积&#xff09;是一种高效的卷积模块&#xff0c;旨在优化卷积神经网络&#xff08;CNN&#xff09;的性能&#xff0c;通过减少空间和通道的冗余来降低计算资源的消耗。该模块由两个核心组件构成&#xff1a; 空间重…