python-NLP:4句法分析

文章目录

  • 句法分析概述
    • 句法分析分类
    • 句法分析任务
  • 句法结构分析
    • 基本概念
    • 语法形式化
    • 基本方法
  • 依存句法分析
  • 浅层句法分析


句法分析概述

  句法分析(syntacticparsing)是自然语言处理中的关键技术之一,其基本任务是确定句子的句法结构(syntactic structure)或句子中词汇之间的依存关系。一般来说,句法分析并不是一个自然语言处理任务的最终目标,但是,它往往是实现最终目标的重要环节,甚至是关键环节。因此,在自然语言处理研究中,句法分析始终是众多专家关注的核心问题之一,围绕这一问题人们不断提出各种新的理论和方法。

句法分析分类

  句法分析分为句法结构分析和依存关系分析(dependency parsing)两种。

  • 句法结构分析又可称为成分结构分析或短语结构分析。以获取整个句子的句法结构为目的的句法分析称为完全句法分析或者完全短语结构分析,而以获得局部成分(如基本名词短语(base NP))为目的的句法分析称为局部分析或称浅层分析。
  • 依存关系分析又称依存句法分析或依存结构分析,简称依存分析。

句法分析任务

  一般而言,句法分析的任务有三个:
①判断输出的字符串是否属于某种语言;
②消除输入句子中词法和结构等方面的歧义;
③分析输入句子的内部结构,如成分构成、上下文关系等。
第②、③个任务一般是句法分析的主要任务。

句法结构分析

基本概念

  句法结构分析是指对输入的单词序列(一般为句子)判断其构成是否合乎给定的语法,分析出合乎语法的句子的句法结构。句法结构一般用树状数据结构表示,通常称为句法分析树(syntactic parsingtree) ,简称分析树(parsing tree)。完成这种分析过程的程序模块称为句法结构分析(syntacticparser),通常简称为分析器(parser)。一般而言,句法结构分析的任务有三个:
  ①判断输入的字符串是否属于某种语言;
  ②消除输入句子中词法和结构等方面的歧义;
  ③分析输入句子的内部结构,如成分构成、上下文关系等。
  如果一个句子有多种结构表示,句法分析器应该分析出该句子最有可能的结构。有时人们也将句法结构分析称为语言或句子识别。由于在实际应用过程中,通常系统都已经知道或者默认了被分析的句子属于哪一种语言,因此,一般不考虑任务①,而着重考虑任务②和③的处理问题。词法歧义和结构歧义等各种类型的歧义在自然语言中普遍存在,而句法结构歧义的识别和消解是句法分析面临的主要困难。

语法形式化

  语法形式化属于句法理论研究的范畴。目前在自然语言处理中广泛使用的是上下文无关文法(CFG)和基于约束的文法的简单形式,后者又称为合一语法。合一文法目前已经形成了在自然语言处理中被广泛采用的一种形式化表示类型。尤其是当有关研究宣称,与扩展的转移网络(augmented transition networks,ATNs)等早期框架相比,从语法工程和语法可重用性的前景来看,基于约束的形式化方法具有更多的优越性以后,这种形式化方法得到了更广泛的应用。
常用的基于约束的语法有:

  • 功能合一语法;
  • 树链接语法;
  • 词汇功能语法;
  • 广义的短语结构语法;
  • 中心语驱动的短语结构语法。

基本方法

  句法结构分析方法可以分为基于规则的分析方法和基于统计的分析方法两大类。基于规则的句法结构分析方法的基本思路是,由人工组织语法规则,建立语法知识库,通过条件约束和检查来实现句法结构歧义的消除。在过去的几十年里,人们先后提出了若干有影响力的句法分析算法,诸如:CYK分析算法(Cocke-Younger-Kasamiparsing)、欧雷分析算法、线图分析算法、移进-规约算法、GLR分析算法和左角分析算法,等等。人们对这些算法做了大量的改进工作,并将其应用于自然语言处理的相关研究和开发任务,例如:机器翻译、树库标注等很多方面。
  目前的句法分析已经从句法结构分析转向依存句法分析,一是因为通用数据集Treebank的发展,虽然该数据集的标注较为复杂,但是其标注结果可以用作多种任务(命名体识别或词性标注)且作为不同任务的评估数据,因而得到越来越多的应用,二是句法结构分析的语法集是由固定的语法集组成,较为固定和呆板;三是依存句法分析树标注简单且parser准确率高。

依存句法分析

浅层句法分析

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/401652.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

简单回归问题实战

数据表:链接: https://pan.baidu.com/s/1sSz7F_yf_JeumXcP4EjE5g?pwd753f 提取码: 753f 核心流程: import numpy as np # 计算误差函数 points是数据集中数据的位置 def compute_error_for_line_given_points(b,w,points):totalError0for i in range(0…

虚幻5|入门AI行为树,建立敌人

本章分成两块部分一块是第一点的制作一个简单的AI,后面第二点之后是第二部分建立ai行为树。这两个部分是一个衔接,最好不要跳看 一,制作一个简单的AI 1.首先,我们创建一个敌人的角色蓝图,添加一个场景组件widget用于…

Xmind 8思维导图(含补丁)

Xmind 8思维导图(含补丁) 什么是思维导图?如何下载Xmind8Xmind 8软件简单使用获取Xmind 8 补丁 什么是思维导图? 数据结构、电路模拟等学习路线,老师都有叫画思维导图,那时候我只知道上网copy,…

基于Spring Boot的疗养院管理系统的设计与实现

TOC springboot234基于Spring Boot的疗养院管理系统的设计与实现 第1章 绪论 1.1选题动因 当前的网络技术,软件技术等都具备成熟的理论基础,市场上也出现各种技术开发的软件,这些软件都被用于各个领域,包括生活和工作的领域。…

【经验分享】Java注解实战进阶

原文地址:https://mp.weixin.qq.com/s/gdYysBB3aD_HmPyvEThFXw Java猿的命根子! 自Java EE框架步入Spring Boot时代之后,注解简直是Java程序员的命根子啊,面向注解编程成了日常操作! 换句话的意思就是说:…

PCB入门笔记—绘制一个只有两个排针的PCB全流程记录—立创EDA专业版

PCB绘制入门🚀 硕士毕业之后准备进入博士阶段,本科阶段做的硬件,硕士阶段做的算法,然后博士阶段又要做回硬件了,因此也是打算补一补PCB相关的内容和知识,毕竟做控制的话,之后这也是不能躲开的必…

CrowdTransfer:在AIoT社区中实现众包知识迁移

这篇论文的标题是《CrowdTransfer: Enabling Crowd Knowledge Transfer in AIoT Community》,由 Yan Liu, Bin Guo, Nuo Li, Yasan Ding, Zhouyangzi Zhang, 和 Zhiwen Yu 等作者共同撰写,发表在《IEEE Communications Surveys & Tutorials》上。以下…

Hive3:常用查询语句整理

一、数据准备 建库 CREATE DATABASE itheima; USE itheima;订单表 CREATE TABLE itheima.orders (orderId bigint COMMENT 订单id,orderNo string COMMENT 订单编号,shopId bigint COMMENT 门店id,userId bigint COMMENT 用户id,orderStatus tinyint COMMENT 订单状态 -3:用…

Halcon阈值处理的几种分割方法

Halcon阈值处理的几种分割方法 文章目录 Halcon阈值处理的几种分割方法1. 全局阈值2. 基于直方图的自动阈值分割方法3. 自动全局阈值分割方法4. 局部阈值分割方法5. var_threshold算子6 . char_threshold 算子7. dual_threshold算子 在场景中选择物体或特征是图像测量或识别的重…

2024-08-06升级记录:Android开发接口-获取定位卫星相关信息

Android中获取卫星信息的接口有两类: 一、GpsStatus 注意:此类在API级别24中已被弃用。 请使用GnssStatus和GnssStatus.Callback 。 这个类表示GPS引擎的当前状态。该类与 GpsStatus.Listener接口配合使用。 方法: 获取卫星信息&#xff…

24/8/15算法笔记 项目练习冰湖

import gym from matplotlib import pyplot as plt %matplotlib inline import os os.environ[SDL_VIDEODRIVER]dummy #设置环境变量 SDL_VIDEODRIVERdummy 是在使用基于 SDL (Simple DirectMedia Layer) 的应用程序时,告诉应用程序不使用任何视频驱动程序。这通常…

Transformer动画讲解-单头注意力和多头注意力

单头注意力和多头注意力 Transformer的起源:Google Brain 翻译团队通过论文《Attention is all you need》提出了一种全新的简单网络架构——Transformer,它完全基于注意力机制,摒弃了循环和卷积操作。 注意力机制是全部所需 正如论文标题所…

景联文科技:一文详解如何构建高质量SFT数据

在图像处理和计算机视觉领域中,将一张图像转化为可用于训练机器学习模型的数据是一项复杂而重要的任务。SFT(Supervised Fine-Tuning,监督微调)是一种常见的深度学习策略,在这一过程中发挥着核心作用。 SFT是指在一个预…

PostgreSQL-02-入门篇-查询数据

文章目录 1 简单查询SELECT 语句简介SELECT 语句语法SELECT 示例1) 使用 SELECT 语句查询一列数据的示例2) 使用 SELECT 语句查询多列数据的示例3) 使用 SELECT 语句查询表所有列数据的示例4) 使用带有表达式的 SELECT 语句的示例5) 使用带有表达式的 SELECT 语句的示例 2 列别…

【MySQL进阶之路】MySQL基础——从零认识MySQL

目录 主流数据库 什么是MySQL MySQL服务 从文件系统角度理解数据库 MySQL架构 SQL语句分类 存储引擎 个人主页:东洛的克莱斯韦克-CSDN博客 主流数据库 数据库开发商特点适用场景SQL Server微软.NET程序员的最爱,适合中大型项目企业级应用&#xf…

Mapreduce_wordcount自定义单词计数

自定义的wordcount 数据处理过程 加载jar包 查看后面的pom文件 以上为需要的jar包路径,将其导入至idea中 Map package com.hadoop;import org.apache.hadoop.io.IntWritable; import org.apache.hadoop.io.LongWritable; import org.apache.hadoop.io.Text; im…

电动汽车和混动汽车DC-DC转换器的创新设计与测试方法

汽车 DC-DC 转换器市场规模将达到187亿美元,年复合增长率为10%。 DC-DC 转换器是汽车的重要组成部分,它可以通过电压转换为各种车载系统供电,例如日益复杂的车载信息娱乐系统、使用驾驶辅助系统(ADAS)实现的增强安全功…

灵办AI免费ChatGPT4人工智能浏览器插件快速便捷(多功能)

灵办AI就是您所需的最佳助手!我们为您带来了一款多功能AI工具,不仅能为您提供精准翻译,还能满足您的对话需求、智能续写、AI搜索、文档阅读、代码生成与修正等多种需求。灵办 AI,真正让工作和学习变得轻松高效! 推荐使…

人工智能在网络安全威胁测试中的应用:LLMs如何改变网络威胁格局

一、引言 随着人工智能技术的快速发展,特别是大型语言模型(LLMs)的崛起,网络安全领域也迎来了新的变革。LLMs不仅在自然语言处理方面展现出惊人的能力,还在网络安全威胁测试中显示出巨大的潜力。本文旨在探讨LLMs在网…

【区块链+乡村振兴】链上云仓智慧动产监管平台 | FISCO BCOS应用案例

2021 年初 ,《中共中央国务院关于全面推进乡村振兴加快农业农村现代化的意见》将“乡村振兴”的重要性提升 到前所未有的战略高度。而随着科技与金融的深度融合,金融行业亦开始步入大数据、云计算、人工智能、区块 链的新技术发展。启动金融科技赋能乡村振兴示范工程…