体验 GPT-4 后,回顾 OpenAI 发展历程及感悟

news2024/11/28 18:41:42

从 ChatGPT Plus 发布第一天就开始重度使用,刚刚和新发布的 GPT-4 进行了 20 多轮对话,来简单介绍下这几个模型背后的技术,并且分享下感受。

GPT 在发展历程中,一共经历了 4 个阶段,分别是 1、2、3、4。这几个阶段分别进行了不同思考,就好像三体中提出的几个公理,都很有意思。

一切的起点

第一代模型 GPT-1,当时的论文叫做「通过生成式预训练模型,来提升对于语言本身的理解」Improving Language Understanding by Generative Pre-Training。其中的 Generative Pre-Training,便是现在 GPT 的来源。在传统机器学习中,学者们更喜欢用标注好的东西来进行机器学习。比如我心情真棒(正面情绪),括号中的就是一个标注。

在这篇论文中,OpenAI 在想,这个世界上有如此丰富的语料,但大部分都是没有被标注的数据。虽然不好用,但我们可以通过对其学习,只要学的足够多,我们就可以培养模型对于语言表达的理解能力。

多任务学习者

第二代模型 GPT-2, OpenAI 手头拿着学会了语言模型,但的确是没什么用。他们就在思考,现在是能理解文字了,但是这什么也不能干呀,这个模型到底能做什么呢?在大量试验后,他们发现,人们以往认为机器学习中的自然语言处理,也许不一定需要划分成很多很多的子任务。

如果语言本身包含了这些信息,那么各类任务,都应该可以被统一学习。比如,传统思路中,人们认为翻译,你必须要有中英文对应,来进行学习。但实际上,互联网上充斥着这样的提问,比如:有没有小伙伴知道香水有法语怎么表达最贴切,于是就有人回复 Parfum。

这段话既包含了中文原文,又包含了网友智慧所提出的法语翻译。既然我们学了这么多语料库,那么翻译,应该是自然而然就能学会的,不需要单独进行。同理,归类、找相似性、等等工作,都应该可以被大模型统一的表达。

因此提出了第二篇论文「大语言模型,是无需监督的多任务学习者」Language Models are Unsupervised Multitask Learners。即它可以自己学会做很多很多事,不用监督瞪大眼睛看它学对没,先学再说。学会的知识,应该是具备普适性的,能够处理很多任务。

举个例子就行

第三代模型 GPT-3,也就是大家熟悉的 ChatGPT 的前身。这个阶段,OpenAI 在冲着充分堆料,已经学会很多内容的模型陷入深深思考。既然它通过学习大量数据,掌握了人类语言,又理论上来说具备多任务的处理能力,怎么才能让它用出来呢?

传统思路中,机器学习模型需要进行针对性优化,来提升对于不同任务的表现。OpenAI 看了看已经被训练的巨大的模型,每次针对性优化,其实是不现实的,于是放弃了这条路。转而进行下一个重要思考。既然人类可以通过举例学习,语言模型应该也可以。

因此提出了第三篇论文「大语言模型,通过几个例子就能学会你要他做什么」Language Models are Few-Shot Learners。比如,如果你和一个智慧球举例,说从一数到一百,1,2,3... 它就应该能根据你的例子,去完成内容补全。甚至多学学,不用举例子也行。

这便是前三代模型的发展背景。截至目前为止,OpenAI 手头的这几个模型一个比一个大,但是最大的问题在于,它们擅长生成符合人类说话风格的胡言乱语,但是这不符合和人类和他们交流的习惯。

OpenAI 首先想到的就是服务程序员的代码,如果学会了世界上所有代码,应该能给人带来帮助。于是在此尝试下,推出了包含代码数据集的 OpenAI Codex,并且把这个包含了代码和新数据训练的模型叫做 GPT-3.5。这还是不好用,因为在人类世界中,我说上句你补充下句意义不大。

重点还是交流,交流涉及沟通,于是便训练了基于 GPT-3.5 的对话模型 InstructGPT。这个模型中用到了很多人工反馈,对问答方式和表述方式进行更符合人性的指导。而我们现在最熟悉,最出圈的 ChatGPT,就是 InstructGPT 的一个更适合大众的姊妹模型变种。

GPT 所开启的新时代

在我的工作中,ChatGPT 已经成为不可或缺的一部分,它带来的生产效率提升可以轻松达到 20 倍以上。从我个人角度出发,觉得这项技术,会深刻改变人类学习、教育、做事的方式。新的教育体系,若思维固步自封,同时学生不尽快地掌握 ChatGPT,那么从起点上就会落后非常多。

就像互联网时代前和后,新能源汽车时代前和后,时代已经被刻骨,全面,深刻的改变了。

它不会降低知识的门槛,也就是说,如果一个人并不熟悉某个领域,指望就靠 ChatGPT 用处不大。这就好像一个小朋友问围棋之神,我如何才能变成围棋大佬一样,帮助有限。但假如你已经是个业余棋手,有了 ChatGPT 会无限拉进你与世界上顶尖棋手的距离。

即便已经强如 ChatGPT,还是存在一些问题。比如,在复杂语句的推理能力,其实 ChatGPT 还有成长空间。比如倘若你的描述充满非常复杂的逻辑关系,那么 ChatGPT 有可能会遗漏其中的部分要求。这个问题,在我今晚测试的 GPT-4 中,就完全解决啦。

因为之前的 ChatGPT 已经过于强大,从我们的专业场景使用中,出现问它不知道的情况已经是极小概率事件,可靠性已经达到或高于大部分极优秀的人类。所以我不认为大家会发现 GPT 4 突然如何颠覆。主要还是因为 ChatGPT,几乎已经能做到很多专业场合中 99%+ 场景的高度可用性。

这次更新,除了如下图所示,让 GPT 通过无比困难的美国司法考试外。也几乎做到了一个知识球的本分,当称职的智慧本身。

第 4 代 GPT 及使用建议

第四代模型 GPT-4,重点强化了创作能力,如作曲,写小说等;增加了对于长文本的处理能力。最重要的,还是多了一种新的交互方式,就是对于图片的理解。也就是本次新论文的标题「多模模型」 Large Multimodal Model。

在之前 ChatGPT 的使用中,因为没法插入图片,所以有些需要表述的内容,需要靠文字描述给它。现在不需要了,直接一丢就行,让它自己理解去。GPT-4 除本身带了对于图片 OCR 外,还有对位置和细节的理解能力,比如下图中 GPT-4 的回复,是对于一张截图的描述。

从目前体验来看,GPT-4 的答复效果和 ChatGPT-3.5 Turbo 相比稍微提升,对于语义逻辑性的把握比老版本显著较好。但有个很大的问题,就是新模型的答复非常慢。我个人猜测有两个可能:

1. GPT-4 类似于 1750 亿参数的 GPT-3,目前是个未经充分优化的版本,而不是百亿参数级别的 ChatGPT 3.5 Turbo。这个模型从 OpenAI 限制访问次数也可以看出,实际上做答复也非常消耗 OpenAI 那边跑模型的算力。

2. GPT-4 因为是个多模模型,所以流程要比纯文本的 ChatGPT-3.5 Turbo 显著复杂。大概率包含了图片向量理解的类似 CLIP 文本和图片向量对齐的中间模型等操作,整体运作也更为复杂。

目前我的建议:

如果你的工作中:ChatGPT-3.5 Turbo 能满足你,用那个就行,完全够用。免费版本的 ChatGPT 3.5 英文版本没问题,中文使用不建议,它的中文的语料库和 ChatGPT-3.5 Turbo 相比差距比较大。GPT-4 除非你的问题比较复杂,你需要比较发散思维有创造力的回答,或者需要图片插入,否则目前的响应速度,除非特别有耐心,大部分时候没必要着急用这个新模型。

总结

我还是非常喜欢这次的 GPT 更新,也很欣喜人类在被推着进步,已经开始期待能可能能够输出图片甚至视频 GPT-5 了。能活在这个时代,感觉很幸运。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【VM服务管家】VM4.x算法模块开发_4.3 联合Halcon开发

目录 4.3.1 联合开发:集成HALCON第三方算子到VM工具箱的方法 4.3.1 联合开发:集成HALCON第三方算子到VM工具箱的方法 描述 环境:VM4.0及以上 VS2013 问题:有的用户在使用VisionMaster软件在开发视觉项目时,可能同时也…

来了来了,我使用 ChatGPT 开发了一个 AI 应用

ChatGpt 实在太火爆了,很多人在问我怎么使用 chatgpt 开发一个 AI 应用程序。这不就来了吗~ 开始 你所需要准备的一个OpenAI 的密钥和一点点代码来发送提示并返回结果,例如下面这段代码: import { OpenAIApi, Configuration } from openai…

基于RAM树莓派实现智能家居:语音识别控制,Socket网络控制,火灾报警检测,实时监控

目录 一 项目说明 ① 设计框架 ② 功能说明 ③ 硬件说明 ④ 软件说明 二 项目代码 <1> mainPro.c 主函数 <2> InputCommand.h 控制设备头文件 <3> contrlDevices.h 外接设备头文件 <4> bathroomLight.c 泳池灯 <5> livin…

GraphQL(三)DataLoader 详解

DataLoader是一个通用实用程序&#xff0c;用作应用程序数据获取层的一部分&#xff0c;通过批处理和缓存为各种远程数据源&#xff08;如数据库或 Web 服务&#xff09;提供简化且一致的 API 批处理 const user await userLoader.load(1); const invitedBy await userLoade…

【C++】7. auto和nullptr(c++11)

文章目录 一、auto二、nullptr 一、auto 在C98中&#xff0c;auto是一个存储类说明符&#xff0c;表示变量具有自动存储期&#xff0c;即在函数或块的作用域内创建和销毁。 在C11中&#xff0c;auto是一个类型占位符&#xff0c;表示变量的类型由其初始化器自动推断。 使用如下…

分类和扩展与继承

文章目录 [TOC](文章目录) 分类定义分类的使用使用场景使用注意点 Extension 扩展分类和扩展的区别 继承的定义使用注意点 新建一个分类 分类基础知识 分类 分类是指为已有的类添加方法&#xff0c;也可以说是将很多很复杂的代码划分为几个分区。 定义 分类的作用是扩展已有…

第十四届蓝桥杯大赛软件赛省赛 Java 大学 B 组题解

试题 A: 阶乘求和 本题总分&#xff1a;5 分 【问题描述】 令 S 1! 2! 3! ... 202320232023!&#xff0c;求 S 的末尾 9 位数字。 提示&#xff1a;答案首位不为 0。 【答案提交】 这是一道结果填空的题&#xff0c;你只需要算出结果后提交即可。本题的结果为一 个整数&am…

Linux信号:SIGCHLD信号和僵尸进程

1. SIGCHLD信号产生条件&#xff1a; &#xff08;1&#xff09;子进程终止&#xff1b; &#xff08;2&#xff09;子进程收到SIGSTOP暂停&#xff1b; &#xff08;3&#xff09;子进程处于暂停状态&#xff0c;收到SIGCONT被唤醒。 2. 捕捉SIGCHLD&#xff0c;避免僵尸进程&…

网络钓鱼:工作场所保护电子邮件安全的五个步骤

导语&#xff1a;Sophos电子邮件产品管理高级总监David Mitchell分享了他的主要技巧&#xff0c;以优化工作场所的电子邮件安全性。 Sophos电子邮件产品管理高级总监David Mitchell分享了他的主要技巧&#xff0c;以优化工作场所的电子邮件安全性。 尽管工作场所的聊天和即时…

云原生时代崛起的编程语言Go基础实战

文章目录 概述定义使用场景Go 安全 使用须知搜索工具Go基础命令标准库 基础语法Effective Go 概览命名规范注释变量常量(const)控制结构数据类型迭代&#xff08;range&#xff09;函数指针字符串和符文结构体(struct)方法接口(interface)泛型错误&#xff08;errors&#xff0…

iOS描述文件(.mobileprovision)一键申请

转载&#xff1a;IOS描述文件制作教程 iOS描述文件(.mobileprovision)一键申请 在主界面上点击描述文件按钮。 ​ 编辑切换为居中 添加图片注释&#xff0c;不超过 140 字&#xff08;可选&#xff09; 新建ios描述文件 然后点击新建&#xff0c;然后输入描述文件名称&…

数据库设计与前端框架

数据库设计与前端框架 学习目标&#xff1a; 理解多租户的数据库设计方案 熟练使用PowerDesigner构建数据库模型理解前端工程的基本架构和执行流程 完成前端工程企业模块开发 多租户SaaS平台的数据库方案 多租户是什么 多租户技术&#xff08;Multi-TenancyTechnology&a…

【密码算法 之六】CCM 浅析

CCM模式浅析 1. 综述2. 加密2.1 前置条件&#xff08;Prerequisites&#xff09;2.2 输入&#xff08;Input&#xff09;2.3 输出&#xff08;Output&#xff09;2.4 加密流程&#xff08;Steps&#xff09; 3. 解密3.1 前置条件&#xff08;Prerequisites&#xff09;3.2 输入…

Orangepi Zero2 全志H616简介

为什么学 学习目标依然是Linux 系统 &#xff0c;平台是 ARM 架构 蜂巢快递柜&#xff0c;配送机器人&#xff0c;这些应用场景用C51,STM32单片机无法实现 第三方介入库的局限性&#xff0c;比如刷脸支付和公交车收费设备需要集成支付宝SDK&#xff0c;提供的libalipay.so 是…

【VM服务管家】VM4.0平台SDK_2.2 模块API类

目录 2.2.1 方案保存&#xff1a;方案高速保存的方法2.2.2 Group模块&#xff1a;Group输入输出图像数据的方法2.2.3 模块操作类&#xff1a;设置输入图像、参数和ROI的方法2.2.4 图像源&#xff1a;通过图像源模块接口设置图像输入的方法2.2.5 图像源&#xff1a;通过SDK传入相…

go 语言环境安装(Windows 系统下安装)

go 语言官网:The Go Programming Language 下载 go 安装包的网址&#xff1a;All releases - The Go Programming Language go 支持很多种操作系统 Windows 系统下 - 安装和配置SDK 一、SDK 介绍 SDK 的全称是 Software Development Kit &#xff0c;即 软件开发工具包 二…

STM32物联网实战开发(1)——全新的程序框架

现在STM32公司主推的是HAL库的开发&#xff0c;标准库已经不再更新。通过STM32cubeMX的图形界面生成代码非常的方便。 一、程序框架的构想 1、STM32cubeMX 生成的代码与添加的应用代码分离&#xff1b; 2、利用 STM32cubeMX 重新生成代码&#xff0c;不影响应用代码&#xf…

zabbix配置钉钉告警(附含钉钉告警脚本 · 实战亲测无任何问题)

&#x1f341;博主简介 &#x1f3c5;云计算领域优质创作者   &#x1f3c5;华为云开发者社区专家博主   &#x1f3c5;阿里云开发者社区专家博主 &#x1f48a;交流社区&#xff1a;运维交流社区 欢迎大家的加入&#xff01; 文章目录 钉钉上操作&#xff08;钉钉告警以关…

密码学新进展:基于同态加密的数据保护是否会成为未来的趋势?

第一章&#xff1a;引言 在今天这个数字时代&#xff0c;数据的重要性不断增加&#xff0c;已经成为了现代社会最宝贵的财富之一。各种机构和企业在日常运营中都会处理大量的数据&#xff0c;包括用户信息、财务数据、产品销售数据等。这些数据的安全性非常重要&#xff0c;因…

2.5 定点运算器的组成

学习目标&#xff1a; 具体包括以下几点&#xff1a; 了解定点运算器的基本概念和分类&#xff0c;包括定点运算器的分类、常见的定点运算器类型等&#xff1b;学习定点运算器的基本组成部分&#xff0c;包括输入/输出接口、寄存器、算术逻辑单元(ALU)、控制单元等&#xff0…