1 自然语言处理中极其重要的句法分析-德赢Vwin官网 网
0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

自然语言处理中极其重要的句法分析

8g3K_AI_Thinker 来源:lp 2019-04-09 10:23 次阅读

本文简要介绍了自然语言处理中极其重要的句法分析,并侧重对依存句法分析进行了重点总结,包括定义、重要概念、基本方法、性能评价、依存分析数据集,最后,分享了一些流行的工具以及工具实战例子。

01

句法分析

句法分析(syntactic parsing)是自然语言处理中的关键技术之一,它是对输入的文本句子进行分析以得到句子的句法结构的处理过程。

对句法结构进行分析,一方面是语言理解的自身需求,句法分析是语言理解的重要一环,另一方面也为其它自然语言处理任务提供支持。例如句法驱动的统计机器翻译需要对源语言或目标语言(或者同时两种语言)进行句法分析。

语义分析通常以句法分析的输出结果作为输入以便获得更多的指示信息。根据句法结构的表示形式不同,最常见的句法分析任务可以分为以下三种:

句法结构分析(syntactic structure parsing),又称短语结构分析(phrase structure parsing),也叫成分句法分析(constituent syntactic parsing)。作用是识别出句子中的短语结构以及短语之间的层次句法关系。

依存关系分析,又称依存句法分析(dependency syntactic parsing),简称依存分析,作用是识别句子中词汇与词汇之间的相互依存关系。

深层文法句法分析,即利用深层文法,例如词汇化树邻接文法(Lexicalized Tree Adjoining Grammar,LTAG)、词汇功能文法(Lexical Functional Grammar,LFG)、组合范畴文法(Combinatory Categorial Grammar,CCG)等,对句子进行深层的句法以及语义分析。

02

依存句法定义

维基百科是这样描述的:The dependency-based parse trees of dependency grammars see all nodes as terminal, which means they do not acknowledge the distinction between terminal and non-terminal categories. They are simpler on average than constituency-based parse trees because they contain fewer nodes.

依存句法是由法国语言学家L.Tesniere最先提出。它将句子分析成一颗依存句法树,描述出各个词语之间的依存关系。也即指出了词语之间在句法上的搭配关系,这种搭配关系是和语义相关联的。

在自然语言处理中,用词与词之间的依存关系来描述语言结构的框架称为依存语法(dependence grammar),又称从属关系语法。利用依存句法进行句法分析是自然语言理解的重要技术之一。

03

重要概念

依存句法认为“谓语”中的动词是一个句子的中心,其他成分与动词直接或间接地产生联系。

依存句法理论中,“依存”指词与词之间支配与被支配的关系,这种关系不是对等的,这种关系具有方向。确切的说,处于支配地位的成分称之为支配者(governor,regent,head),而处于被支配地位的成分称之为从属者(modifier,subordinate,dependency)。

依存语法本身没有规定要对依存关系进行分类,但为了丰富依存结构传达的句法信息,在实际应用中,一般会给依存树的边加上不同的标记。

依存语法存在一个共同的基本假设:句法结构本质上包含词和词之间的依存(修饰)关系。一个依存关系连接两个词,分别是核心词(head)和依存词(dependent)。依存关系可以细分为不同的类型,表示两个词之间的具体句法关系。

04

常见方法

基于规则的方法:早期的基于依存语法的句法分析方法主要包括类似CYK的动态规划算法、基于约束满足的方法和确定性分析策略等。

基于统计的方法:统计自然语言处理领域也涌现出了一大批优秀的研究工作,包括生成式依存分析方法、判别式依存分析方法和确定性依存分析方法,这几类方法是数据驱动的统计依存分析中最为代表性的方法。

基于深度学习的方法:近年来,深度学习在句法分析课题上逐渐成为研究热点,主要研究工作集中在特征表示方面。传统方法的特征表示主要采用人工定义原子特征和特征组合,而深度学习则把原子特征(词、词性、类别标签)进行向量化,在利用多层神经元网络提取特征。

05

依存分析器的性能评价

通常使用的指标包括:无标记依存正确率(unlabeled attachment score,UAS)、带标记依存正确率(labeled attachment score, LAS)、依存正确率(dependency accuracy,DA)、根正确率(root accuracy,RA)、完全匹配率(complete match,CM)等。这些指标的具体意思如下:

无标记依存正确率(UAS):测试集中找到其正确支配词的词(包括没有标注支配词的根结点)所占总词数的百分比。

带标记依存正确率(LAS):测试集中找到其正确支配词的词,并且依存关系类型也标注正确的词(包括没有标注支配词的根结点)占总词数的百分比。

依存正确率(DA):测试集中找到正确支配词非根结点词占所有非根结点词总数的百分比。

根正确率(RA):有二种定义,一种是测试集中正确根结点的个数与句子个数的百分比。另一种是指测试集中找到正确根结点的句子数所占句子总数的百分比。

完全匹配率(CM):测试集中无标记依存结构完全正确的句子占句子总数的百分比。

06

数据集

Penn Treebank:Penn Treebank 是一个项目的名称,项目目的是对语料进行标注,标注内容包括词性标注以及句法分析。

SemEval-2016 Task 9 中文语义依存图数据:http://ir.hit.edu.cn/2461.html

下载地址:

https://github.com/HIT-SCIR/SemEval-2016

CoNLL 经常开放句法分析的学术评测,比如:

2018年的通用句法分析评测任务:

http://universaldependencies.org/conll18/

2009年多语言多语言的句法依存和语义角色联合评测任务:http://ufal.mff.cuni.cz/conll2009-st/

2008年英语的依存句法-语义角色联合评测任务:https://www.clips.uantwerpen.be/conll2008/

2007年多语言依存分析评测:https://www.clips.uantwerpen.be/conll2007/

07

工具推荐

1. StanfordCoreNLP

斯坦福大学开发的,提供依存句法分析功能。

Github 地址:

https://github.com/Lynten/stanford-corenlp

官网:

https://stanfordnlp.github.io/CoreNLP/

2. HanLP

HanLP 是一系列模型与算法组成的 NLP 工具包。提供了中文依存句法分析功能。

Github 地址:

https://github.com/hankcs/pyhanlp

官网:

http://hanlp.linrunsoft.com/

3. SpaCy

工业级的自然语言处理工具,遗憾的是目前不支持中文。

Gihub 地址:

https://github.com/explosion/spaCy

官网:

https://spacy.io/

4. FudanNLP

复旦大学自然语言处理实验室开发的中文自然语言处理工具包,包含信息检索: 文本分类、新闻聚类;中文处理: 中文分词、词性标注、实体名识别、关键词抽取、依存句法分析、时间短语识别;结构化学习: 在线学习、层次分类、聚类。

Github 地址:

https://github.com/FudanNLP/fnlp

代码已上传:

https://github.com/yuquanle/StudyForNLP/blob/master/NLPbasic/Dependency.ipynb

参考:

1.统计自然语言处理

2.中文信息处理报告-2016

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表德赢Vwin官网 网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 机器翻译
    +关注

    关注

    0

    文章

    139

    浏览量

    14880
  • 深度学习
    +关注

    关注

    73

    文章

    5500

    浏览量

    121109
  • 自然语言处理

    关注

    1

    文章

    618

    浏览量

    13550

原文标题:别说还不懂依存句法分析

文章出处:【微信号:AI_Thinker,微信公众号:人工智能头条】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    python自然语言

    最近,python自然语言是越来越火了,那么什么是自然语言自然语言(Natural Language )广纳了众多技术,对自然或人类语言
    发表于 05-02 13:50

    自然语言处理技术介绍

    ,包括:分词、词性标注、句法分析、命名实体识别,以及信息抽取领域的实体关系抽取等。2.1.分词分词是自然语言处理技术的基础构成之一,并且是其它技术的基础。基于统计实现的词性标注、命名实体识别、
    发表于 09-27 09:57

    NLPIR语义分析是对自然语言处理的完美理解

    和逻辑表示。语义分析就是对信息所包含的语义的识别,并建立一种计算模型,使其能够像人那样理解自然语言。语义分析自然语言理解的根本问题,它在自然语言
    发表于 10-19 11:34

    自然语言处理怎么最快入门?

    `本文整理自知乎上的一个问答,分享给正在学习自然语言处理的朋友们!一、自然语言处理是什么?自然语言
    发表于 11-28 10:02

    hanlp汉语自然语言处理入门基础知识介绍

    人工智能。自然语言处理涉及的几个层次:作为输入一共有两个来源,语音与文本。所以第一级是语音识别和OCR或分词(事实上,跳过分词虽然理所当然地不能做句法分析,但字符级也可以直接做不少应用)。接下来是形态学
    发表于 01-02 14:43

    【推荐体验】腾讯云自然语言处理

    自然语言处理技术的功劳。可以说,只要有大量文本数据的应用场景,几乎都涉及到NLP技术,也都可以使用相关自然语言处理产品的接口来做智能分析。比
    发表于 10-09 15:28

    自然语言处理语言模型

    自然语言处理——53 语言模型(数据平滑)
    发表于 04-16 11:11

    什么是自然语言处理

    什么是自然语言处理自然语言处理任务有哪些?自然语言处理的方法是什么?
    发表于 09-08 06:51

    基于本体和句法分析的领域分词的实现

    针对基于字符串匹配的分词方法、基于理解的分词方法和基于统计的分词方法所存在的缺陷,提出基于本体和句法分析的某领域分词方法,通过建立体裁本体进行句法分析,从智能
    发表于 04-09 09:10 20次下载

    自然语言处理怎么最快入门_自然语言处理知识了解

    自然语言处理就是实现人机间自然语言通信,实现自然语言理解和自然语言生成是十分困难的,造成困难的根本原因是
    发表于 12-28 17:10 5308次阅读

    自然语言处理入门基础之hanlp详解

    人工智能。自然语言处理涉及的几个层次:自然语言处理的几个层次作为输入一共有两个来源,语音与文本。所以第一级是语音识别和OCR或分词(事实上,跳过分词虽然理所当然地不能做
    发表于 11-29 14:33 718次阅读

    什么是句法分析

    要深入研究句法分析,首先要知道,什么样的句法分析算是好的句法分析,所以句法分析方法的评价是首要思考的问题,目前进行句法分析,主要是用依存
    的头像 发表于 11-24 09:36 8064次阅读
    什么是<b class='flag-5'>句法分析</b>

    自然语言列举法描述法各自的特点

    自然语言文本。在自然语言处理中,列举法和描述法是两种常见的方法。 列举法 列举法是一种基于规则的方法,它通过列举所有可能的情况来解决问题。在自然语言
    的头像 发表于 07-03 14:13 1027次阅读

    自然语言处理过程的五个层次

    自然语言处理(NLP)的五个层次: 词法分析(Lexical Analysis): 词法分析是NLP的第一步,它涉及将文本分解为基本单位,通常是单词或标记。 词法
    的头像 发表于 07-03 14:27 577次阅读

    ASR与自然语言处理的结合

    ASR(Automatic Speech Recognition,自动语音识别)与自然语言处理(NLP)是人工智能领域的两个重要分支,它们在许多应用中紧密结合,共同构成了自然语言理解和
    的头像 发表于 11-18 15:19 388次阅读