会员中心     
首页 > 资料专栏 > IT > IT技术 > 数据存储 > 从算法工程看ChatGPT的原理与应用—20230329PDF

从算法工程看ChatGPT的原理与应用—20230329PDF

CCIT
V 实名认证
内容提供者
热门搜索
ChatGPT 算法
资料大小:2348KB(压缩后)
文档格式:PDF
资料语言:中文版/英文版/日文版
解压密码:m448
更新时间:2023/7/10(发布于吉林)

类型:金牌资料
积分:--
推荐:免费申请

   点此下载 ==>> 点击下载文档


“从算法工程看ChatGPT的原理与应用—20230329PDF”第1页图片 图片预览结束,如需查阅完整内容,请下载文档!
文本描述
从算法工程看ChatGPT的原理与应用
一、Chat GPT的背景以及简单介绍
Chat GPT属于AIGC领域,即人工智能生成内容,与之相对应的是用户生成内容。在AIGC领域它可以
分为以下几种:文本的生成;音频、图像的生成;视频生成以及多模态生成。
AIGC的技术发展路径:2014年, GAI模型提出,被用来做图片的风格迁移以及图片的生成,当时效果
非常好;2017年,谷歌提出Transformer模型,从此深度学习的领域就开始都走向了大的预训练模
型;2022年7月,Stable Diffusion扩散模型提出并且开源,它是用来做文本生成图片的模型,给模型
输入一个提示,模型会输出一张图片,它具备快速出图并且质量很高的特点,引发了AIGC的热潮。
目前的AIGC海外公司的发展明显领先于国内,比如 Jasper公司,他是面向内容创作者的,可以帮助分
享想法、修改媒体上的内容。还比如TracksterAI 7.49公司,用户可以制定一个角色,比如你喜欢的明
星,与AI对话可以营造出与真人对话的感觉。还比如Tommy公司,它可以根据输入的主题自动生成
PPT,写出大纲描述以及配上图片,这属于多模态生成的领域。目前国内企业的人力和算力都投入不
足,又由于语料等等原因,技术基础技术的进展会比较慢。语料方面,互联网上中文数据的质量比较
低,一些模型虽然上线,但缺乏对真实世界数据的调用和迭代。由于GPU等芯片问题,国内的算力一
定程度上不如国外,还存在模型训练不够充分等等问题。另外就是大公司目前更重视短期内可以盈利
的业务,缺乏长期主义,一些项目缺乏生长土壤。
Chat GPT是根据文本生成文本的模型,OpenAI在2022年的11月底发布了聊天机器人模型,他能够学
习理解人类的语言来进行对话,根据聊天的上下文进行互动,像真人一样进行交流。目前它的每月用
户数已经达到了一个亿,成为了史上增长最快的互联网应用。从NLP的领域来说,模型可以分为以下
三个层次:感知、理解和推理,目前Chat GPT可以在推理任务上有非常好的效果。
下面我们可以看几个例子,首先是一个自定义的文本分类任务,比如我跟他对话中告诉他,我现在需
要对文本进行分类,分类只能是说订机票、通讯录、打电话、发短信这四种中的一种,然后给他说一
段话,它可以学习到并且对这句话进行文本分类。后面是我给了他另一句话,告诉他说帮我预约一个
会议室,然后他会告诉你说你刚才的这句话并不能分在刚才的四种技能中,你可以去添加技能等,他
在文本分类的任务上比传统的需要大量语料的训练来得更快。另外可以做一些比如风格迁移或者是代
码编写的任务,然后这里的话是给了一个例子,就是说让他去仿照李清照的风格去写注释,并且解决
一个问题,然后求解一元一次方程。可以看一下下面的他给出的代码,代码没有问题,并且它的注释
仿照了李清照的风格,另外还可以用它来做一个故事创作,给它一个主题,并且一些限制条件,然后
它会根据这个条件来生成一个故事。还有就是一些知识问答的领域,比如说可以去问他这个菜怎么
做,他会把他学习到的信息反馈出来,然后给我们答案。
二、模型的训练原理
Chat GPT是属于OpenAI公司GPT系列模型中的一个,目前已经公布的有GPT1、GPT2和GPT3,接下
来会公布GPT4,它是一个多模态的模型,Chat GPT和InstructGPT是一对孪生模型,目前会被称作
GPT3.5,二者在模型的结构和训练方式上完全一致,不同之处在于数据采集上会有差别。GPT的网络
结构是以Transformer Encoder结构为基础,把很多的Transformer的编码层串起来,然后一层一层地
叠加,最后输出,它是一个生成式的模型,比如说我现在给他一个问题,他输入以后会逐字地把答案
预测出来,就类似于文字接龙的游戏。GPT1、GPT2、GPT3都是大规模的预训练模型,都只用了无监督学习,基于海量的互联网上的文本数
据直接输入到模型中,让模型不断学习接龙的过程,不断的预测下一个字,以此来迭代模型的参数。
GPT3比GPT1、GPT2用了更多的预训练数据,并且参数量是大两个数量级的,但是这样的大模型可能
对于正常使用很难去用,因为它预测得非常慢。另外的话还有一个问题,由于这些模型都是用无监督
学习学出来的,还存在着输出不对齐的问题。在模型的训练语料中可能会有大量的互联网上扒取的文
本,比如这里有一个 triple AI的会议主题是什么,这段文本介绍了triple AI是人工智能领域的顶级会议
等等,确实是介绍了他这个会议主题。但是训练语料中还有很多的文本,比如说关于联合国大会,我
们收集了同学们提出的很多问题,包括大会主题是什么,大会在哪里举行等等更多的语料。那么在问
模型triple AI会议的主题是什么的时候,我们希望得到的是 VCL主题的介绍,但实际上模型可能学习
到的 VCL的会议在哪里举行,什么时候举行等等,这就是模型的输出与我们的期望不对齐的问题。
InstructGPT以及Chat GPT中就使用了基于人工反馈的强化学习的方式来解决模型输出与期望不对齐
的问题。
人工反馈的强化学习的方法主要分三个步骤:
第一步先由人工来选取一些提示以及人工希望得到的答案,并组成样本队,然后用这些样本队来微调
GPT3或者GP3.5,在这个基础上得到了一个SFT模型,这个模型可以看作是一个有监督学习的过程,
即让模型学习到人类希望得到的一些输入。
第二步是继续给模型输入一些提示,模型可以输出不同的几种答案,人工对这几个答案进行排序,选
出这些答案中哪些更好、哪些更坏,然后把答案和样本对输入到打分模型Reward Model中,如果用
户不喜欢答案,得分就会更低,用这些数据来训练模型,于是产生了打分模型。
第三步就是说首先用微调过的SFT模型的参数去初始化强化学习的模型,对于任何给定的提示,让PPO
模型回答,于是得到了一个答案,把这个答案输入到打分模型中,打分模型会给刚才的答案打分。打
分如果高,它就会反馈给PPO模型并让其继续强化,更容易输出这样的回答;反之,原来的模型就会
去学习,尽量不要给出这种答案。以此迭代模型,这样就把人工的选择以及喜好都让模型学习到。 扫码进群领取
1、优质研报免费获取,行业报告定期打包
2、每日推送行业最新深度研报(精选10篇)
3、最新行业报告、公司研究、专业大咖分享简单理解,首先有一个初始的模型去学习文字接龙游戏,它可以产生任何文字序列。第一步就是让人
类去引导文字接龙的方向。第二步就是给了他很多的样本队,让奖励模型去模仿人类的喜好,能够知
道人类喜欢哪些答案,不喜欢哪些答案。第三步就是用这个模型去教初始的模型,进行增强式学习,
让模型尽量输出用户喜欢的内容。经过这样的方式,使用了少量的人工标注的数据和少量的人工答案
排序的工作,引入了额外的知识,明显减少了模型输出不对齐的情况,使得Chat GPT以及
InstructGPT的输出更接近人类。
由此可见,单纯扩大模型参数并不是未来发展的唯一的方向,让模型去收集人类的反馈数据可能更有
利于模型迭代。目前Chat GPT使用的数据集大小并没有发布,但是其孪生模型InstructGPT的数据集
总共使用了77k的样本数,其中46k的样本是经过人工标注的,对于大模型训练来说,这个数据量还是
很少的,但是这已经产生了非常好的效果。
三、Chat GPT优劣
优势:
①模型参数量非常少,InstructGPT是只有Chat GPT 1/300的参数量,但是它的性能会比GPT3更好。
Chat GPT略多于InstructGPT,它的效果会比InstructGPT更接近人类一些。②打分模型的训练样本是经过人工偏好排序的,模型生成带有有
害、歧视、偏见等情况的输出概率更
低,即模型的价值观更正确。
③具有超强的文本处理能力,比如视频的脚本编写,旅游的行程计划,写论文等模式化的文本工作。
问题:
①调用慢。原因一是官方目前的请求量非常大;其次,模型本身是一个生成式模型,每次只能预测一
个字,再根据上文的内容来预测下一个字,所以从其原理上讲会计算慢一些。在Open AI的官网上一
般都会采用逐字输出的形式,以免用户等很久才能看到完全的输出。
②回答可能会出错,它缺乏逻复杂的逻辑和推理能力,比如这里给了他一道小学的应用题,看起来是
一本正经的,实际上里面的逻辑都是错的。它的训练语料是来自于2021年之前的,所以对于之后的世
界的了解是有限的。
③模型是一个黑盒模型,输出内容不可控,存在一定的法律风险。
四、Chat GPT的应用
首先是在搜索领域,微软近期已经宣布会把Chat GPT用在微软的套件中,比如bing用它来做搜索引擎
的辅助等。谷歌和百度都宣布接下来会发布自己的类Chat GPT的项目,谷歌正式发布Bard给测试人员
使用,百度将于3月上线ChatGPT产品,名为Ernie Bot。
在对话系统方面,比如智能客服上可以去做客户热线,理财方面的营销以及满意度调查,还有任务型
对话例如酒店预订、查天气、医院挂号、政务服务等等。另外在开放式的游戏中,可以为NPC提供更
真实的对话能力,例如虚拟数字人或者是闲聊机器人上可以看护小孩、对一些人进行心理辅导等等。
文本类创作相关的工作辅助,比如新闻广告业的营销文案的生成,商品描述生成,新闻撰写,教育行
业中的智能笔记或者是辅助语言学习,法律方面的文书撰写,互联网中的自动测试脚本的编写,编码
辅助,bug检测等等。
在金融行业中的应用,可以通过以下三个方向来看:搜索方面,进行行情的检索;对话系统方面,个
性定制领域内的在线客服以及工单处理,用户回访等等对话系统;辅助工作,包括智能文案的生成,
理财营销的文案生成,核实用户信息,逾期催收文案,内容质检等文本相关的工作都可以用这个模
型。
以下是应用的例子,这里是代码生成的例子,告诉他用Java来帮我写一个异步的爬虫,他会完整地告
诉你怎么写,以及每一步要做什么事情。另外比如可以做一些艺术类的创作,比如写歌词,这里可