NPL知识总结
第一章NLP基础
自然语言生成三阶段:文本规划、语句规划、实现
AI三次浪潮:1956-1976逻辑主义为核心,1976-2006神经网络,2006-now大数据的深度学习
第二章NLP前置技术
\ |
转义 |
^ |
行首 |
$ |
行尾 |
* |
任意次 |
+ |
》=1次 |
? |
0或1次 |
. |
任意字符 |
第三章中文分词技术
对比规则分词,其他分词方法不需要耗费人力维护词典,能较好的处理歧义,和未登录词,是主流方法,但效果依赖于训练语料的质量,计算量大。
例题一、假设字典为:{"轻工业", "工业", "质量", "产品", "大幅度",“提升”,”年轻“} ,年份单独分词。
现有句子:"2013 年轻工业产品质量大幅度提升",
1.采用正向最大匹配法的分词结果是 2013|年 轻 |工 业 |产 品 |质 量 |大幅度|提 升
2. 采用逆向最大匹配法的分词结果是 2013|年 |轻工业 |产 品 |质 量 |大幅度 |提 升
3. 采用双向最大匹配法的分词结果是 2013|年 轻 |工 业 |产 品 |质 量 |大幅度|提 升 (分词数同但单字少)
3. 统计分词思想:把每个词看做是单字,相连的字在不同文本出现的次数越多,则相连的字可能是一个词。
步骤:(1)建立统计语言模型
①一元模型:各词之间都是相互独立的,这无疑是完全损失了句中的词序信息。
②二元模型:当前词只与前面的一个词有关。
③三元模型:n≥2,保留词序信息丰富,但计算成本成指数增长。
分母出现0的情况,配合相应的平滑算法(如拉普拉斯平滑算法)
隐含马尔可夫模型(HMM):将句子的分词转换为BMES的串。
两个独立性假设:①输出观察值之间严格独立。②状态的转移过程中当前状态只与前一状态有关。
例题假设有 HMM 模型,初始状态概率向量、状态转移概率矩阵、观测概率矩阵分别如下:
求句子的分词标注为 “SBEBESBE”的概率。
答:P(SBEBESBE|他从小学会了解题)=P(他从小学会了解题|SBEBESBE)P(SBEBESBE)/P(他从小学会了解题)
P(他从小学会了解题)为常数,忽略。
针对 P(他从小学会了解题|SBEBESBE)P(SBEBESBE)做马尔科夫假设,则
P(他从小学会了解题|SBEBESBE)= P(他|S)P(从|B)P(小|E)P(学|B)P(会|E)P(了|S)P(解|B)P(题|E)
P(SBEBESBE)= P(B|S)P(E|B)P(B|E)P(E|B)P(S|E)P(B|S)P(E|B)
因此,原式=P(他|S)P(B|S) P(从|B)P(E|B) P(小|E)P(B|E) P(学|B)P(E|B) P(会|E)P(S|E) P(了|S)P(B|S) P(解|B)P(E|B) P(题|E)
=0.2*0.2*0.1*0.6*0.1*0.55*0.1*0.6*0.1*0.45*0.2*0.2*0.05*0.6*0.1=4.2768*e-11
求句子的分词标注为“SSBESBE”的概率。
P(“SSBESSBE”|” 他从小学会了解题”)= P(他从小学会了解题|SSBESSBE)P(SSBESSBE)
=P(他|S)P(从|S)P(小|B)P(学|E)P(会|S)P(了|S)P(解|B)P(题|E)
*P(S|S)P(B|S)P(E|B)P(S|E)P(S|S)P(B|S)P(E|B)
=0.2*0.1*0.1*0.2*0.1*0.2*0.05*0.1*0.8*0.2*0.6*0.45*0.8*0.2*0.6 =1.65888e-10
Veterbi算法:在HMM中,求解maxP(他从小学会了解题|SBEBESBE)P(SBEBESBE)的常用方法,是一种动态规划方法,核心思想:如果最优路径经过oj,那么从节点到oj-1点也是最优路径。
条件随机场(CRF,Conditional Random Field):若干个位置组成的整体,当给某一个位置按照某种分布随机赋予一个值,该整体就被称为随机场。+给定条件
不仅考虑上一个状态,还考虑后面一个状态。
HMM是有向图,而线性链条件随机场(linear-chain conditional random field)是无向图。HMM每个状态依赖上一个状态,而线性链条件随机场依赖于当前状态的周围节点状态。
CRF能够捕捉全局的信息,并能够进行灵活的特征设计,因此比HMM效果好,但复杂度高。
优点:社区活跃、功能丰富、提供多种语言实现、使用简单。
三种分词模式:精确模式、全模式、搜索引擎模式
第四章:词性标注与命名实体识别
第五章:关键词提取算法(Key phrase extraction)
TF-IDF = TF*IDF
关键词提取
一、假设有如下 5 篇文章:
P1:夜来风雨声,花落知多少。
P2:人面不知何处去,桃花依旧笑春风。
P3:春花秋月何时了?往事知多少。
P4:问君能有几多愁?恰似一江春水向东流。
P5:寂寞空庭春欲晚,梨花满地不开门。
(1)计算下列字的 TF-IDF 值。
P1-“春”:TF=0/10 IDF=log(5/5), TF-IDF=0*0=0
P1-“花”:TF=1/10 IDF=log(5/5), TF-IDF=0*0=0
P1-“风”:TF=1/10 IDF=log(5/3), TF-IDF=1/10*log(5/3)
第六章:句法分析
第七章:文本向量化
P1:我爱中国
P2:我爱我的中国 分词库为{我,爱,的,中,国}
P1 的词袋向量为:[1 1 0 1 1]
P2 的词袋向量为:[2 1 1 1 1]
存在问题:维度灾难、无法保留词序信息、存在语义鸿沟的问题。
分布假说(distributional hypothesis)提出解决了上述问题。核心思想:上下文相似的词,其语义也相似。
目标:构建一个语言概率模型
目标:生成词向量
Skip-gram和CBOW实际上是word2vec两种不同思想的实现:CBOW目标是根据上下文来预测当前词语的概率,Skip-gram根据当前词预测上下文概率。
3. doc2vec是word2vec的升级,不仅提取文本的语义信息,而且提取了文本的语序信息。
第八章:情感分析技术
第九章:NLP中用到得机器学习算法
SVM目的:找超平面(二位就是一条线),将两个数据集分开。
核函数解决线性不可分问题。
优点:低泛化,可解释、计算复杂度低
缺点:对参数和核函数选择敏感,原始SVM只能二分类
补充:
自然语言处理(Natural Language Processing,NLP)
自然语言生成(Natural Language Generation,NLG)
知识图谱(Knowledge Graph/Vault)
分词(Segment)
词性标注(part-of-speech tagging)
命名实体识别(Named Entity Recognition,NER)
句法分析(syntax parsing)
互联网电影资料库(Internet Movie Database,IMDB)
逆/正向最大匹配((Reverse)Maximum Match Method)
条件随机场(CRF,Conditional Random Field)
TF-IDF算法(term frequency–inverse document frequency,词频-逆文档频次算法)
PCFG(Probabilistic Context Free Grammar)概率上下文无关文法
神经网络语言模型(Neural Network Language Model)
词袋(Bag Of Word,BOW)
CBOW(Continuous Bag Of-Word)
长短时记忆网络(LSTM, Long Short Term Memory)
循环神经网络recurrent neural network ( RNN)
卷积神网络(Convolutional Neural Network, CNN)
LSA(Latent Semantic Analysis,潜在语义分析)
LSI(Latent Semantic Index,潜在语义索引)
LDA(Latent Dirichlet Allocation,隐含迪利克雷分布)