国科大《自然语言处理》复习(宗成庆老师)

本文介绍了自然语言处理的基础,包括统计学习方法、形式语言与自动机理论,以及N元文法模型在机器翻译、文本分类和信息抽取中的应用。深入探讨了从传统的贝叶斯模型到现代的神经网络模型的发展,并强调了数据表示和模型评估的重要性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、前言

NLP的主要挑战:
1、歧义(词法、词性、结构、语义、语音…)
2、大量未知语言现象(新词、人名、地名、术语、新含义、新用法…)
3、语义表示和计算困难(知识表示复杂性高)
4、始终面临数据不充分…
三大语系:
屈折语:(fusional language)词的形态变化表示语法关系,如英语、法语
黏着语:(agglutinative language)有专门表示语法意义的附加成分,词干与附加成分的结合不紧密,如日韩、土耳其语
孤立语:(isolating language)(分析语)几乎没有形态变化,语法关系靠词序和虚词表示,如汉语、苗语、越南语等
主要技术:
1、理性主义:归纳语言的规律,推断测试样本的预期结果
2、经验主义:借助大规模数据,统计发现语言使用规律及可能性大小,以此计算测试样本的可能结果。
3、连结主义:统计时采用连续的实数空间表示(神经网络方法)

2、统计学习基础

语言是稳态的可遍历性随机过程。(稳态性:是指今天的人民日报和昨天的人民日报语言数学特征是相同的,可遍历:是指一个人在长时间内产生的样本跟大量人在短时间内产生样本的统计特性是相同的,即时间统计特性与空间统计特性的关系)
Zipf’s law: 词频与频率排序序号的关系 f × r = C f\times r=C f×r=C
熵(entropy): H ( X ) = − ∑ x ∈ X p ( x ) l o g 2 p ( x ) H(X)=- \sum_{x\in X}p(x)log_2p(x) H(X)=xXp(x)log2p(x),其单位是二进制位比特。
联合熵(joint entropy): H ( X , Y ) = − ∑ x ∈ X ∑ y ∈ Y p ( x , y ) l o g 2 p ( x , y ) H(X,Y)=- \sum_{x\in X}\sum_{y\in Y}p(x,y)log_2p(x,y) H(X,Y)=xXyYp(x,y)log2p(x,y)
条件熵(conditional entropy):
H ( Y ∣ X ) = − ∑ x ∈ X p ( x ) H ( Y ∣ X = x ) = H ( X , Y ) = − ∑ x ∈ X ∑ y ∈ Y p ( x , y ) l o g 2 p ( y ∣ x ) H(Y|X)=- \sum_{x\in X}p(x)H(Y|X=x)=H(X,Y)=- \sum_{x\in X}\sum_{y\in Y}p(x,y)log_2p(y|x) H(YX)=xXp(x)H(YX=x)=H(X,Y)=xXyYp(x,y)log2p(yx) 连锁规则: H ( X , Y ) = H ( X ) + H ( Y ∣ X ) H(X,Y)=H(X)+H(Y|X) H(X,Y)=H(X)+H(YX)
相对熵(relative entropy): D ( p ∣ ∣ q ) = ∑ x ∈ X p ( x ) l o g p ( x ) q ( x ) D(p||q)=\sum_{x\in X}p(x)log\frac{p(x)}{q(x)} D(p∣∣q)=xXp(x)logq(x)p(x),衡量两个分布的差距。
交叉熵(cross entropy): q为理论模型,p为近似分布。
H ( X , q ) = H ( X ) + D ( p ∣ ∣ q ) = − ∑ x ∈ X p ( x ) l o g q ( x ) H(X,q)=H(X)+D(p||q)=-\sum_{x\in X}p(x)logq(x) H(X,q)=H(X)+D(p∣∣q)=xXp(x)logq(x) 困惑度(perplexity): P P q = 2 H ( L , q ) ≈ [ q ( x 1 n ) ] − 1 n PP_q=2^{H(L,q)}\approx[q(x_1^n)]^{-\frac{1}{n}} PPq=2H(L,q)[q(x1n)]n1,其中 x 1 n = x 1 . . . x n x_1^n=x_1...x_n x1n=x1...xn
互信息(mutual information): 其含义是当知道Y后原来的信息量减少了多少,即Y透露了多少关于X的信息。
I ( X ; Y ) = H ( X ) − H ( X ∣ Y ) = ∑ x ∈ X ∑ y ∈ Y p ( x , y ) l o g 2 p ( x , y ) p ( x ) p ( y ) I(X;Y)=H(X)-H(X|Y)=\sum_{x\in X}\sum_{y\in Y}p(x,y)log_2\frac{p(x,y)}{p(x)p(y)} I(X;Y)=H(X)H(XY)=xXyYp(x,y)log2p(x)p(y)p(x,y)根据公式推导可以得出: H ( X ) = H ( X ) − H ( X ∣ X ) = I ( X ; X ) H(X)=H(X)-H(X|X)=I(X;X) H(X)=H(X)H(XX)=I(X;X),故熵又称为自信息。两个单个离散事件之间的互信息称为点式互信息,两个随机变量之间的互信息成为平均互信息,平均互信息不可能为负值。
噪声信道模型: 优化噪声信道中信号传输的吞吐量和准确率,其基本假设是一个信道的输出以一定概率依赖于输入。
词义消歧(WSD)实例:
1、朴素贝叶斯:
p ( s i ∣ C ) = p ( s i ) p ( C ∣ s i ) p ( C ) p ( C ∣ s i ) = ∏ v k ∈ C p ( v k ∣ s i ) s ^ i = a r g m a x s i [ p ( s i ) ∏ v k ∈ C p ( v k ∣ s i ) ] p(s_i|C)=\frac{p(s_i)p(C|s_i)}{p(C)}\\ p(C|s_i)=\prod_{v_k\in C}p(v_k|s_i)\\ \hat s_i=\underset{s_i}{argmax}\left [p(s_i)\prod_{v_k\in C}p(v_k|s_i)\right ] p(siC)=p(C)p(si)p(Csi)p(Csi)=vkCp(vksi)s^i=siargmax[p(si)vkCp(vksi)],其中条件概率和先验概率可以由最大似然估计求得:
p ( v k ∣ s i ) = N ( v k , s i ) N ( s i ) p ( s i ) = N ( s i ) N ( w ) p(v_k|s_i)=\frac{N(v_k,s_i)}{N(s_i)} \qquad p(s_i)=\frac{N(s_i)}{N(w)} p(vksi)=N(si)N(vk,si)p(si)=N(w)N(si)式中 C C C表示语境, v k v_k vk表示上下文词语, s i s_i si表示该词的第 i i i种含义, N N N表示频率。
2、最大熵模型:

3、形式语言与自动机

3.1形式语言

形式语言: 用来精确描述语言及其结构的手段,形式语言学也称代数语言学。
定义: G = ( N , Σ , P , S ) G=(N,\Sigma,P,S) G=(N,Σ,P,S),其中四个参数分别为非终结符集合、终结符集合、重写规则、初始符。

最左推导:每步推导只改写最左边的非终结符。
最右推导(规范推到):只改写最右边的非终结符。

句子形式(句型):文法G任何一步合法推导的结果。
句子:不含非终结符的句子形式。

乔姆斯基四类文法:
对于形式语言: G = ( N , Σ , P , S ) G=(N,\Sigma,P,S) G=(N,Σ,P,S)
1、正则文法(RG):3型文法
右线性正则文法:P中推导规则满足 A → B x A\to Bx ABx A → x A\to x Ax,大写字母为非终结符,小写字母为终结符。
2、上下文无关文法(CFG):2型文法
P为 A → α A\to \alpha Aα,其中 α \alpha α为任意的串。要求左边为单个非终结符。
如果存在某个句子不只有一颗分析树与之对应,那么称为歧义文法
3、上下文有关文法(CSG):1型文法
P中规则满足 α A β → α γ β \alpha A \beta \to \alpha \gamma \beta αAβαγβ,且 γ \gamma γ至少包含一个字符。
4、无约束文法:0型文法
P中规则满足 α → β \alpha\to\beta αβ,没有任何约束。

每一个3型文法都是2型文法,所有2型文法都是1型文法(上下文无关文法是没有上下文的上下文有关文法),所有1型文法都是0型文法。

3.2自动机

1、有限状态自动机(FA)-----3型
2、下推自动机(PDA)---------2型
3、线性带限自动机-----------1型
4、图灵机-----------------------0型

(1)确定性有限状态自动机(DFA):
M是一个五元组, M = ( Σ , Q , δ , q 0 , F ) M=(\Sigma,Q,\delta,q_0,F) M=(Σ,Q,δ,q0,F),各符号分别表示:输入符号集合、状态集合、状态转移函数( Q × Σ → Q Q\times \Sigma \to Q Q×ΣQ的映射)、初始状态、终止状态集合。
在这里插入图片描述
双圈表示终止状态,最上面那条线表示输入1则从 q 1 q_1 q1状态转移至 q 0 q_0 q0状态。
(2)非确定性有限状态自动机(NFA)
M是一个五元组, M = ( Σ , Q , δ , q 0 , F ) M=(\Sigma,Q,\delta,q_0,F) M=(Σ,Q,δ,q0,F),其中 δ \delta δ Q Q Q Σ \Sigma Σ的直积 Q × Σ Q\times\Sigma Q×Σ Q Q Q的幂集 2 Q 2^Q 2Q的映射。即同一个输入可能达到多个状态。
在这里插入图片描述
如果有L是一个可以被NFA接受的句子集合,则一定存在一个DFA能够接受L。
若G是一个正则文法,则存在一个有限状态自动机M,使得 T ( M ) = L ( G ) T(M)=L(G) T(M)=L(G)

由正则文法构造有限状态自动机:

自动机在NLP中的应用:
应用1:英文单词拼写检查:
编辑距离:从字符串X转换到字符串Y需要的插入、删除、替换、交换相邻两个单位的的最小个数。如 e d ( s a i l n , f a i l i n g ) = 3 ed(sailn,failing)=3 ed(sailn,failing)=3
字母所构成的所有合法单词都是有限自动机中的一条路径,给定一个待检查的输入串,对其检查的过程就是在给定阈值t的情况下,寻找与输入串编辑距离小于t的路径(即正确单词)
c u t e d ( X [ m ] , Y [ n ] ) = m i n l ≤ i ≤ u { e d ( X [ i ] , Y [ n ] ) } l = m a x ( 1 , n − t ) ,    u = m i n ( m , n + t ) cuted(X[m],Y[n])=\underset{l\le i\le u}{min} \{ ed(X[i],Y[n]) \}\\ l=max(1,n-t),\;u=min(m,n+t) cuted(X[m],Y[n])=liumin{ed(X[i],Y[n])}l=max(1,nt),u=min(m,n+t)阈值t有两个作用:1)确定截取X的范围;2)限定编辑距离。

4、N元文法模型

语言模型: 计算语言(通常为句子)概率的模型。
n元文法模型: 只考虑历史基元与当前词构成的n元词序列(即n-1个历史词),计算 p ( w i ∣ w i − n + 1 i − 1 ) p(w_i|w_{i-n+1}^{i-1}) p(wiwin+1i1),其中 w i − n + 1 i − 1 w_{i-n+1}^{i-1} win+1i1表示当前词的前 i − 1 i-1 i1个历史串。
计算方法:参数估计:
p ( w i ∣ w i − n + 1 i − 1 ) = f ( w i ∣ w i − n + 1 i − 1 ) = c ( w i − n + 1 i ) ∑ w i c ( w i − n + 1 i ) p(w_i|w_{i-n+1}^{i-1})=f(w_i|w_{i-n+1}^{i-1})=\frac{c(w_{i-n+1}^i)}{\sum_{w_i}c(w_{i-n+1}^i)} p(wiwin+1i1)=f(wiwin+1i1)=wic(win+1i)c(win+1i)
即文本中的频率看作概率的近似。

但当部分序列概率为零时,即数据稀疏时,需要进行数据平滑:
总体的思想为劫富济贫,即调整最大似然的概率值,使零概率值增加,使非零概率值下调。目标是使得语言模型的困惑度最小。
①加一法:
对于2-gram:
p ( w i ∣ w i − 1 ) = 1 + c ( w i − 1 w i ) ∑ w i [ 1 + c ( w i − 1 w i ) ] p(w_i|w_{i-1})=\frac{1+c(w_{i-1}w_i)}{\sum_{w_i}[1+c(w_{i-1}w_i)]} p(wiwi1)=wi[1+c(wi1wi)]1+c(wi1wi)
②减值法/折扣法:

③删除插值法

5、隐马尔可夫模型与条件随机场

6、神经网络与语言模型

7、文本表示

向量空间模型(VSM): 将文本视为特征项的集合。向量空间 可以被成为词袋模型。
特征项:VSM中最小的语言单元
特征项权重:表示每个特征项在文本中重要度不同的指标。计算方式有以下几种:
1、布尔变量:如果在文本中出现则权重为1,否则为0。
2、词频(TF): w i = l o g ( t f i + 1 ) w_i=log(tf_i+1) wi=log(tfi+1)
3、逆文档频率(IDF):
w i = i d f i = l o g N d f i w_i=idf_i=log\frac{N}{df_i} wi=idfi=logdfiN即总文档数除以包含i的文档数取对数,表示i在其他文档中出现次数越少则在该文档中越重要。
4、TF-IDF: t f _ i d f i = t f i ⋅ i d f i tf\_idf_i=tf_i\cdot idf_i tf_idfi=tfiidfi
计算出来之后需要用向量的范数(1范数、2范数、无穷范数)进行规范化。

两种表示:
1、离散符号表示:one-hot无法体现语义相关性
2、分布式表示:含义相近单词相似度大

表示学习: 两种方法:
1、文本概念表示模型:以潜在语义分析和潜在狄利克雷分布为代表的主题模型。
2、深度学习表示模型:通过深度学习模型优化特定目标函数获得词向量表示。

词语表示学习:
标目是学习到一个look-up table,每一列表示一个词语的向量表示,大小为 D × V D\times V D×V,V表示词的数量,D表示每个词的表示向量维度。
其中V的选择标准为:1、训练数据所有词;2、频率高于某个阈值的所有词;3、前V个频率最高的词。
D的选择:D是一个超参数,需要自己设定。

学习方法:
1、C&W模型
2、CBOW and Skip-gram 模型
3、Glo Ve
4、负采样与噪声对比估计
5、字-词混合表示学习

8、词语切分与词性标注

9、句法分析

10、篇章分析

11、语义分析

12、预训练语言模型

13、机器翻译

机器翻译的困难:
1、自然语言现象中广泛存在的歧义和未知现象
2、不同语言间的文化差异大
3、翻译结果不唯一

翻译方法:
1、直接转换法
2、基于规则的翻译方法
3、基于中间语言的翻译方法
4、基于语料库的翻译方法(基于事例、统计翻译、神经网络翻译)

(1)直接转换法: 对应词进行翻译,必要时进行调整顺序。
(2)基于规则的翻译方法: 原句词法分析、原句句法分析、原句到译文结构转化、译文结构生成、原句到译文词汇转化、译文生成。
(3)基于中间语言的翻译方法: 输入语句—>中间语言—>翻译结果
(4)基于事例的翻译方法: 从旧的记忆库中找与需要翻译的句子相似度高的句子,然后再进行简单的修正。

13.1 统计机器翻译

设源语言句子为S,目标语言句子为T,根据贝叶斯公式
P ( T ∣ S ) = P ( T ) × P ( S ∣ T ) P ( S ) \rm P(T|S)=\frac{P(T)\times P(S|T)}{P(S)} P(T∣S)=P(S)P(T)×P(S∣T)则目标是
T ′ = a r g m a x T    P ( T ) × P ( S ∣ T ) T'=\underset{T}{argmax}\;P(T)\times P(S|T) T=TargmaxP(T)×P(ST)其中 P ( T ) P(T) P(T)即为语言模型,根据n-gram即可计算,那么关键问题是计算翻译模型 P ( S ∣ T ) P(S|T) P(ST)的概率,这里我们用词的互译概率的乘积表示句子互译的概率。在此引入因变量 A A A,表示对位模型, A A A表示源语言句子 m m m个单词和目标语言句子 l l l个单词的对应关系,即对应与不对应。
则有: P ( S ∣ T ) = ∑ A P ( S , A ∣ T ) P(S|T)=\sum_{A}P(S,A|T) P(ST)=AP(S,AT),同时 A = a 1 a 2 . . . a m A=a_1a_2...a_m A=a1a2...am a j ∈ [ 0 , 1 , . . . , l ] a_j\in [0,1,...,l] aj[0,1,...,l],表示源语言句子中第 j j j个词对应于目标语言句子第 0 ∼ j 0\sim j 0j中的一个。此时可以改写为:
P ( S , A ∣ T ) = p ( m ∣ T ) × P ( A ∣ T , m ) × P ( S ∣ T , A , m ) P(S,A|T)=p(m|T)\times P(A|T,m)\times P(S|T,A,m) P(S,AT)=p(mT)×P(AT,m)×P(ST,A,m)第一个 概率表示生成源语言句子 S S S的多少个单词,第二个概率表示对位模型,即源语言句子单词和目标语言句子单词的对位关系,第三个概率表示词汇翻译模型。
P ( S , A ∣ T ) + p ( m ∣ T ) ∏ j = 1 m p ( a j ∣ a 1 j − 1 , s 1 j − 1 , m , T ) × p ( s j ∣ a 1 j − 1 , s 1 j − 1 , m , T ) P(S,A|T)+p(m|T)\prod_{j=1}^mp(a_j|a_1^{j-1},s_1^{j-1},m,T)\times p(s_j|a_1^{j-1},s_1^{j-1},m,T) P(S,AT)+p(mT)j=1mp(aja1j1,s1j1,m,T)×p(sja1j1,s1j1,m,T)

①IBM翻译模型1

三个假设:
(1) ε ≡ p ( m ∣ T ) \varepsilon \equiv p(m|T) εp(mT),是一个很小的量。
(2) a j ∼ u n i f o r m ( 0 , 1 , 2 , . . . , l ) a_j\sim uniform(0,1,2,...,l) ajuniform(0,1,2,...,l)服从均匀分布,即 p ( a j ∣ a 1 j − 1 , s 1 j − 1 , m , T ) = 1 l + 1 p(a_j|a_1^{j-1},s_1^{j-1},m,T)=\frac{1}{l+1} p(aja1j1,s1j1,m,T)=l+11
(3) s j ∼ C a t e g o r i c a l ( θ t a j ) s_j\sim Categorical(\theta_{t_{aj}}) sjCategorical(θtaj),即 p ( s j ∣ a 1 j − 1 , s 1 j − 1 , m , T ) = p ( s j ∣ t a j ) p(s_j|a_1^{j-1},s_1^{j-1},m,T)=p(s_j|t_{aj}) p(sja1j1,s1j1,m,T)=p(sjtaj)表示只考虑当前翻译的词,不考虑其他词汇。

依据以上假设,概率模型可以化简为:
P ( S , A ∣ T ) = ε ( l + 1 ) m ∏ j = 1 m p ( s j ∣ t a j ) P(S,A|T)=\frac{\varepsilon }{(l+1)^m}\prod_{j=1}^mp(s_j|t_{aj}) P(S,AT)=(l+1)mεj=1mp(sjtaj)
P ( S ∣ T ) = ∑ A P ( S , A ∣ T ) = ε ( l + 1 ) m ∑ a 1 = 0 l ⋯ ∑ a m = 0 l ∏ j = 1 m p ( s j ∣ t a j ) P(S|T)=\sum_AP(S,A|T)=\frac{\varepsilon }{(l+1)^m}\sum_{a_1=0}^l\cdots \sum_{a_m=0}^l\prod_{j=1}^mp(s_j|t_{aj}) P(ST)=AP(S,AT)=(l+1)mεa1=0lam=0lj=1mp(sjtaj)要求 ∑ s p ( s ∣ t ) = 1 \sum_sp(s|t)=1 sp(st)=1,根据拉格朗日乘子法,有优化函数:
h ( p , λ ) = P ( S ∣ T ) − ∑ t λ t ( ∑ s p ( s ∣ t ) − 1 ) h(p,\lambda)=P(S|T)-\sum_t\lambda_t\left(\sum_sp(s|t)-1\right) h(p,λ)=P(ST)tλt(sp(st)1) p ( s ∣ t ) p(s|t) p(st)求梯度并令梯度为零,可以解得:
p ( s ∣ t ) = 1 λ t × ε ( l + 1 ) m ∑ a 1 = 0 l ⋯ ∑ a m = 0 l ∑ j = 1 m δ ( s = s j ) δ ( t = t a j ) ∏ k = 1 m p ( s k ∣ t a k ) p(s|t)=\frac{1}{\lambda_t}\times \frac{\varepsilon}{(l+1)^m}\sum_{a_1=0}^l\cdots \sum_{a_m=0}^l\sum_{j=1}^m\delta (s=s_j)\delta (t=t_{aj})\prod_{k=1}^mp(s_k|t_{ak}) p(st)=λt1×(l+1)mεa1=0lam=0lj=1mδ(s=sj)δ(t=taj)k=1mp(sktak)然后可以利用EM算法进行迭代更新求解。

②IBM模型2

其中对位模型概率不再采用简单的均匀分布模型,而是加入参数,使对位模型概率与句子长度和单词位置相关,即 p ( a j ∣ j , m , l ) p(a_j|j,m,l) p(ajj,m,l)

③IBM模型3

引入繁衍率模型,防止对位模型中一个单词对应过多的单词。

13.2 基于短语的翻译模型

基于短语的翻译模型相比于基于字的翻译模型提取的信息范围更广泛,因此能较少歧义。

同理,根据贝叶斯公式,有
T ′ = a r g m a x T P ( T ∣ S ) = a r g m a x T , S 1 K P ( T , S 1 K ∣ S ) = a r g m a x T , S 1 K , T 1 K , T 1 K ′ P ( S 1 K ∣ S ) P ( T 1 K ∣ S 1 K , S ) P ( T 1 K ∣ T 1 K , S 1 K , S ) P ( T ∣ T 1 K , T 1 K , S 1 K , S ) \begin{aligned} T'&=\underset{T}{argmax}\textbf{P}(\textbf{T}|\textbf{S})\\ &=\underset{T,S_1^K}{argmax}\textbf{P}(\textbf{T},S_1^K|\textbf{S})\\ &=\underset{T,S_1^K,T_1^K,T_1^{K'}}{argmax}\textbf{P}(S_1^K|\textbf{S})\textbf{P}(T_1^K|S_1^K,\textbf{S})\textbf{P}(T_1^K|T_1^K,S_1^K,\textbf{S})\textbf{P}(T|T_1^K,T_1^K,S_1^K,\textbf{S}) \end{aligned}\\ T=TargmaxP(TS)=T,S1KargmaxP(T,S1KS)=T,S1K,T1K,T1KargmaxP(S1KS)P(T1KS1K,S)P(T1KT1K,S1K,S)P(TT1K,T1K,S1K,S)其中第一个概率表示短语划分模型、第二个概率表示短语翻译模型、第三个概率表示短语调序模型、第四个概率表示目标语言模型。

1、短语划分模型:一般假设每一种短语划分都是等概率的。
2、短语翻译模型:
\qquad 2.1学习短语翻译规则:根据双语对齐词汇进行短语匹配。
\qquad 2.2计算短语翻译概率:最大化正向、逆向短语和词汇翻译四个概率。
3、短语调序模型:
\qquad 3.1距离跳转模型
\qquad 3.2分类模型
4、目标语言模型

基于短语的判别式翻译模型。将后验概率 P ( S ∣ T ) P(S|T) P(ST)表示为一系列特征的加权和,即 P ( S ∣ T ) = ∑ 1 M λ m h m ( T , S ) P(S|T)=\sum_1^M\lambda_mh_m(T,S) P(ST)=1Mλmhm(T,S)

13.3 神经机器翻译

统计机器翻译的优点:可解释性高、模块随便加、错误易追踪。
缺点:数据稀疏(语义相近的词无法共享翻译规则)、复杂结构无能为力、强烈依赖于先验知识。

神经机器翻译的基本途径:向量映射—>双向编码(LSTM)—>注意机制—>解码网络—>得到词汇概率。

13.4 译文评估

主要考察因素:1、流畅度;2、充分性;3、语义保持性
主观评测方法:忠实度、流利度;(依赖于人工打分)
客观评测方法:
①句子错误率;
②单词错误率;
③与位置无关单词错误率;
④METEOR评测;
⑤BLEU评测方法
⑥基于深度学习的客观评测:防止因为词不相同而导致错误率下降。(参考译文与计算译文每个词之间计算相似度,分别取相似度最大的词,然后计算准确率和召回率)

13.5 语音翻译

重点问题:噪声与冗余词的识别与过滤;实体名词识别和翻译;语序调整。
系统实现方法:
1、级联方法:语音识别—>机器翻译---->语音合成
2、端到端的方法

14、文本分类与聚类

应用:如新闻分类、垃圾邮件分类等

14.1 传统机器学习方法

主要步骤:模式—>特征表示—>特征选择—>分类器—>类别标签
①文本表示:
1、机器学习:向量空间模型(词袋模型):列一个出现在文本中所有词的词表,每个词拥有一个权重值,权重值的计算方法为:词频、布尔变量、逆文档频率、词频-逆文档频率
2、深度学习:文本表示采用词向量,即连续空间下的文本表示

②特征选择: 有三种指标:互信息、信息增益、Chi-Square统计

③分类算法: 生成式模型(朴素贝叶斯)、判别式模型(支持向量机)、最大熵模型。

14.2 深度学习方法

①基于卷积神经网络的方法:提取特征,做分类。

②基于循环神经网络的方法:

③预训练模型
预训练+微调方法:在全局信息表示上加一个多层感知机进行分类。
预训练+提示学习的方法:将文本分类转换成掩码语言模型中预测mask的问题。

14.3 分类性能评估

根据真实类别将分类结构分为四类:真正类(TP)、真负类(TN)、假正类(FP)、假负类(FN)。
(1)计算召回率、精确率和 F 1 F_1 F1值。
R i = T P i T P i + F N i P i = T P i T P i + F P i F 1 = 2 P R P + R R_i=\frac{TP_i}{TP_i+FN_i}\\ P_i=\frac{TP_i}{TP_i+FP_i}\\ F_1=\frac{2PR}{P+R} Ri=TPi+FNiTPiPi=TPi+FPiTPiF1=P+R2PR(2)计算正确率、宏平均、微平均。
宏平均:先计算召回率、精确率,再平均。
微平均:先统计四类结构再计算召回率与精确率。

P-R曲线、ROC曲线:
P-R曲线:通过调整正负分类的阈值,绘制召回率-精确率的曲线。
ROC曲线:以假正率为横坐标,真正率(召回率)为纵坐标绘制。

14.4 文本聚类

1、相似性度量:两个文本对象之间的相似度、两个文本类之间的相似度、文本对象与文本集合之间的相似性。
文本对象相似度:距离度量、余弦相似度、杰卡德相似系数、KL散度
文本类相似度:最短距离、最长距离、簇平均法(两类样本距离和求均值)、重心法(两类均值的距离)、离差平方和法(各样本到合并之后的中心距离平方和减去各样本到各自类中心距离平方和)

2、聚类算法:k-means聚类、单遍聚类、层次聚类、密度聚类。

3、聚类性能评估:
两种方法:外部标准(有参考答案)、内部标准(无参考答案)
(1)外部标准:由专家和人工标注获得参考答案,根据两个样本分类和标准是否在同一类,有四类分类结果,SS、SD、DS、DD,然后计算宏观指标:
Rand统计量: R S = a + d a + b + c + d RS=\frac{a+d}{a+b+c+d} RS=a+b+c+da+d
Jaccard系数: I C = a a + b + c IC=\frac{a}{a+b+c} IC=a+b+ca
FM指数: F M I = a a + b ⋅ a a + c FMI=\sqrt{\frac{a}{a+b}\cdot \frac{a}{a+c}} FMI=a+baa+ca
微观指标:精确率、召回率、 F 1 F_1 F1
(2)内部标准:主要思想。簇间相似度越低越好,簇内相似度越高越好。如轮廓系数。

15、信息抽取

15.1 命名实体识别

共有7大类命名实体:人名、地名、机构名、时间、日期、货币、百分比
两个任务:实体检测、实体分类
方法:
①基于规则的命名实体识别(难以处理一词多义、缩写、新命名实体)
②基于有监督的机器学习方法:隐马尔可夫、条件随机场、深度神经网络。
评价方法:与规范标注对比,计算召回率、精确率、F。

15.2 实体消歧

两个内容:共指消解(一篇文档中不同实体表示同一含义)、实体链接(不同文档中相同实体表示不同含义)
共指消解:对实体进行聚类
实体链接:确定实体指称对应真实世界实体的过程。将实体通过背景知识映射到实体概念。

典型方法:局部法、全局法

15.3 关系抽取

15.4 事件抽取

16、人机对话

### 关于宗成庆教授在中科学院大学自然语言处理课程及相关资源 中科学院大学(简称科大)的宗成庆教授在自然语言处理领域有着丰富的教学经验和研究成果。其讲授的内容涵盖了广泛的理论和技术应用,包括但不限于噪声与冗余词的识别与过滤、实体名词识别和翻译以及语序调整等问题[^2]。 #### 主要研究方向 - **噪声与冗余词处理**:探讨如何有效去除文本中的干扰因素,提高模型训练效率。 - **实体名词识别**:专注于自动提取文档内的专有名词和其他重要概念。 - **跨语言信息检索**:涉及不同语言之间的转换机制及其优化策略。 #### 推荐教材 对于希望深入了解该学科的学生来说,《统计自然语言处理》是一本非常有价值的参考资料。此书由宗成庆编著,全面介绍了现代NLP技术背后的概率论基础,并通过具体实例帮助读者理解抽象的概念。 #### 在线学习平台 除了官方出版物外,在网络上也可以找到许多基于这门课件制作的教学视频和笔记分享。例如,“学堂在线”网站提供了完整的《自然语言处理导论》系列讲座链接,适合自学爱好者随时观看学习。 ```python import requests from bs4 import BeautifulSoup def search_resources(keyword): url = f"https://www.xuetangx.com/search?query={keyword}" response = requests.get(url) soup = BeautifulSoup(response.text, 'html.parser') results = [] for item in soup.select('.course-item'): title = item.find('h3').get_text(strip=True) link = "https:" + item['href'] description = item.p.get_text(strip=True)[:100]+"..." result = { "title": title, "link": link, "description": description } results.append(result) return results[:5] search_results = search_resources("宗成庆 自然语言处理") for i, res in enumerate(search_results, start=1): print(f"{i}. [{res['title']}]({res['link']}): {res['description']}") ```
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值