形式语言与状态机

    学习《统计自然语言处理-宗成庆》这本书时,对理论部分第三章-形式语言与自动机存在许多困惑,因为抽象的概念比较多,而且例子比较少,理解起来比较晦涩,故自己整理下这方面知识,以期巩固知识,加深理解。

一.概念梳理
    1.正则文法:
    正规文法是产生式规则取下述形式的一种形式文法(N, Σ, P, S),又称3型文法:
1.A -> a ,此处的A是N中的非终结符号,a是Σ中的终结符号;
2.A -> aB,此处的A和B是N中的非终结符号,a是Σ中的终结符号;
3.C -> ε,此处的C是N中的非终结符号。(viki百科)
    2.上下文无关文法:

    上下文无关文法(英语:context-free grammar,缩写为CFG)又称2型文法,在计算机科学中,若一个形式文法 G = (N, Σ, P, S) 的产生式规则都取如下的形式:V -> w,则谓之。其中 V∈N ,w∈(N∪Σ)* 。上下文无关文法取名为“上下文无关”的原因就是因为字符 V 总可以被字串 w 自由替换,而无需考虑字符 V 出现的上下文。

    3.上下文有关文法:

    形式文法 G = (N, Σ, P, S) 是上下文有关的,如果在 P 中所有的规则都有如下形式
αAβ → αγβ

这里的 A ∈ N(就是 A 是单一非终结符),α,β ∈ (N U Σ)*(就是 α 和 β 是非终结符和终结符的字符串)而 γ ∈ (N U Σ)+(就是 γ 是非终结符和终结符的非空字符串),又称1型文法。

    4.无约束文法:

    无限制文法是形式文法G = (N, Σ, P, S),

{\displaystyle P}P 是形如 {\displaystyle \alpha \to \beta }\alpha \to \beta 的产生规则的集合,这里的 {\displaystyle \alpha }\alpha 和 {\displaystyle \beta }\beta 是在 {\displaystyle N\cup \Sigma }N \cup \Sigma 中的符号的字符串而 {\displaystyle \alpha }\alpha 是非空字符串,无限制文法在可以有什么类型的产生规则上没有真实限制,又称0型文法

    如果一个文法产生式集合P分属于不同类型的文法产生式,则将包含最广类的文法产生式作为这个这个文法的类型。



二. 自动机理论
自动机是有限状态机(FSM)的数学模型。FSM是给定符号输入,依据(可表达为一个表格的)转移函数“跳转”过一系列状态的一种机器。逐个读取输入中的符号,直到被完全耗尽(把它当作有一个字写在其上的磁带,通过自动机的读磁头来读取它;磁头在磁带上前行移动,一次读一个符号)。一旦输入被耗尽,自动机被称为“停止”了

1. 有限自动机:
有限状态自动机(FA—finite automaton)是一个五元组:
– M=(Q, Σ, δ, q0, F)
– Q——状态的非空有穷集合。∀q∈Q,q称为M的一个状态。
– Σ——输入字母表。
– δ——状态转移函数,有时又叫作状态转换函数或者移动函数,δ:Q×Σ→Q,δ(q,a)=p。
– q0——M的开始状态,也可叫作初始状态或启动状态。q0∈Q。

– F——M的终止状态集合。F被Q包含。任给q∈F,q称为M的终止状态。

有限状态自动机还可以分成确定(DFA)与非确定(NFA)两种。非确定有限状态自动机可以转化为确定有限状态自动机。有限状态自动机识别的语言是正则文法

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

2. 上下文无关文法与下推自动机有限自动机(push-down automata):

PDA 可以看成是一个带有附加的下推存储器的有限自动机,下推存储器是一个栈。
推自动机 M 是如下的一个七元组 ( Q, Σ, Γ, δ, q0, Z0, F ) ,其中:
* Q 是一个有穷状态集合;
* Σ 是一个字母表,称为输入字母表。
* Γ 是一个字母表,称为栈字母表。
* q0 属于 Q ,是初始状态。
* Z0 属于 Γ ,是一个特殊的栈符号,称为栈起始符号。
* F 包含于 Q ,是终结状态集合。
* δ : Q×(Σ∪{ε})×Γ -> Q×Γ* 是 M 的动作函数

当PDA处于状态q,面临输入符号a 时,自动机将进入qi(i= 1, 2, …, m )状态,并以yi来代替下推存储器(栈)顶端符号Z,同时将输入头指向下一个字符。当Z 被yi取代时,yi的符号按照从左到右的顺序依次从下向上推入到存储器。

3. 无约束文法 与 图灵机

    图灵机与有限自动机的区别:图灵机可以通过其读/写头改变输入带的字符。
4. 上下文相关文法与线性界限自动机
    线性带限自动机是一个确定的单带图灵机,其读写头不能超越原输入带上字符串的初始和终止位置,即线性带限自动机的存储空间被输入符号串的长度所限制。



    

    




  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值