3分钟了解GPT Bert与XLNet的差异

2019-09-17 17:02:59 浏览数 (1)

译者 | Arno

来源 | Medium

【磐创AI 导读】:本文将会带大家在3分钟内理解GPT,BERT和XLNet的概念差异,欢迎大家转发、留言。

XLNet是一种新的预训练模型,在20项任务中表现优于BERT,且有大幅度的提升。

这是什么原因呢?

在不了解机器学习的情况下,不难估计我们捕获的上下文越多,预测就越准确。 因此,模型能够深入而有效地捕获大多数上下文的能力是其提升的原因。

让我们玩一个游戏,在下面的上下文中,[Guess1]和[Guess2]分别是什么呢?

[‘Natural’, ‘language’, ‘processing’, ‘is’, ‘a’, ‘marriage’, ‘of’, [Guess1], [Guess2], ‘and’, ‘linguistics’]

考虑到3分钟的限制,我就直接揭示答案了。

答案: [‘Natural’, ‘language’, ‘processing’, ‘is’, ‘a’, ‘marriage’, ‘of’, ‘machine’,‘learning’, ‘and’, ‘linguistics’]

我们使用符号Pr(Guess | Context) 代表一个基于上下文词的猜测概率。

GPT中,我们从左到右阅读,因此我们不知道 ‘machine’, ‘learning’各自后面的下文:

Pr (‘machine’ | [‘Natural’, ‘language’, ‘processing’, ‘is’, ‘a’, ‘marriage’, ‘of’])

Pr (‘learning’ | [‘Natural’, ‘language’, ‘processing’, ‘is’, ‘a’, ‘marriage’, ‘of’, ‘machine’])

知道‘machine’实际上可以帮助你猜‘learning’,因为‘learning’经常跟随‘machine’,而‘machine learning’是现在很火热的术语。

BERT中,与GPT对比,我们能知道预测单词前向和后向上下文,但我们在猜测 ‘machine’和 ‘learning’时都是基于相同的上下文:

Pr (‘machine’ | [‘Natural’, ‘language’, ‘processing’, ‘is’, ‘a’, ‘marriage’, ‘of’, ‘and’, ‘linguistics’])

Pr (‘learning’ | [‘Natural’, ‘language’, ‘processing’, ‘is’, ‘a’, ‘marriage’, ‘of’, ‘and’, ‘linguistics’])

拥有‘linguistics’实际上可以帮助你猜测‘machine’ ‘learning’ ,因为你知道自然语言处理是机器学习和语言学的完美结合。即使你不知道,有了‘linguistics’的存在,你至少知道预测单词不是 ‘linguistics’。

你可以看到BERT的明显缺点是,它无法知道 ‘machine’ 和 ‘learning’之间的联系。

那么我们如何结合GPT和BERT的优点呢?

XLNet 排列!排列的作用是即使我们只从左到右阅读,排列也允许我们捕捉前向和后向上下文(从左到右阅读,从右到左阅读)。

其中一种排列可以让我们捕捉到前向和后向上下文:

[‘Natural’, ‘language’, ‘processing’, ‘is’, ‘a’, ‘marriage’, ‘of’, ‘and’, ‘linguistics’, ‘machine’, ‘learning’]

Pr (‘machine’ | [‘Natural’, ‘language’, ‘processing’, ‘is’, ‘a’, ‘marriage’, ‘of’, ‘and’, ‘linguistics’])

Pr(‘learning’ | [‘Natural’, ‘language’, ‘processing’, ‘is’, ‘a’, ‘marriage’, ‘of’, ‘and’, ‘linguistics’, ‘machine’])

这一次,你拥有完整的上下文,在猜测 ‘machine’之后,你可以立即猜测‘learning’。 你可以清楚地看到XLNet结合了GPT和BERT的优点。

当然,如果你想了解更多细节,请阅读XLNet论文[1]。

[1]: https://arxiv.org/pdf/1906.08237.pdf

0 人点赞