自然语言处理-句法分析

1.乔姆斯基文法

(1)基础数学定义

(2)乔姆斯基文法四元组

对于VN,语言学家会预定义一套符号,比如:

S代表句子

NP代表名词短语(Noun Phrase)

VP代表动词短语(Verb Phrase)

对于P,也是专家定义的一系列规则,是根据语法定义的 如:S->NP VP

(3)乔姆斯基层次结构

2.上下文无关文法(CFG)

如果对于左侧是NP的规则,后续的选择有很多,这里可以循环来尝试

课件中的另一个例子:

3.乔姆斯基范式(CNF)

Chomsky Normal Form

注意,CNF是CFG的子集

严格规则定义:

比如

特性 普通 CFG (2 型文法) CNF (乔姆斯基范式)
灵活性 极高,右边可以随心所欲组合 极低,只能是 BC 或 a
语法树形状 任意形状的多叉树 标准二叉树
算法支持 较难直接进行高效自动化解析 完美适配 CYK 等动态规划算法
地位 语言学的描述工具 计算机 NLP 的运算工具

CYK算法是判断句子是否符合文法的经典算法,它要求文法必须是CNF格式

对于长度为n的句子,在CNF文法下,推导过程正好需要2n-1步

CYK算法

CYK核心是一个自底向上的动态规划过程

目标是:给定一个句子和一个 CNF 文法,填满一个三角形的表格,最终看顶格是否包含开始符号 S

用一个例子来看:

填写第一行的时候,注意也要使用规则,每个格可能有好几种表示

填写第二行时候,如果是12拼成的,第二行要写在1的位置

在下图中,VP->V NP是根据2、3格的出来的,也就是要写在2的位置

在填写第3行的时候,可以自由的组合,比如可以1+23,12+3,23+4等等都可以,把符合的写出来即可,如下图

比如其中第三行的1位置,是由1+23得到的(S -> NP VP)

4.概率上下文无关法

在传统的 CFG 中,一个句子往往能推导出多棵语法树(这就是所谓的歧义性

在概率上下文无关法中,对于同一个非终结符(左手边相同),其所有可能的推导规则概率之和必须等于 1,比如

引入概率后,之前的 CYK 算法 就进化成了 概率 CYK 算法

  1. 填表内容变了:以前格子里只写 {NP, VP},现在要写 {(NP, 0.5), (VP, 0.2)}。

  2. 组合逻辑变了:当你合并两个格子时,不再是简单的拼接,而是要进行乘法运算:

  3. 目标变了 :不再是"填满就行",而是在填表过程中,如果同一个格子里出现了多个相同的非终结符(比如两个不同的推导都得到了 NP),只保留概率最大的那一个(类似于 Viterbi 算法的思想)

三个问题:(类似HMM中的三个问题)

相关推荐
枫叶林FYL2 小时前
【自然语言处理 NLP】前沿架构与多模态 6.1.1.3 硬件感知状态空间优化(FlashConv/FlashFFTConv)
人工智能
sun_tao12 小时前
主流大语言模型的损失函数异同
人工智能·llm·损失函数·loss
墨染天姬2 小时前
【AI】MCP模型上下文协议
人工智能
半页码书2 小时前
2026年哪个AI改简历最好用
人工智能·chatgpt·面试·求职招聘·职场发展·远程工作
枫叶林FYL2 小时前
【自然语言处理 NLP】前沿架构与多模态 6.1.1.4 混合架构(Mamba-Transformer Hybrid)
人工智能·机器学习·自然语言处理
IT 行者2 小时前
Web逆向工程AI工具:Integuru,YC W24孵化的API逆向神器
人工智能·ai编程·web逆向·mcp
这张生成的图像能检测吗2 小时前
(论文速读)RFD-LLM:用大语言模型诊断列车故障
人工智能·计算机视觉·故障诊断
枫叶林FYL2 小时前
【自然语言处理 NLP】前沿架构与多模态 选择性状态空间模型与并行扫描算法:从原理到实现
算法·自然语言处理·架构
老刘干货2 小时前
Prompt工程全解·第一篇:打破壁垒——从“搜索思维”到“指令思维”的认知重塑
人工智能·技术人