【生成式AI】ChatGPT 原理解析(2/3)- 预训练 Pre-train

news2024/10/2 3:30:17

Hung-yi Lee 课件整理


预训练得到的模型我们叫自监督学习模型(Self-supervised Learning),也叫基石模型(foundation modle)。

文章目录

      • 机器是怎么学习的
      • ChatGPT里面的监督学习
      • GPT-2
      • GPT-3和GPT-3.5
      • GPT
      • ChatGPT
      • 支持多语言
      • ChatGPT里面的自监督学习


G:generative
P:pre-train
T:transformer


机器是怎么学习的

请添加图片描述
有监督学习一般需要成对的语料来训练模型,比如机器翻译为例,需要中文和英文成对的语料来训练模型。


ChatGPT里面的监督学习

请添加图片描述
这里讲怎么把有监督学习套用到ChatGPT上,还是成对的语料,一问一答给到模型,机器自己寻找一个函数使得,当我们输入“台湾第一高峰是哪一座?”的时候输出“玉”的概率最大,当把“玉”再加到问句后面输入给模型的时候,输出“山”的概率最大。


请添加图片描述
但是这时候出现一个问题,假设机器真的是根据老师的教导来寻找函数,它的能力会非常有限,因为人类老师可以提供的成对资料十分有限。比如我们问它:世界第一高山是哪一座?它的学习语料里面没有喜马拉雅这个词,那么它就不会输出正确的结果。

实际上ChatGPT有一个机制可以无痛制造成对的语料。


请添加图片描述
网络上的每一段文字都可以教机器做文字接龙,比如“世界第一高峰是喜马拉雅山”,ChatGPT可以把前半段当作输入,后半段当作输出。
当输入“世界第一高峰是”的时候输出“喜”字的概率最大。
当输入“今天天气真好”的时候,输出“,”的概率最大。

ChatGPT的上一代模型GPT,它设计的目标就是这样一个文字接龙模型。


GPT-2

GPT模型在2018年就已经出现了,那时候模型比较小,只有117M的参数,使用的数据也只有1GB。
第二年(2019年)公开了GPT-2,模型大小到了1542M的参数,训练数据是40G。
这时候的GPT就可以瞎掰了,讲出来的东西就开始像模像样了。
GPT-2能做很多事情,比如回答“世界第一高峰”这个问题,给一段文字让它输出摘要。
请添加图片描述
对于GPT-2在回答问题上的表现有这样一个测试。
横轴表示模型的大小,纵轴表示F1(不知道的可以理解为准确率),我们看出它的能力和人类的回答还有很大的差距,但是比一些常见的模型好很多了。
就算只是做文字接龙,这时候的GPT就已经有能力回答问题了。


GPT-3和GPT-3.5

请添加图片描述

到了2020年,GPT-3的参数量是GPT-2的100倍了,有175B的参数,它的训练数据有570GB,这个数据量相当于阅读哈利波特30万遍,实际上OpenAI从网络上爬取了45T的数据,从中筛选了570GB数据出来训练模型。
那么什么是GPT-3.5呢,其实没有任何一篇文章明确说明它的含义,OpenAI官方的说法是只要是在GPT-3上做微调,再来做其他事情的模型都是GPT-3.5。


我们来看看GPT-3能做什么事情。
请添加图片描述
我们给GPT-3输入这样的语料,输入是程序代码的描述,输出是程序代码,这样它就可以写程序了,这不是很惊人的事情。


请添加图片描述
这里我们可以看到在42个NLP任务上做的测试,先不考虑细节,整体上可以看到随着模型越来越大准确率在提高,但是最大的也就是不到60%的准确率,难道GPT-3智能这么大点能耐吗?


GPT

其实GPT很多时候是不受控制的。
比如说你给它一段描述,让它剖析一下这段程序语言,问他这段代码里面的C的目的是什么,它给出的答案是这样的,出一个选择题给你让你选择。

这是因为它学习了网上很多试题,它的学习能力很强,但是给出的答案不一定是我们想要的,请添加图片描述


ChatGPT

怎么办呢,怎么才能强化它的能力呢。
再下一代就到ChatGPT了。需要介入人类老师了,在这之前是不需要人类老师的,从GPT到ChatGPT就需要人类老师的介入了,所以ChatGPT是GPT经过监督学习的模型。
人类老师告诉它,以后别人问你“台湾最高的山是什么山”你要告诉他是“玉山”。

这个有监督学习的过程也叫finetune,或者是继续学习,之前的GPT模型是预训练模型,也是自监督学习。

这里用于有监督学习的语料不是人类整理的,是用一些方法无痛生成的,这种方式就叫做自监督学习,也叫基石模型。请添加图片描述


支持多语言

它是怎么做到支持多语言的呢?
ChatGPT不是在单一的预训练模型上做的finetune,里面可能就包含Muti-Bert这样的语言模型。
Muti-Bert支持104种语言,当我们给它只做了英文的阅读理解后,它自动的其他语言也都学会了。
所以ChatGPT不需要单独做翻译这件事情,它自己就学会了翻译。
请添加图片描述


来看看真正的实验数据。
最下面一行显示人类的表现是93%的准确率。

  • 在AQNet模型的Pre-train里面没有中文语料,用中文语料做finetune,然后再在中文上做测试,准确率只有78.1;
  • 在Bert模型的Pre-train里面只有中文语料,用中文语料做finetune,然后再在中文上做测试,准确率是89.1,提升了不少;
  • 神奇的是,在Bert模型的Pre-train里面有104中语言,用英文语料做finetune,然后再在中文上做测试,准确率也能达到78.8,这说明了我们教它英文,它自己学会了中文。

怎么理解呢,在机器学完很多种语言后,对它来说所有的语言都是一种语言了,没有差别。

请添加图片描述


ChatGPT里面的自监督学习

我们知道,ChatGPT除了自监督学习,有监督学习还做了强化学习。
在强化学习里面人不是告诉机器答案是什么,而是告诉机器现在的答案是好还是不好。
增强学习有什么好处呢,监督学习的老师是比较辛苦的,需要知道正确的答案,强化学习的老师就可以偷懒,只需要点个赞或者点个倒赞就可以。
增强学习还有一个优势是适合用在人类自己都不知道答案的时候,比如“请帮我写诗赞美AI”,这样的问题,人类不需要给答案,只要给反馈就可以了。

那么ChatGPT就是这样三个过程,先做预训练,然后做有监督学习,最后做强化学习。

请添加图片描述

至于增强学习其他的细节,我们下一篇博客再细讲。

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

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

相关文章

nginx(二)

nginx的验证模块 输入用户名和密码 第一步先下载httpd 这个安装包 第二步编辑子配置文件 然后去网页访问192.168.68.3/admin/ 连接之后,会出现404,404出现是因为没给网页写页面 如果要写页面,则在/opt/html,建立一个admin&#x…

算法沉淀——动态规划之路径问题(leetcode真题剖析)

算法沉淀——动态规划之路径问题 01.不同路径02.不同路径 II03.珠宝的最高价值04.下降路径最小和05.最小路径和06.地下城游戏 01.不同路径 题目链接:https://leetcode.cn/problems/unique-paths/ 一个机器人位于一个 m x n 网格的左上角 (起始点在下图…

探索C语言位段的秘密

位段 1. 什么是位段2. 位段的内存分配3. 位段的跨平台问题4. 位段的应用4. 使用位段的注意事项 1. 什么是位段 我们使用结构体实现位段,位段的声明和结构体是类似的,有两个不同: 位段的成员必须是int,unsigned int,或…

IO进程线程作业day7

信号灯集共享内存 自定义头文件 #ifndef SEM_H_ #define SEM_H_ //创建信号灯集, int creat_t(int number); //申请释放资源 int P(int semid,int semno); //申请释放资源 int V(int semid,int semno); //删除信号灯集 int del(int semid); #endif信号灯集函数集合 #include…

多维时序 | Matlab实现GRU-MATT门控循环单元融合多头注意力多变量时间序列预测模型

多维时序 | Matlab实现GRU-MATT门控循环单元融合多头注意力多变量时间序列预测模型 目录 多维时序 | Matlab实现GRU-MATT门控循环单元融合多头注意力多变量时间序列预测模型预测效果基本介绍程序设计参考资料 预测效果 基本介绍 1.多维时序 | Matlab实现GRU-MATT门控循环单元融…

wcf 简单实践 数据绑定 数据更新ui

1.概要 2.代码 2.1 xaml <Window x:Class"WpfApp3.MainWindow"xmlns"http://schemas.microsoft.com/winfx/2006/xaml/presentation"xmlns:x"http://schemas.microsoft.com/winfx/2006/xaml"xmlns:d"http://schemas.microsoft.com/expr…

《数据治理简易速速上手小册》第2章 数据治理框架的建立(2024 最新版)

文章目录 2.1 确立数据治理目标2.1.1 基础知识2.1.2 重点案例&#xff1a;提升零售业数据质量2.1.3 拓展案例 1&#xff1a;银行的数据安全加强2.1.4 拓展案例 2&#xff1a;医疗机构的合规性数据报告 2.2 数据治理框架的关键要素2.2.1 基础知识2.2.2 重点案例&#xff1a;制药…

VM-UNet:视觉Mamba UNet用来医学图像分割 论文及代码解读

VM-UNet 期刊分析摘要贡献方法整体框架1. Vision Mamba UNet (VM-UNet)2. VSS block3. Loss function 实验1.对比实验2.消融实验 可借鉴参考代码使用 期刊分析 期刊名&#xff1a; Arxiv 论文主页&#xff1a; VM-UNet 代码&#xff1a; Code 摘要 在医学图像分割领域&#x…

JANGOW: 1.0.1

kali:192.168.223.128 主机发现 nmap -sP 192.168.223.0/24 端口扫描 nmap -p- 192.168.223.154 开启了21 80端口 web看一下&#xff0c;有个busque.php参数是buscar,但是不知道输入什么&#xff0c;尝试文件包含失败 扫描目录 dirsearch -u http://192.168.223.154 dirse…

mysql 分表实战

本文主要介绍基于range分区的相关 1、业务需求&#xff0c;每日160w数据&#xff0c;每月2000w;解决大表数据读写性能问题。 2、数据库mysql 8.0.34&#xff0c;默认innerDB;mysql自带的逻辑分表 3、分表的目的:解决大表性能差&#xff0c;小表缩小查询单位的特点(其实优化的精…

人事|人事管理系统|基于Springboot的人事管理系统设计与实现(源码+数据库+文档)

人事管理系统目录 目录 基于Springboot的人事管理系统设计与实现 一、前言 二、系统功能设计 三、系统实现 1、管理员登录 2、员工管理 3、公告信息管理 4、公告类型管理 5、培训管理 6、培训类型管理 四、数据库设计 1、实体ER图 五、核心代码 六、论文参考 七、…

2024年环境安全科学、材料工程与制造国际学术会议(ESSMEM2024)

【EI检索】2024年环境安全科学、材料工程与制造国际学术会议&#xff08;ESSMEM2024) 会议简介 我们很高兴邀请您参加将在三亚举行的2024年环境安全科学、材料工程和制造国际学术会议&#xff08;ESSMEM 2024&#xff09;。 ESSMEM2024将汇集世界各国和地区的研究人员&…

CrackRTF1

由此可知为六位密码且<100000自动退出 发现是哈希加密&#xff0c;经过网上查找后了解到 0x8004u 为 SHA1 加密&#xff0c;故从网上寻找脚本并进行爆破 密码为123321 找到一个取巧的网站 MD5免费在线解密破解_MD5在线加密-SOMD5 Flag{N0_M0re_Free_Bugs}

Mysql索引讲解及创建

索引介绍 1.什么是索引&#xff1f; 索引是存储引擎中一种数据结构&#xff0c;或者说数据的组织方式&#xff0c;又称之为键key&#xff0c;是存储引擎用于快速找到记录的 一种数据结构。 为数据建立索引就好比是为书建目录&#xff0c;或者说是为字典创建音序表&#xff0c;…

视频号视频下载教程:如何把微信视频号的视频下载下来

视频号下载相信不少人都多少有一些了解&#xff0c;但今天我们就来细说一下关于视频号视频下载的相关疑问&#xff0c;以及大家经常会问到底如何把微信视频号的视频下载下来&#xff1f; 视频号视频下载教程 视频号链接提取器详细使用指南&#xff0c;教你轻松下载号视频&…

LabVIEW燃料电池船舶电力推进监控系统

LabVIEW燃料电池船舶电力推进监控系统 随着全球经济一体化的推进&#xff0c;航运业的发展显得尤为重要&#xff0c;大约80%的世界贸易依靠海上运输实现。传统的船舶推进系统主要依赖于柴油机&#xff0c;这不仅耗能高&#xff0c;而且排放严重&#xff0c;对资源和环境的影响…

uniapp播放mp4省流方案

背景&#xff1a; 因为项目要播放一个宣传和讲解视频&#xff0c;视频文件过大&#xff0c;同时还为了节省存储流量&#xff0c;想到了一个方案&#xff0c;用m3u8切片替代mp4。 m3u8&#xff1a;切片播放&#xff0c;可以理解为一个1G的视频文件&#xff0c;自行设置文…

Antd 嵌套子表格 defaultExpandAllRows 默认展开不生效

问题描述 在使用 antd 嵌套子表格时&#xff0c;想要默认展开所有子列表&#xff0c;设置属性:defaultExpandAllRows“true”&#xff0c;但是子列表没有展开 原因分析 defaultExpandAllRows 属性官网定义&#xff1a; 从官网定义可知&#xff0c;defaultExpandAllRows 属性…

P2680 [NOIP2015 提高组] 运输计划 第一个测试点信息 || 被卡常,链式前向星应该解决的是vector的push_back频繁扩容的耗时

[NOIP2015 提高组] 运输计划 - 洛谷 目录 测试点信息 P2680_1.in P2680_1.out 图&#xff1a; 50分参考代码&#xff08;开了n^2的数组&#xff0c;MLE了&#xff09;&#xff1a; 测试点信息 Subtask #0 #1 P2680_1.in 100 1 7 97 4 89 2 0 40 91 1 70 84 1 36 92 3 …

ASLR 和 PIE

前言 ASLR&#xff08;Address Space Layout Randomization&#xff0c;地址空间随机化&#xff09;是一种内存攻击缓解技术&#xff0c;是一种操作系统用来抵御缓冲区溢出攻击的内存保护机制。这种技术使得系统上运行的进程的内存地址无法被预测&#xff0c;使得与这些进程有…