自然语言处理-句法分析

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中的三个问题)

相关推荐
魔术师Grace12 小时前
从传统企业架构到 OPC 模式,AI 到底改变了什么?
人工智能·程序员
沪漂阿龙12 小时前
LangGraph 持久化完全指南:从零搭建永不丢失状态的 AI Agent 系统
人工智能·流程图
杨浦老苏12 小时前
大模型安全接入网关LinkAI
人工智能·docker·ai·群晖·隐私保护
档案宝档案管理12 小时前
权限分级管控,全程可追溯,筑牢会计档案安全防线
运维·网络·人工智能
Chat_zhanggong34512 小时前
主推RK3567J作用有哪些?
人工智能·嵌入式硬件
qq_4112624212 小时前
四博 AI 机械臂台灯智能音箱方案:让台灯具备视觉、语音、动作和学习陪伴能力
人工智能·语音识别
AI+程序员在路上12 小时前
VS Code 完全使用指南:下载、安装、核心功能与 内置AI 编程助手实战
开发语言·人工智能·windows·开源
coderyi12 小时前
Agent协作简析
人工智能
霍小毛13 小时前
破局工业数据孤岛!数字孪生+AI智慧设备资产管理平台,重构智能运维新范式
人工智能·重构
向量引擎13 小时前
向量引擎的新时代:从OpenClaw、Hermes到GPT Image 2与龙虾(Lobster)模型的深度对比与应用
人工智能·gpt·aigc·api·ai编程·key·api调用