第一部分:NLP
1、从规则语言模型到统计语言模型
2、统计语言模型:为自然语言建立的数学模型,用数学方法描述自然语言。P(s1,s2,s3,...)
3、马尔科夫假设与二元模型(N元模型)
4、古德-图灵估计:
解决0概率问题和”不平滑“模型问题
对于没有看见的时间,我们不能认为它发生的概率是0,因此我们从概率总量中分配一个很小的比例给这些没有看见的事件。这样一来,看见的那些事件的概率总和就小于1了,因此,需要将所有看见的事件概率调小,怎么调?根据“越是不可信的统计折扣越多”的原则进行(即:出现次数越少的词,折扣越多)。——劫贫济0
5、Zipf定律:
出现一次的词比出现两次的多,出现两次的词比出现三次的多。
6、语料选取:根据具体应用领域。
7、中文分词模型:动态规划寻找最优分词器:维特比算法
8、隐马尔科夫模型
马尔可夫假设:随机过程中各个状态St的概率分布,只与它前一个状态St-1有关,即:P(st|st-1,...,s1) = P(st|st-1)
马尔可夫过程(马尔科夫链):符合马尔可夫假设的随机过程称为马尔可夫过程。
隐马尔科夫模型:
(1)独立输出假设:输出Ot独立且Ot仅跟St相关。
(2)马尔可夫假设
9、鲍姆-韦尔奇算法/期望值最大化/EM过程
10、信息的作用:消除系统的不确定性
信息熵,条件熵,互信息,交叉熵(相对熵)
11、文本分类:
(1)用向量表示文章文本(TF-IDF)
(2)余弦相似度聚类计算——文本分类;计算文本相似度
12、改进:矩阵奇异值分解(SVD)——解决同时分类多个样本文章(计算量大,占内存多,耗时)的问题
A=XBY
X:同义词分类
Y:文章分类
B:词的语义类和文章类间的相关性
特点:省时,快速得到结果;不需要迭代;矩阵存储占内存;粗糙
适合:超大规模的文本粗分类
实际应用:先进行奇异值分解,得到粗分类结果,再利用计算向量余弦的方法,在粗分类结果基础上迭代几次,得到比较精确的结果,这样既节省时间又准确。
我的思考:以上是经典数学方法,目前可用深度学习搭建CNN,RNN做文本分类、句子(文章)相似度分析、问答