欢迎光临散文网 会员登陆 & 注册

【花师小哲】当代炼金术(神经网络)前沿(15)——检测文本是否来源于GPT

2023-02-23 14:37 作者:花师小哲-中二  | 我要投稿

这篇专栏我们来看这篇论文:

这篇也被很多文章介绍过了,这是检测一段文本是否是大语言模型生成的模型。为什么现在才讲这一篇呢?主要是这种论文我一般都是直接过滤掉的(后面会讲为什么),然而机缘巧合下稍微了解了一下内容,感觉挺有意思的,于是打算讲一下。

1.为什么会过滤掉这类论文

我们发现,不管是之前的Diffusion还是当今的ChatGPT,在它们火爆后很快就会有一些检测程序出现。

如果让我做一个简单的检测程序,我会怎么做呢?其实做法非常简单,我只要写一个二分类神经网络或随便调用个别的什么分类器就可以了,然后收集一些模型生成的内容和一些真实的内容,训练一下程序就搞完了。整个过程也不需要大模型和大训练,能保证基本有用就行了。这样的做法非常简单,还能蹭到热度,做这类东西的人当然会多。

所以这类文章往往非常没意思。

当然,既然讲这一篇,那就说明这一篇它并不是这样做的,他甚至不需要额外训练模型,除了一些数学运算之外,需要做的事情只有一件——用魔法打败魔法

2.用魔法打败魔法

其实用魔法打败魔法也算是传统艺能了。

例如有一个模型是set transformertransformer一般是需要位置编码的,而set transformer想做一个位置无关的transformer,它是怎么做的呢?答案就是使用魔法,没错,set transformer把transformer们以某种方式拼起来就做出set transformer了(具体不多透露)。

这篇文章的思想也是这样,直接用大模型来检测大模型,甚至都不需要微调prompt,直接用zero-shot(简单来说就是开箱即用,不需要任何额外调教)

3.唬人的概念

这篇文章最唬人的一句话应该就是这句了:LLM tends to occupy negative curvature regions of the model's log probability function(大模型倾向于占据模型的对数概率函数负曲率区域),虽然有配图,但一上来确实不太好理解:

但其实这句话简单来说的话挺low的。我们问一个问题让大模型和人来分别回答,然后我们要求他们稍微修改答案,就会发现大模型修正的答案更有可能比原先的“差”,这个“差”是通过对数概率来体现的。

或者说,大模型在zero-shot的情况下最初给你的回答往往是最好或接近最好的,而真实的人类不会这样,修改答案后答案可能变好也可能变差。

当然,由于我一开始也不相信就单纯这样,也使用魔法来检验一下,为了保证公平,我也用zero-shot,ChatGPT给出的回答如下:

4.模型整体流程

模型整体流程如下:

简单来说,分为三步:

(1)对一段文本进行随机扰动(使用T5模型等,T5也是一个语言模型)

(2)把这段文本和扰动后的样本都扔到一个大语言模型里。图中用的是GPT-3,这里需要注意的是,你要检测一段文本是否是某个语言模型生成的,这里就要用对应的模型,这是由于不同模型的对数概率区间是不一样的。你要检测一段文本是否是ChatGPT生成的,那这里就放ChatGPT。

这里用zero-shot应该是防止对数概率空间发生变化之类的。

(3)进行对数概率比较,上面那个算式,对于人类来说结果应该很接近0,而大模型结果一般是较大的正数,说明扰动后的文本确实“质量”下降了

5.结语

我这里就不扯别的了(例如什么“斯坦福大学发明XXX对抗ChatGPT”),这种方法的好处是泛化性比较强,因为是发现了一条“规律”,虽然这个规律说实话我个人感觉除了唬人外也不惊艳(梯度下降的结果不就是这样吗)就是了。


【花师小哲】当代炼金术(神经网络)前沿(15)——检测文本是否来源于GPT的评论 (共 条)

分享到微博请遵守国家法律