动手学深度学习——语言模型

语言模型

一段自然语言文本可以看作是一个离散时间序列,给定一个长度为 T T T的词的序列 ω 1 , ω 2 , . . . , ω T {\omega_{1},\omega_{2},...,\omega_{T}} ω1,ω2,...,ωT,语言模型的目标就是评估该序列是否合理,即计算该序列的概率。假设序列的每个词是依次生成的,则:
P ( ω 1 , ω 2 , . . . , ω T ) = Π t = 1 T P ( ω t ∣ ω 1 , . . . , ω t − 1 ) = P ( ω 1 ) P ( ω 2 ∣ ω 1 ) . . . P ( ω T ∣ ω 1 ω 2 . . . ω T − 1 ) P(\omega_{1},\omega_{2},...,\omega_{T})=\Pi_{t=1}^{T}P(\omega_{t} | \omega_{1},...,\omega_{t-1})=P(\omega_{1})P(\omega_{2} | \omega_{1})...P(\omega_{T} | \omega_{1}\omega_{2}...\omega_{T-1}) P(ω1,ω2,...,ωT)=Πt=1TP(ωtω1,...,ωt1)=P(ω1)P(ω2ω1)...P(ωTω1ω2...ωT1)
语言模型的参数就是词的概率以及给定前几个词情况下的条件概率。设训练数据集为一个大型文本语料库,如维基百科的所有条目,词的概率可以通过该词在训练数据集中的相对词频来计算,例如, ω 1 \omega_{1} ω1的概率可以计算为:
P ^ ( ω 1 ) = n ( ω 1 ) n \hat{P}(\omega_{1}) = \frac{n(\omega_{1})}{n} P^(ω1)=nn(ω1)
其中 n ( ω 1 ) n(\omega_{1}) n(ω1)为语料库中以\omega_{1}作为第一个词的文本的数量, n n n为语料库中文本的总数量。
P ^ ( ω 2 ∣ ω 1 ) = n ( ω 1 , ω 2 ) n ( ω 1 ) \hat{P}(\omega_{2} | \omega_{1}) = \frac{n(\omega_{1},\omega_{2})}{n(\omega_{1})} P^(ω2ω1)=n(ω1)n(ω1,ω2)
其中 n ( ω 1 , ω 2 ) n(\omega_{1},\omega_{2}) n(ω1,ω2)为语料库中以 ω 1 \omega_{1} ω1作为第一个词, ω 2 \omega_{2} ω2作为第二个词的文本的数量。

时序数据的采样

时序数据的采样有两种:随机采样和相邻采样。

(1)随机采样
每次迭代中随机采样一个小批量作为训练数据。在随机采样中,每个样本是原始序列上任意截取的一段序列,相邻的两个随机小批量在原始序列上的位置不一定相毗邻。
(2)相邻采样
在相邻采样中,相邻的两个随机小批量在原始序列上的位置相毗邻。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值