【Datawhale】简单学点大模型(1)

引用部分为个人的补充和笔记

1.1 什么是语言模型

语言模型(LM)的经典定义是一种对令牌序列(token)的概率分布。假设我们有一个令牌集的词汇表 V V V 。语言模型p为每个令牌序列 x 1 , . . . , x L x_{1},...,x_{L} x1,...,xL V V V 分配一个概率(介于0和1之间的数字):

p ( x 1 , … , x L ) p(x_1, \dots, x_L) p(x1,,xL)

概率直观地告诉我们一个标记序列有多“好(good)”。例如,如果词汇表为 {ate, ball, cheese, mouse, the},语言模型可能会分配以下概率(演示):

p ( the, mouse, ate, the, cheese ) = 0.02 , p(\text{the, mouse, ate, the, cheese}) = 0.02, p(the, mouse, ate, the, cheese)=0.02,

p ( the, cheese ate, the, mouse ) = 0.01 , p(\text{the, cheese ate, the, mouse}) = 0.01, p(the, cheese ate, the, mouse)=0.01,

p ( mouse, the, the, cheese, ate ) = 0.0001 , p(\text{mouse, the, the, cheese, ate}) = 0.0001, p(mouse, the, the, cheese, ate)=0.0001,

上述示例中,语言模型应该隐含地赋予"𝗆𝗈𝗎𝗌𝖾 𝗍𝗁𝖾 𝗍𝗁𝖾 𝖼𝗁𝖾𝖾𝗌𝖾 𝖺𝗍𝖾"一个非常低的概率,因为它在语法上是不正确的(句法知识)。由于世界知识的存在,语言模型应该隐含地赋予"𝗍𝗁𝖾 𝗆𝗈𝗎𝗌𝖾 𝖺𝗍𝖾 𝗍𝗁𝖾 𝖼𝗁𝖾𝖾𝗌𝖾"比"𝗍𝗁𝖾 𝖼𝗁𝖾𝖾𝗌𝖾 𝖺𝗍𝖾 𝗍𝗁𝖾 𝗆𝗈𝗎𝗌𝖾"更高的概率。这是因为两个句子在句法上是相同的,但在语义上却存在差异,而语言模型需要具备卓越的语言能力和世界知识,才能准确评估序列的概率。

语言模型也可以做生成任务。如定义所示,语言模型p接受一个序列返回一个概率来评估其好坏。我们也可以根据语言模型生成一个序列。最纯粹的方法是从语言模型 p p p以概率 p ( x 1 : L ) p(x_{1:L}) p(x1:L)进行采样,表示为:

x 1 : L ∼ p . x_{1:L}∼p. x1:Lp.

如何在计算上高效地实现这一点取决于语言模型p的形式。实际上,我们通常不直接从语言模型中进行采样,这既因为真实语言模型的限制,也因为我们有时希望获得的不是一个“平均”的序列,而是更接近“最佳”序列的结果。

自回归语言模型(Autoregressive language models)

将序列 x 1 : L x_{1:L} x1:L 的联合分布 p ( x 1 : L ) p(x_{1:L}) p(x1:L) 的常见写法是使用概率的链式法则

p ( x 1 : L ) = p ( x 1 ) p ( x 2 ∣ x 1 ) p ( x 3 ∣ x 1 , x 2 ) ⋯ p ( x L ∣ x 1 : L − 1 ) = ∏ i = 1 L p ( x i ∣ x 1 : i − 1 ) . p(x_{1:L}) = p(x_1) p(x_2 \mid x_1) p(x_3 \mid x_1, x_2) \cdots p(x_L \mid x_{1:L-1}) = \prod_{i=1}^L p(x_i \mid x_{1:i-1}). p(x1:L)=p(x1)p(x2x1)p(x3x1,x2)p(xLx1:L1)=i=1Lp(xix1:i1).

这里有一个基于文本的例子:

p ( t h e , m o u s e , a t e , t h e , c h e e s e ) =   p ( t h e ) p ( m o u s e ∣ t h e ) p ( a t e ∣ t h e , m o u s e ) p ( t h e ∣ t h e , m o u s e , a t e ) p ( c h e e s e ∣ t h e , m o u s e , a t e , t h e ) . \begin{align*} p({the}, {mouse}, {ate}, {the}, {cheese}) = \, & p({the}) \\ & p({mouse} \mid {the}) \\ & p({ate} \mid {the}, {mouse}) \\ & p({the} \mid {the}, {mouse}, {ate}) \\ & p({cheese} \mid {the}, {mouse}, {ate}, {the}). \end{align*} p(the,mouse,ate,the,cheese)=

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值