找回密码
 立即注册
查看: 644|回复: 5

能大致讲一下ChatGPT的道理吗?

[复制链接]

1

主题

0

回帖

12

积分

新手上路

积分
12
发表于 2023-5-8 18:19:58 | 显示全部楼层 |阅读模式
能大致讲一下ChatGPT的道理吗?
回复

使用道具 举报

1

主题

4

回帖

26

积分

新手上路

积分
26
发表于 2023-5-8 18:20:49 | 显示全部楼层
ChatGPT是一种基于深度学习的大型语言模型,它使用了一种称为“预训练-微调”的技术来训练。在预训练阶段,模型使用大规模的语料库进行自我训练,以学习语言的通用规律和模式。然后,在微调阶段,模型使用针对特定任务的数据集进行微调,以提高其在该任务上的性能。

ChatGPT的预训练阶段使用的是Transformer架构,这种架构已经被证明在自然语言处理领域非常有效。在预训练阶段,模型使用大量的文本数据来学习语言的上下文信息和语义关系。具体来说,模型会根据输入的文本序列生成一个对应的输出序列,同时利用注意力机制来聚焦于不同的文本位置,从而更好地理解输入文本的含义。

在微调阶段,ChatGPT使用了两个不同的数据集:一个是基于Web文本的新闻文章,另一个是基于社交媒体帖子的对话数据。这些数据集被用来对模型进行微调,以使其能够适应特定的对话场景和语言表达方式。例如,微调后的模型可以更好地理解对话中的意图、情感和上下文信息,并能够更准确地回答用户的问题或提供相关的建议。

总之,ChatGPT的原理是通过预训练和微调技术来训练大型语言模型,以便在各种自然语言处理任务中表现出色。它的成功得益于其使用的Transformer架构和大规模的数据集,以及对微调技术的精确控制和优化。
回复

使用道具 举报

0

主题

4

回帖

13

积分

新手上路

积分
13
发表于 2023-5-8 18:21:14 | 显示全部楼层
GPT是“Generative Pre-trained Transformer”的缩写,它是一种基于Transformer架构的自然语言处理模型,主要有以下三个方面的技术原理:

1. G(Generative)- 生成模型
GPT是一种生成模型,它可以生成类似于人类语言的文本,例如文章、新闻、对话等等。生成模型的核心思想是学习一个概率分布模型,该模型可以给出一个给定上下文下下一个单词出现的概率分布。在GPT中,这个模型是由一个大规模的神经网络构成的,该网络通过大量的无监督学习来预测下一个单词。
注:机器的学习方式有三种:监督学习、无监督学习和强化学习。
监督学习就像老师在教学生一样,机器需要有一些数据作为“答案”,然后通过学习这些数据,可以预测未来的结果。比如,机器可以通过学习数学题的答案来预测下一个数学题的答案。
无监督学习就像是让机器自己去发现数据中的规律和模式,没有“答案”这个概念。机器会根据数据的相似性将它们归类,并且找出它们之间的联系。比如,机器可以通过学习相似的图片来将它们分类到不同的组别中。
强化学习就像是让机器玩游戏一样,机器需要在一个环境中进行学习,在不同的情况下进行尝试,不断地根据反馈来调整策略,最终获得最好的结果。比如,机器可以通过学习下棋来提高自己的棋艺,最终成为一个高手。


2. P(Pre-trained)- 预训练
GPT是一种预训练模型,它使用了大量的无监督学习来学习自然语言的特征,然后再通过有监督学习来微调模型以适应具体任务。在预训练阶段,GPT使用了海量的文本数据来学习自然语言的模式和规律,例如词汇、语法和语义等等。这个预训练过程使得GPT具有了很强的语言理解能力,可以处理各种自然语言任务。

3. T(Transformer)- 转换器
GPT使用了Transformer架构作为它的核心模型,Transformer是一种基于自注意力机制的神经网络模型。在自注意力机制中,模型可以自动地对输入中的每个位置进行加权,以便于识别重要的特征。Transformer通过自注意力机制来实现长文本序列的建模,并且具有很好的并行化能力,使得GPT可以在大规模数据上进行高效的训练和推理。
注意力机制是一种模拟人类思维方式的机器学习技术。简单来说,就是让机器能够像人类一样在处理信息时,集中注意力于某些重要的信息,而忽略其他不重要的信息。这种技术可以让机器在处理大量信息时更加高效,也可以让机器在处理任务时更加智能。

举个例子,比如你要在一堆字母中找出“B”,如果你把注意力放在每一个字母上逐个比较,那么会非常耗时耗力。但是,如果你能够像人类一样,快速地把注意力集中在“B”这个字母上,那么就可以很快找到它。这就是注意力机制在机器学习中的作用。

对于小学生来说,可以类比于做数学题时,需要把注意力集中在题目中的重要信息上,比如题目要求的计算方式、数字大小等等,而忽略一些无关紧要的信息。这样可以帮助他们更加高效地完成数学题,也能让他们的思维更加聚焦,提高解题能力。
回复

使用道具 举报

0

主题

4

回帖

16

积分

新手上路

积分
16
发表于 2023-5-8 18:21:25 | 显示全部楼层
本文《极简ChatGPT原理》尽量使用通俗易懂的语言来介绍ChatGPT的基本原理和使用方法。
一、深度学习与语言模型

深度学习就是用层数较多(深)的人工神经网络从数据中学习输入与输出之间映射关系的算法,而人工神经网络是受生物神经网络的结构和功能启发下设计的计算模型。
用深度学习训练得到的网络就叫深度神经网络,它可以简单的看成一个函数,能够完成任何输入到输出的转换。比如:我们可以用它玩成语补全的游戏,输入成语的前三个字,让网络输出最后一个字(见图1)。



图1. 成语补全的深度神经网络

语言模型可以看成是成语补全的扩展版,它能够给定任意上文的情况下,预测下一个字或词。比如:输入“床前明月光,疑是地”,模型会输出“上”,然后将“上”添加到原输入中变成“床前明月光,疑是地上”,再输入到模型中,则会输出“霜”。如此这般,可以生成出完整的唐诗《静夜思》。使用这样的语言模型就可以完成文本生成任务了,类似技术被称为生成式人工智能(当然也还要包括生成图像、声音和视频等等啦)。
能够依据多长的上文来预测下一个字或词对模型的性能影响较大,目前一般从几千到几万个字或词不等,能够处理的上文越长,模型越强大。很多情况下,相同的上文,可以有多个不同的下文,所以模型输出实际上是不同可选字或词的概率分布。基于这些概率分布,使用随机采样方法就可以为同一个上文生成不同的下文,这种能力对于ChatGPT这种聊天和对话模型非常有用,因为它可以带来回答的多样性。
二、ChatGPT训练三步走

第一步“学会说话”:我们用深度神经网络来训练语言模型,先收集包含各种语言(英文、中文、法文等)尽可能多的文本,每次随机抽一段上文,让模型学会接着往下“背诵”(见图2)。由于看过和背过的文字实在是太多了(实际训练使用了几乎所有能从各种渠道获得的文字和图书资源),模型就可以像模像样地说话了。训练时除了使用海量文本,还会包括大量的代码(就当普通文本一样对待)。一般认为代码有助于提高模型的“逻辑推理”能力,因为代码实现的算法就是对求解问题所需逻辑步骤的描述。



图2. 使用海量包含多种语言的文本训练语言模型

第二步“理解意图”:光会文字接龙肯定是不够的,最终目标是要用它来替我们干活的。所以这一步我们让模型统一以“给上文、补下文”方式来学习完成各种各样的任务。问答任务直接可以用“给上文(问题)、补下文(回答)”方式实现,但有些任务还需要在上文中加上提示(见图3)。以翻译为例,除了告诉模型需要翻译的内容外,还要指示模型翻译成哪种目标语言。这一步提示学习完成之后,模型即已“博览群书”(第一步)而“胸有成竹”,又能“领会意图”(第二步)而“对答如流”,已经处于基本可用的状态了。



图3. 多任务提示学习让模型学会各种任务(绿色字体为提示语)

第三步“反馈择优”:对于某些问题,模型可能会生成带有偏见、歧视或者令人不适的回答。另外,之前提到过,对于同一个问题,模型能够生成多个不同的回答。这一步中我们让人们对同一问题的不同回答进行排序,然后采用强化学习算法(从交互中得到反馈,迭代优化模型的生成策略)进一步调整模型,使输出回答更符合人们的期望,达到与人们期望对齐的效果(见图4)。



图4. 使用强化学习提高模型生成与人们期望相符回答的概率

经过以上学会说话、理解意图和反馈择优三个主要训练步骤,能够以自然语言对话方式完成各种任务的生成式大模型就构建出来了,之后当然还可用领域数据或强化学习进一步对模型进行迭代精调。一般而言,模型的规模越大,能够存储和融合的信息和知识就越多,性能也就越好。
三、情景学习与思维链

使用ChatGPT时,情景学习(In-context Learning)方法能够显著提高其回答的质量,它的原理其实也非常简单。比如:问一位年幼的孩子4乘以5等于多少,他可能答不上来。但你先告诉他:“1乘以5等于5;2乘以5等于10;3乘以5等于15。”接着再问他:“4乘以5等于多少?”,他回答正确的可能性就增加了。同样,情景学习也是在提问前列举一些相似的例子作为输入喂给模型。
以影评的情感分析为例(见图5),先给出三个影评及其情感极性(好评、中性和差评),然后让模型分析“看完后让人感慨万分,久久不能忘怀。”的极性。



图5. 影评情感分析中使用情景学习的例子

一般来讲,使用情景学习时,所给出的例子越多越好。这里有一个有趣的现象值得一提,测试表明在所给出的例子中标签(即图5中的“差评”、“中性”和“好评”)是否正确与性能关系不大。比如:我们将“主演表情作作、略显浮夸。”的标签改成“好评”,又将“这部电影叙事紧凑、特技一流。”的标签改成“差评”,并不会影响模型对于“看完后让人感慨万分,久久不能忘怀。”影评的分析结果。但是例子呈现的格式(图5为一则影评后跟相应的情感标签,中间以空格分隔)要与提问的形式保持一致,并且文字内容要来自同一领域(图5中的例子不宜是餐馆或旅店评价的语句,因为问题是对电影评价的情感分析)。
我个人认为出现以上现象的原因是:ChatGPT是一种集成了语言运用、语义理解和世界知识的模型。模型其实已经具备了回答所需要的知识,少量的例子并不足于改变模型对于问题的判断和回答,难点是如何引导模型准确提取出与问题相关的知识来。所以情景学习中的例子要来自同一领域,这有利于模型检索出回答问题所需的相关信息和知识。同时,以统一的格式呈现例子和问题,则有利于模型按格式规定的顺序依次生成回答。
思维链(Chain-of-Thought)可以看成是情景学习的扩展,它不仅给出例子及相应结果,还给出得到该结果的计算或推理步骤(见图6)。本人猜想思维链有效的原因是给模型解题提供了一种模板或过程的指引,这种序列化的文本模板易于被生成模型所使用,它为生成较长内容的整体结构和中间步骤进行了预先的规划。这种模板也为模型在特定步骤上调取计算或推理所需知识提供了约束,从而引导模型得出正确的答案。



图6. 求解数学应用题时使用思维链的例子

四、修改提示语优化结果

提示语(本文第二节的第二步提到过)的好坏确实会影响ChatGPT的回答质量(情景学习和思维链都可以看成是特殊的提示),现在已经出现了提示工程(Prompt Engineering)这个研究方向和提示工程师这种职位。撰写好的提示语有两个基本原则:

  • 指令清晰并且具体;
  • 给模型思考的时间。
第1条原则比较好理解,一般不要担心指令写得过长。在没有冗余的情况下,宜长不宜短。第2条原则的意思是复杂问题不要让模型直接得出结论,而要详细指示所需步骤,然后让模型根据每一步得到的结果再给出最终的判断。比如:对于一道比较复杂的数学应用题,不要直接问某个答案是否正确。可以参考以下形式来写提示语:

  • 第一步:先求解这道数学应用题;
  • 第二步:将求解出的答案与给出的答案进行比较;
  • 第三步:根据比较的结果,回答给出的答案是否正确。
如果以API方式批量调用ChatGPT的话,这里提醒一个小技巧。可以指示ChatGPT以JSON、HTML等结构化形式返回结果,以方便提取所需的内容。
最近斯坦福大学的Andrew Ng和OpenAI的Isa Fulford联合出了个“ChatGPT Prompt Engineering for Developers”的免费短课,值得听一下。课程的网络链接是https://www.deeplearning.ai/short-courses/chatgpt-prompt-engineering-for-developers/
五、能力评估和注意问题

2022年11月所推出的ChatGPT已经非常可怕了,OpenAI公司又于2023年3月推出比ChatGPT更为强大的GPT-4,并且还开始支持网页搜索、图片生成、计算器等插件(Plugins),使其能够在必要时调用插件来提高解决问题的能力。
ChatGPT在没有针对医学知识精调和强化的情况下,在美国医学执照考试的三个部分中达到或接近通过的门槛。Google公司对ChatGPT进行了程序员招聘面试,结果其编程能力可匹敌一位三级水平的软件工程师,每年可攒得18.3万美元薪资。ChatGPT还在MBA核心课程《运营管理》的期末考试中的基本运营管理和流程分析方面表现出色,不仅答案正确,而且能给出合理的解释。
我们近期借助认知心理学方面的理论对ChatGPT认知能力进行了评测,它在词汇的任务上表现相对出色,与英语母语的16岁左右高中生的认知能力相当,但逻辑推理和数字处理方面的能力相对较弱,相当于10岁左右的小学生水平,整体表现文强理弱。
ChatGPT和GPT-4等本质上是能够执行生成任务的机器学习模型,其天生会存在或衍生出以下一些问题:

  • “幻觉”问题,即生成看起来似乎可信,但不准确或编造的信息(天生什么话都会接);
  • 容易生成带有偏见、歧视和不符合伦理内容(训练使用的数据集里就存在);
  • 缺乏及时更新信息和知识的方法(使用网页搜索插件会有所缓解);
  • 某些任务的返回结果受提示词的影响较大;
  • 使用和交互时可能会泄露个人的隐私;
  • 可能被某些人滥用来制造虚假信息和内容等。
好吧,就到这里了!类似ChatGPT这种生成式大模型必然会对我们未来的工作生活产生较大影响。目前网络上绝大部分内容还是人类创造的,之后机器自动生成的比重会不断上升。既然避不开、躲不过、逃不脱,我们只能选择了解它、适应它、利用它。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
回复

使用道具 举报

2

主题

1

回帖

12

积分

新手上路

积分
12
发表于 2023-5-8 18:21:48 | 显示全部楼层
ChatGPT是一种基于深度学习的自然语言处理模型。它可以通过大量的语料库学习人类语言的结构和规律,并生成人类类似的语言模型。


其原理是,ChatGPT使用了一种称为“Transformer”的模型架构,这种架构可以有效地处理长文本序列,并从中提取上下文信息。ChatGPT通过预训练大量的语料库,学习了语言的语法、语义、上下文等特征,从而可以生成流畅、自然的语言。
同时,ChatGPT还可以通过微调来适应特定的任务和领域,例如问答、文本分类等。通过微调,我们可以让ChatGPT生成更准确、更符合特定场景的语言。
而每个人都可以训练一个属于自己的机器人助理,这得益于ChatGPT的开放源码和强大的自我学习能力。通过使用开源库,我们可以训练自己的ChatGPT模型,从而生成符合自己需求的机器人助理。
需要注意的是,训练一个ChatGPT模型需要大量的计算资源和数据,因此对于普通用户来说,可能需要借助云端计算资源或使用预训练模型进行微调。不过,随着技术的不断发展,未来训练自己的机器人助理可能会变得更加容易和普及化。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
回复

使用道具 举报

0

主题

2

回帖

17

积分

新手上路

积分
17
发表于 2023-5-8 18:22:22 | 显示全部楼层
ChatGPT是一种基于GPT模型的对话生成系统,它采用了与GPT-2和GPT-3相似的架构和技术。ChatGPT基于大规模预训练模型,可以生成连贯、自然的对话。



ChatGPT的原理主要包括以下几个步骤:
1. 预处理:将对话数据集进行处理和清洗,以便更好地适应ChatGPT的训练。
2. 模型训练:使用大规模的对话数据集对ChatGPT进行训练。ChatGPT使用的是自监督学习的方法,通过最大化预测下一个单词的概率来学习对话的语言模式和上下文信息。
3. 对话生成:在生成对话时,ChatGPT会基于先前的对话历史和上下文信息来预测下一个可能的回复。它会考虑整个对话历史,以及与当前对话相关的知识和主题,生成具有连贯性和自然性的回复。
4. 对话评估:对话生成完成后,ChatGPT会使用一系列评估指标来评估生成的回复质量,例如连贯性、自然性、相关性等。如果生成的回复不符合要求,ChatGPT会进行调整和改进。
ChatGPT的原理是基于大规模预训练模型的自监督学习方法,通过学习对话的语言模式和上下文信息来生成连贯、自然的对话。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|T9AI - 深度人工智能平台 ( 沪ICP备2023010006号 )

GMT+8, 2024-9-19 09:40 , Processed in 0.068123 second(s), 23 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表