nlp复习

一、分词

1.1 理解基于词典的如FMM、BMM

FMM
从左向右取待切分汉语句的m个字符作为匹配字段,m为大机器词典中最长词条个数。
1. 查找大机器词典并进行匹配。若匹配成功,则将这个匹配字段作为一个词切分出来。
2. 若匹配不成功,则将这个匹配字段的最后一个字去掉,剩下的字符串作为新的匹配字段,
进行再次匹配,重复以上过程,直到切分出所有词为止。

BMM
该算法是正向最大匹配的逆向思维,匹配不成功,将匹配字段的最前一个字去掉,实验表明,
逆向最大匹配算法要优于正向最大匹配算法。

1.2 说明【结婚的和尚未结婚的】不同的分词结果

(基于统计的如ngram,能够计算条件概率,在实现中为何要构建前缀字典)

极大似然估计:
p(wn|wn-1 wn-2 ... w2 w1) = C(w1 w2...wn)/C(w1 w2...wn-1)

bi-gram:
p(wn wn-1 wn-2 ... w2 w1) = p(wn wn-1)*p(wn-1 wn-2)*...*p(w2 w1)

前缀词典:
首先是基于统计词典构造前缀词典,如统计词典中的词“北京大学”的前缀分别是“北”、
“北京”、“北京大”;词“大学”的前缀是“大”。统计词典中所有的词形成的前缀词典
如下所示,你也许会注意到“北京大”作为“北京大学”的前缀,但是它的词频却为0,
这是为了便于后面有向无环图的构建。因为,在后面计算DAG的时候,
'北京大’可以作为后面还可以可以到达的词的一个指示

用以上随便解释结婚的和尚为结婚的分词结果

1.3 对于未登录词如何处理(HMM)(BMS)

1.4 Viterbi算法的优点是什么(好处、复杂度)

Viterbi算法实际上是用动态规划求解HMM模型预测问题,即用动态规划
求概率路径最大(最优路径)。这时候,一条路径对应着一个状态序列。
viterbi算法其实就是多步骤每步多选择模型的最优选择问题,
其在每一步的所有选择都保存了前续所有步骤到当前步骤当前选择的最小总代价
(或者最大价值)以及当前代价的情况下前继步骤的选择。
依次计算完所有步骤后,通过回溯的方法找到最优选择路径。

时间复杂度:
假设栅栏图的长为N,宽为D.维特比算法在每两层之间比较D*D次,
保留到下一层最长路径,依次递归,所以算法复杂度为O(N*D*D)

二、神经网络基础

2.1 感知机的局限性

无法处理异或门逻辑问题,感知机无法处理非线性情况,比如异或门逻辑,
这就是感知机的局限性。

2.2 为什么要用激活函数

深度学习的基本原理是基于人工神经网络,信号从一个神经元进入,
经过非线性的激活函数,传入到下一层神经元;再经过该层神经元的激活,
继续往下传递,如此循环往复,直到输出层。正是由于这些非线性函数的反复叠加,
才使得神经网络有足够的能力来抓取复杂的特征。加入激活函数,
是为了增强模型的非线性,如果不经过非线性激活,那么无论神经网络加多少层
永远都是线性组合,而加入了非线性激活函数后,已经可以证明,可以以任意精度
逼近非线性函数。显而易见,激活函数在深度学习中举足轻重。

2.3 阶跃函数、sigmoid和tanh的异同、tanh为什么比sigmoid好

1. 0-1阶跃函数
0-1激活函数很符合仿生学的要求,但是数学性质不好。因为不连续所以不可导,
在断点处导数无穷大,不利于后续的数学分析,而一般的反向传播神经网络都需要
反向求导过程。

2. sigmiod
sigmoid函数,这个函数在函数图像上很接近阶跃函数,范围是从0-1,
而且具备了极好的数学性质,便于数学推导。Sigmoid函数是深度学习领域开始时
使用频率最高的激活函数。

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值