【2019斯坦福CS224N笔记】(5)依存结构语法
csdn:https://blog.csdn.net/abcgkj
github:https://github.com/aimi-cn/AILearners
上节课我们主要讲述了神经网络是如何进行反向传播的。那么,这节课我们将来介绍NLP中的一大难点——句法分析。句法分析的主要任务是识别出句子所包含的句法成分以及这些成分之间的关系,一般以句法树来表示句法分析的结果。
那么如何描述语法?主要有两种观点:短语结构语法和依存结构语法。本文将重点讲述依存结构语法,因为人们发现依存句法树标注简单,且准确率高,近年来大多数使用的都是这种语法结构。
一、起源
语法依存的概念可以追溯到公元前4世纪印度语言学家Panini对语义、句法和形态依存的分类研究,但一般认为现代依存语法理论的创立者是法国语言学家Lucien Tesnière(1893—1954)。L.Tesnière的思想主要反映在他1959年出版的《结构句法基础》(Eléments de syntaxe structurale)一书中[Tesnière,1959]。
——摘自《统计自然语言处理》
二、定义
英文术语是:Dependency Parsing。依存结构语法假定句法结构由词汇项之间的关系组成,通常称为依赖关系的二元非对称关系,描述为从 head(被修饰的主题)用箭头指向 dependent (修饰语)。一般这些依存关系形成树结构。他们通常用语法关系的名称(主体,介词宾语,同位语等)。一个依存树的例子如下图所示:
1.信息来源
- 双词汇亲和(Bilexical affinities),比如discussion与issues。
- 依赖距离(Dependency distance),主要用近义词。
- 中间词语,如果中间词语是动词或标点,则两边的词语不太可能有依存
- 词语配价,一个词语最多有几个依赖者。
2.约束条件
- Root只能被一个词依赖
- 无闭环
3.方法
- Dynamic programming
- Graph algorithms——最小生成树
- Constraint Satisfaction
- “Transition-based parsing” or “deterministic dependency parsing”:主流方法,基于贪心决策动作拼装句法树。
三、神经网络依存句法分析器
在神经网络依存句法依赖分析器出现之前,主要有如下在几种句法分析器:
- Greedy transition-based parser
- Basic transition-based dependency parser
- Arc-standard transition-based parser
- MaltParser
那为什么需要神经网络句法分析器?这是因为传统特征表示稀疏、不完全、计算代价大的传统parser的大部分时间都花在拼装查询特征上了。其实,相较于传统方法,神经网络句法分析器就是把原来的单词、词性、依存标签转化成了向量进行表示。下图是该模型的架构:
从模型架构上来看,输入层主要做的是查找和合并,隐藏层使用了一个Relu激活函数,输出层则是一个简单的softmax分类器,loss使用的交叉熵函数。
四、展望
Chen and Manning(2014)的工作,是第一个简单、成功的神经依赖解析器。这项工作由其他人进一步发展和改进,走在最前沿的是Google。主要趋势是:
- 更大、更深的网络,具有更好的调优超参数
- Beam Search
- 对决策序列进行全局、条件随机字段(CRF)样式的推理
这就引出了之后的SyntaxNet和Parsey McParseFace模型。
喜欢的童鞋记得分享给别的小伙伴哈。AIMI-CN AI学习交流群【1015286623】 获取更多AI资料扫码加群:
分享技术,乐享生活:我们的公众号每周推送“AI”系列资讯类文章,欢迎您的关注!
【2019斯坦福CS224N笔记】(5)依存结构语法相关推荐
- 【2019斯坦福CS224N笔记】(5)The probability of a sentence Recurrent Neural Networks and Language Models
这部分内容主要研究语言模型及循环神经网络在语言模型中的应用. 目录 1.语言模型 2.经典n-gram模型 3.Window-based DNN 4.Recurrent Neural Networks ...
- 【2019斯坦福CS224N笔记】(2)Word Vectors and Word Senses
目录 1 回顾:word2vec的主要思想 2 优化 : 梯度下降 3 The skip-gram model with negative sampling 基于负采样的Skip-gram模型 (H ...
- 2019斯坦福CS224n深度学习自然语言处理笔记(3)反向传播与计算图
向AI转型的程序员都关注了这个号
- 2019斯坦福CS224n深度学习自然语言处理笔记(1)Word2Vec与Glove
向AI转型的程序员都关注了这个号
- 最新(2019)斯坦福CS224n深度学习自然语言处理课程(视频+笔记+2017年合集)
向AI转型的程序员都关注了这个号
- 2019斯坦福CS224n深度学习自然语言处理笔记(3)——分类模型与神经网络
文章目录 1. 什么是分类? 1.1 logist(二分类) 1.2 softmax(多分类) 1.2.1 softmax函数 1.2.2 独热编码 1.2.3 交叉熵 1.2.4 反向传播 2.神经 ...
- 2019 斯坦福 CS224n 课程
课程网站,有PPT和参考资料: http://web.stanford.edu/class/cs224n/index.html#schedule 官方课程视频网站: http://onlinehub. ...
- 【NLP CS224N笔记】Lecture 12 - Information from parts of words Subword Models
本次梳理基于Datawhale 第12期组队学习 -CS224n-预训练模块 详细课程内容参考(2019)斯坦福CS224n深度学习自然语言处理课程 1. 写在前面 自然语言处理( NLP )是信息时 ...
- 2019年CS224N课程笔记-Lecture 5: Linguistic Structure: Dependency Parsing
资源链接:https://www.bilibili.com/video/BV1r4411,部分内容参考来自于码农场 » CS224n笔记6 句法分析和https://zhuanlan.zhihu.co ...
最新文章
- linux运维实战练习及linux shell脚本、awk、sed工具命令学习总结
- 成为“能打”的二次元游戏《明日方舟》做对了什么?
- 关于 Angular 项目里的 index.ts
- python2.7安装pip_python2.7 安装pip的方法步骤(管用)
- 513. Find Bottom Left Tree Value
- 通用唯一标识码UUID的介绍及使用
- 《OEA - 实体扩展属性系统 - 设计方案说明书》
- 华为云发起美食图片分类大赛!奖品丰厚还可免费使用云资源
- A Spy in the Metro UVA - 1025
- IEEE 1588-2002 Precision Time Protocol(PTP)
- 帝国列表页分开调取年份和月份单独调用的方法?
- ZOJ 3981 2017CCPC秦皇岛 A:Balloon Robot
- 李宏毅机器学习——结构化学习(二)
- linux大容量硬盘 克隆到小硬盘_试玩免费硬盘克隆软件 再生龙 分区备份及恢复篇...
- 微信会员卡,微信会员系统
- 惠普电脑无故出现第三方屏保
- vscode 前端常用插件推荐
- 使用malloc函数分配空间
- 学生免费领取阿里云ECS云服务器并使用全过程(部署个人博客项目)
- 在线调试后台管理系统HTTP的POST请求