NLP面试知识汇总

NLP面试知识汇总

1. ngram模型

是一种统计语言模型。常用的有unigram(1-gram),bi-ngram,tri-gram。
理论依据:
ngram根据概率公式推导,依据条件概率和乘法公式,假设有两个词A和B,在A后出现B的概率为: p ( B ∣ A ) = p ( A B ) p ( A ) p(B|A)=\frac{p(AB)}{p(A)} p(BA)=p(A)p(AB)上述式子可解释为在 A A A同时出现时 A B AB AB同时出现的概率,有 p ( B ∣ A ) = c ( A B ) c ( A ) p(B|A)=\frac{c(AB)}{c(A)} p(BA)=c(A)c(AB)其中 c ( A B ) c(AB) c(AB)为文中 A B AB AB出现的次数, c ( A ) c(A) c(A) A A A出现的次数。
变为乘法公式有: p ( A B ) = p ( B ∣ A ) p ( A ) p(AB)=p(B|A)p(A) p(AB)=p(BA)p(A)从而得到ngram概率公式: p ( A 1 A 2 . . . A n ) = p ( A 1 ) p ( A 2 ∣ A 1 ) p ( A 3 ∣ A 2 A 1 ) . . . p ( A n ∣ A n − 1 . . . A 1 ) p(A_1A_2...A_n)=p(A_1)p(A_2|A_1)p(A_3|A_2A_1)...p(A_n|A_{n-1}...A_1) p(A1A2...An)=p(A1)p(A2A1)p(A3A2A1)...p(AnAn1...A1)引入马尔科夫假设,即当前词的出现仅与之前几个词有关。即:
p ( A 1 , A 2 , . . . A n ) = p ( A i ∣ A i − m + 1 . . . A i − 1 ) p(A_1,A_2,...A_n)=p(A_i|A_{i-m+1}...A_{i-1}) p(A1,A2,...An)=p(AiAim+1...Ai1)ngram模型中n的影响:
* n变大时:对下一个词的约束性信息增大,更大的辨别力,更稀疏,并且n-gram统计的的总数更多,为 [ w o r d − n u m V ] [word-num^V] [wordnumV]个。
* n变小时:高频词次数更多,统计结果更可靠,更高的可靠性 ,但是约束信息更少。

n为特定值时,假设 ∣ V ∣ = 2 e 4 |V|=2e4 V=2e4,统计次数为:

n ngram个数
1 4e8
2 8e12
3 1.6e17

2. word2vec

NLP中,最细粒度的是 ,词组成 句子,句子组成 段落、篇章、文档。而word2vec就是表征词的技术。
为什么要有Word2vec???
利用模型处理需要将文本转换成数值形式,即嵌入到一个数学空间,这种嵌入方式,就叫词嵌入 word embedding,而 Word2vec 就是词嵌入 word embedding 的一种,是一种无监督预训练方法。
Word2vec的两个学习方式 : Skip-gram和CBOW

word2vec到底怎样训练:
答:上述可知,处理文本需要将文本转换为可处理的数值形式,也就是利用词袋模型,转换为one-hot形式输送入模型进行训练,而在模型处理的过程中,会对one-hot进行一系列的线性或非线性变换,而在one-hot向量线性变换且降维操作中得到的产物,就是最终需要的词向量,也就是该层的权重。

Skip-gram

利用中心词预测上下文,一般为上下两个词。目标函数形式化为 最大化对数似然函数:
A i m   f u n = ∑ w ∈ C l o g   p ( C o n t e x t ( w ) ∣ w ) Aim \ fun=\sum_{w \in C}log \ p(Context(w)|w) Aim fun=wClog p(Context(w)w)
请添加图片描述

图中 W V ∗ N W_{V*N} W

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值