站点图标 AI技术聚合

ChatGPT原理剖析

文章目录

ChatGPT常见误解

1. 罐头回应

由开发者准备好的罐头回应:

下面是一个问答,让ChatGPT讲一个关于人工智慧的笑话,但可以看出来,这个笑话的笑点显然和我们平常人不太一样,显得笑点非常奇怪:

2. 网络搜寻重组

你搜寻之后,ChatGPT从网上搜寻答案,整理重组给你想要的答案:

但实际上,多数ChatGPT的答案在网络上都找不到一模一样的句子,甚至很多是幻想出来的。

比方说这个例子:

这些网站看上去有模有样,但其实都是虚构的,不是真实存在的。

官方也给出了回应,说ChatGPT是没有连网的:

ChatGPT真正做的事——文字接龙

ChatGPT真正在做的事情一言以蔽之就是文字接龙,可以把它理解成一个函数,输入一些东西就输出一些东西。可以输入一个句子,输出一个词汇的几率,然后做取样,举例:

它是从一个几率分布中做取样,所以它每次产生的答案是有随机性的。

那现在来看,它也只能回答一个字呀,它是怎么回答一个句子的呢?

它会将原来输出的字作为添加到输入当中去,然后继续产生新的输出,一直反复,知道最后选择出一个结束的符号为止。

那它怎么知道我们之前跟它说的话呢?其实原理是一样的,同一则对话的历史记录都会被作为输入,接入其中。

这个函数会非常复杂,可能有1700亿个以上的参数!

这么一个复杂且神奇的函数f是怎么形成的呢?

是通过大量网络上的资料以及人类的指导下,训练出来的,当神奇函数f找到后,ChatGPT就不需要联网了。我们平常使用的时候,就是测试,测试的时候就不需要上网搜集资料了。

ChatGPT背后的关键技术——预训练(Pre-train)

  • 预训练(Pre-train)又叫自督导式学习(Self-supervised Learning)或基石模型(Foundation Model)

其中ChatGPT中的P就是这个意思:

一般机器是怎样学习的?

以一个英文翻译成中文为例,我们需要提供大量的成对的句子,提供给机器:

这种学习成为督导式学习。

有了成堆资料机器会自动找到函数f:

然而要将一般的机器学习步骤运用在ChatGPT上,我们需要给它提供大量的学习资料,但人类老师提供的资料也许是不足够的,当有人问到它之前没有遇到过得问题,那么它也无法回答:

所以ChatGPT还运用到了另外一个技术,可以无痛制造成对资料

实际上,网络上的很多句子,都能形成成对的问答:

其实ChatGPT是在GPT基础上继续发展而来的,从2018年的GPT到后来的GPT2.0,GPT3.0都只是用到了网络上的大量数据,当然每一代都比上一代要多用很多的数据。但是效果并不那么好,之后加入了人类老师的指导变成了ChatGPT:

这其中,在没有人类老师指导的情况下,学习大量网络上的数据,此时称之为预训练(自督导式学习),而在人类老师的指导下呢,就称之为微调(finetune)。

当然,ChatGPT还有用到增强式学习:

当人类老师比较懒不想教AI的时候,或者人类老师也不知道标准答案的时候,就可以使用增强式学习(Reinforcement Learning,RL)这个时候我们只需要点个赞,或者点个踩就可以,比较省事。

ChatGPT带来的研究问题

1. 如何精准提出需求

  • 当我们不能精准提出需求的时候:

  • 当我们精准提出需求的时候:

2. 如何更改错误

如何让ChatGPT修改一个错误,并且不会导致其他错误,这是一个新的主题,叫做:Neural Editing

3. 侦测AI生成的物件

4. 不小心泄露秘密?

有时候这个大型语言模型也许会泄露秘密?

有时候我们不小心告诉它一些东西,有没有办法让它遗忘呢?这是一个新的研究主题,这个主题叫做:Machine Unlearning

文章出处登录后可见!

已经登录?立即刷新
退出移动版