统计自然语言处理(第二版)学习笔记:第三章 形式语言与自动机

1.形式语言

语言描述的三种途径:

穷举法——只适合句子数目有限的语言;
语法描述——生成语言中合格的句子;
自动机——对输入的句子进行检验,区别哪些是语言中的句子,哪些不是语言中的句子。

直观意义:

用来精确地描述语言(包括人工语言和自然语言)及其结构的手段。

以重写规则α—>β的形式表示,α、β均为字符串。(即字符串α可以被改写为β)

通过选择不同的规则并以不同的顺序来运用这些规则,就可以得到不同的新字符串。

形式语法的定义:

形式语法是一个4元组 G=(N,∑,P,S),
N 是非终结符的有限集合(有时也叫变量集或句法种类集);
∑是终结符的有限集合, N∩∑=φ;V=N∪∑称总词汇表;
P是一组重写规则的有限集合: P={α->β},其中,α,β是V中元素构成的串,但V中至少应含有一个非终结符号;
S∈N,称为句子符或初始符。

推导的定义

设 G=(N, ∑, P, S) 是一个文法, 在 (N∪∑)上定义关系 (直接派生或推导)如下:
如果αβγ是 (N∪∑)
中的符号串,且β->δ是P
的产生式,那么在这里插入图片描述
在这里插入图片描述(按非平凡方式派生)表示在这里插入图片描述的传递闭包,也就是 (N∪∑)*上的符号串在这里插入图片描述的 n ( n>=1) 步推导或派生。

在这里插入图片描述 (派生)表示在这里插入图片描述 的自反和传递闭包,即由(N∪∑)*上的符号串 在这里插入图片描述经过n(n>=0)步的推导或派生。

最左推导、最右推导和规范推导

约定每步推导中只改写最左边的那个非终结符,这种推导称为“最左推导” 。
约定每步推导中只改写最右边的那个非终结符,这种推导称为“最右推导”(规范推导)。

句型与句子

一些特殊类型的符号串为文法 G=(N, ∑, P, S) 的句子形式(句型):
(1) S 是一个句子形式;
(2) 如果αβγ是一个句子形式,且β->δ是 P 的产生式,则αδγ也是一个句子形式;

文法 G 的不含非终结符的句子形式称为 G 生成的句子。由文法 G 生成的语言,记作L(G),指 G 生成的所有句子的集合。即:
在这里插入图片描述

正则文法

如果文法 G=(N, ∑, P, S) 的 P 中的规则满足如下形式: A -> B x, 或 A -> x, 其中 A, B ∈ N, x∈∑, 则称该文法为正则文法 或称 3型文法。 (左线性正则文法)
如果 A -> x B, 则该文法称为右线性正则文法。

上下文无关文法(CFG)

如果 P 中的规则满足如下形式: A->α, 其中A∈N,α∈ (N∪∑)*,则称该文法为上下文无关文法(CFG) 或称 2 型文法。

上下文有关文法(CSG)

如果 P 中的规则满足如下形式: αAβ->αγβ, 其中 A∈N,α,β,γ(N∪∑), 且γ至少包含一个字符,则称该文法为上下文有关文法(CSG) 或称 1 型文法。
另一种定义: if x->y, x∈(N∪∑)+,y∈(N∪∑)
,并且 |y|>=|x|。

无约束文法(无限制重写系统)

如果 P 中的规则满足如下形式:α->β,α,β是字符串, 则称 G 为无约束文法,或称 0 型文法。

显然,每一个正则文法都是上下文无关文
法,每一个上下无关文法都是上下文有关文法,而每一个上下文有关文法都是0型文法,即:
在这里插入图片描述

语言与文法类型的约定

如果一种语言能由几种文法所产生,则把这种语言称为在这几种文法中受限制最多的那种文法所产生的语言。

CFG产生的语言句子的派生树表示

CFG G=(N, ∑, P, S) 产生一个句子的派生树由如下步骤构成:
(1) 对于在这里插入图片描述 给一个标记作为节点, S 作为树的根节点。
(2) 如果一个节点的标记为 A,并且它至少有一个除它自身以外的后裔,则 A ∈ N。
(3) 如果一个节点的标记为 A,它的 k ( k > 0) 个直接后裔节点按从左到右的次序依次标记为 A1, A2, …, Ak,则 A->A1A2…Ak 一定是 P 中的一个产生式。

上下文无关文法的二义性

一个文法 G, 如果存在某个句子有不只一棵分析树与之对应,那么称这个文法是二义的

2.有限自动机与正则文法

2.1 确定的有限自动机(DFA)

DFA是一个五元组:M=(∑,Q,δ,q0,F)

∑是输入符号的有穷集合;
Q是状态的有限集合;
q0∈Q是初始状态;
F是终止状态集合,Q包含于F;
δ是Q与∑的直积 Q×∑到Q (下一个状态) 的映射。它支配着有限状态控制的行为,有时也称为状态转移函数。

DFA示意图

在这里插入图片描述

状态变换图

映射δ(q,a)=q’可以由状态变换图描述。
在这里插入图片描述为了明确起见,终止状态用双圈表示,起始
状态用有“开始”标记的箭头表示。如:
在这里插入图片描述

DFA定义的语言

如果一个句子x使得有限自动机M有δ(q0,x)=p,p∈F,那么称句子x被M接收。
由 M 定义的语言 T(M) 就是被 M 接受的句子的全集。即:
在这里插入图片描述

不确定的有限自动机(NFA)

NFA是一个五元组M=(∑,Q,δ,q0,F)
∑是输入符号的有穷集合;
Q 是状态的有限集合;
q0∈Q 是初始状态;
F 是终止状态集合,Q包含F;
δ是Q与∑的直积 Q×∑到Q的幂集2^Q的映射。

NFA与DFA的区别

区别:在NFA中δ(q,a)是一个状态的集合,而在DFA中δ(q,a)是一个状态。

NFA与DFA的关系

设 L 是一个被 NFA 所接受的句子的集合,则存在一个 DFA, 它能够接受 L 。

正则文法与有限自动机的关系

若 G = (VN,VT, P, S )是一个正则文法,则存在一个有限自动机 M=(∑, Q, δ, q0, F),使得:T(M) = L(G)。

由G构造M的一般步骤:
(1) 令∑=VT, Q=VN∪{T},q0=S,其中,T 是一个新增加的非终结符。
(2) 如果在 P 中有产生式 S->ε,则F={S, T}, 否则 F={T}。
(3) 如果在 P 中有产生式 B->a, B∈VN , a∈VT,则 T∈(B, a)。
(4) 如果在 P 中有产生式 B->aC, B, C∈VN,a∈VT, 则 C∈δ(B, a)。
(5) 对于每一个 a∈VT, 有δ(T, a) =φ。

等价的NFA的状态变换图为:

在这里插入图片描述若 M= (∑, Q, δ, q0, F) 是一有限自动机,则
存在正则文法 G=(VN, VT, P, S)L(G)=T(M)。

由 M 构造 G 的一般步骤:
(1) 令 VN = Q, VT = , S =q0;
(2) 如果 C ∈(B, a), B, C∈ Q, a∈∑, 则在P 中有产生式 B ->aC;
(3) 如果 C∈(B, a), C∈F, 则在P 中有产生式B -> a。

3.下推自动机与CFG

下推自动机(PDA)

PDA可以看成是一个带有附加的下推存储器的有限自动机,下推存储器是一个栈。
在这里插入图片描述

PDA的定义

一个不确定的PDA可以表达成一个7元组:
M = (∑, Q,γ ,δ, q0, Z0, F)
∑是输入符号的有穷集合;
Q 是状态的有限集合;
q0∈Q 是初始状态;
γ为下推存储器符号的有穷集合;
Z0∈γ为最初出现在下推存储器顶端的符号;
F 是终止状态集合,Q包含F;
δ是从 Q×(∑∪{ε})×γ 到 Q×γ*子集的映射。

4.另外两种自动机

图灵机

图灵机与0型文法等价;
图灵机与有限自动机(FA)的区别: 图灵机可以通过其读/写头改变输入带的字符。

线性带限自动机

线性带限自动机与1型文法等价;
线性带限自动机是一个确定的单带图灵机,其读写头不能超越原输入带上字符串的初始和终止位置,即线性带限自动机的存储空间被输入符号串的长度所限制。

5.各类自动机的区别

各类自动机的主要区别是它们能够使用的
信息存储空间的差异:
有限状态自动机只能用状态来存储信息;
下推自动机除了可以用状态以外,还可以用下推存储器(栈);
线性带限自动机可以利用状态和输入/输出带本身。因为输入/输出带没有“先进后出” 的限制,因此,其功能大于栈;
而图灵机的存储空间没有任何限制。

语言与识别器的对应关系

识别器是有穷地表示无穷语言的另一种方
法。
在这里插入图片描述

4.有限自动机在NLP中的应用

4.1英语单词拼写检查
4.2有限自动机用于英语单词形态分析

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值