一、语言模型:
概率:语言模型是计算一个句子是是句子的概率。
通过概率计算来刻画语言模型
𝑠𝑒𝑛𝑡𝑒𝑛𝑐𝑒 ={𝑤1, 𝑤2 , … , 𝑤𝑛}
P(张三 很 帅)=P(张三)*P(很|张三)*P(帅|张三, 很)
P(张很帅 很 帅)=P(张很帅)*P(很|张很帅)*P(帅|张很帅, 很)
P(张三 很 漂亮)=P(张三)*P(很|张三)*P(漂亮|张三, 很)
统计语言模型中的平滑操作:
有一些词或者词组在语料中没有出现过,但是这不能代表它不可能存在。 论文储备知识 Pre-knowledge 统计语言模型中的平滑操作 平滑操作就是给那些没有出现过的词或者词组也给一个比较小的概率。 Laplace Smoothing也称为加1平滑:每个词在原来出现次数的基础上加1。(防止相乘后概率变为0)
例如1000个词:
A出现0次,B出现990次,C出现10次
正常计算如下:
A:0 P(A)=0/1000=0
B:990 P(B)=990/1000=0.99
C:10 P(C)=10/1000=0.01
平滑计算:
A:1 P(A)=1/1003=0.001
B:991 P(B)=991/1003=0.988
C:11 P(C)=11/1003=0.011
虽然解决了出现概率为零的问题,但是平滑操作依然带来了两个问题: 参数空间过大,数据稀疏严重
于是提出来马尔科夫假设,解决参数空间过大的问题。
马尔科夫假设: 下一个词的出现仅依赖于前面的一个词或几个词
例如:
我 今天 下午 打 羽毛球
p (𝑠𝑒𝑛𝑡𝑒𝑛𝑐𝑒) = 𝑝 (我,今天,下午,打,羽毛球 )
= 𝑝( 我) 𝑝( 今天|我) 𝑝 (下午|今天,我 )𝑝 (打|下午,今天,我) 𝑝 (羽毛球|我,今天,下午,打 )
= 𝑝( 我) 𝑝( 今天|我 )𝑝( 下午|今天 )𝑝( 打 |下午) 𝑝( 羽毛球|打)
语言模型评价指标:困惑度(Perplexity):
二、论文知识树
词的表示方式:
One-hot Representation:
“话筒”表示为 [0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 ...]
“麦克”表示为 [0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 ...]
稀疏矩阵表示方法:
“话筒”3:1
“麦克”8:1
稀疏矩阵表示方法存在的问题:词越多,维数越高(词表大小V),无法表示词和词之间关系
下图 是one-hot 表达方式纵坐标表示一个样本 下图 是分布式表示/稠密表示按照类别标识:例如第三列是长方体,第 四列是椭圆 ,第一列标识纵向,第二列标识横向
论文地址:https://www.quora.com/Deep-Learning-What-is-meant-by-a-distributed-representation
发展历程:
https://nlp.stanford.edu/projects/glove/
https://nlp.stanford.edu/~socherr/SocherGanjooManningNg_NIPS2013.pdf
三、论文介绍:
1. 传统NLP把词当成最小单元处理,其中一个例子是N-gram
2. 然而这种方法在许多任务中有其局限性,如语音识别、机器翻译
3. 数据量较大时,可以采用分布式表示方法,如语言模型的分布式表示效果会超过 N-gram
四、对比模型:
前馈神经网络语言模型和循环神经网络语言模型
Feedforward Neural Net Language Model(NNLM)前向神经网络语言模型 --- 无监督,不需要标注语料
1、是否去除停用词
2、是否可以加入词性
Recurrent Neural Net Language Model (RNNLM) 循环神经网络语言模型
五、Word2Vec
Word2vec 原理:
• 语言模型基本思想:句子中下一个词的出现和前面的 词是有关系的,所以可以使用前面的词预测下一个词。
• Word2vec基本思想:句子中相近的词之间是有联系 的,比如今天后面经常出现上午,下午和晚上。所以Word2vec的基本思想就是用词来预测词,skip-gram使用中心词预测周围词,cbow使用周围词预测中心词。
Skip-Gram:
给出中心词,预测周围词
给出 “下午“ wt
预测 “我” 的概率为 P(wt-1|wt)
预测 “今天” 的概率为 P(wt-2|wt)
预测 “打” 的概率为 P(wt+1|wt)
预测 “羽毛球” 的概率为 P(wt+2|wt)
CBOW:
负采样:
CBOW Negative Sampling 负采样:
重采样:
减少频率出现特别高的词
Subsampling of Frequent Words
自然语言处理共识:文档或者数据集中出现频率高的词往往携带信息 较少,比如the,is,a,and,而出现频率低的词往往携带信息多。
例如 搜索引擎中
什么是青蛙?
1、什么是深度学习,什 么是CNN,什么是 RNN,这篇告诉你。
2、青蛙(Frog)属于脊 索动物门、两栖纲、 无尾目、蛙科的两栖 类动物,成体无尾, 卵产于水中
六、模型复杂度
整体对比模型复杂度