【神经网络】Dependency Parsing的两种解决方案

一、Transition-based的依存解析方法

解析过程:首先设计一系列action, 其就是有方向带类型的边,接着从左向右依次解析句子中的每一个词,解析词的同时通过选择某一个action开始增量构建依存树, 直到句子中的词解析完.
优点:解析过程是线性的, operations步骤随句子长度线性增长
挑战:在解析的每一步都只是利用局部信息,会导致错误传播,性能比graph-based效果略差

它的主要思路是先把一个句子变成句法树,再变成dependency parser,这个方法有点舍近求远,但它的效果不错。它同样会定义一些操作,即在一个序列上不断做这些操作,直到结束,就能形成一棵树。主要有以下三种操作:

这个模型就是在序列中,插左括号或右括号的非典型性序列打标问题,deep learning在里面起的作用是,每一个左括号和右括号封闭的token,把它们表达成一个更高级的含义。

二、Graph-based的依存解析方法

 解析过程:学习一个打分函数,针对一句话在所有可能的解析结果(解析的依存树)中执行全局的穷举搜索,得到一个打分最高的解析树.
 优点:目前效果相比transition-based较好
 挑战:搜索的过程速度很慢

 这个模型是把之前构建数的问题变成距离计算的问题。它本质做的事情是建立一个矩阵,行和列都是这个句子里的token,每两个行列中的一个点表示a修饰b的概率或b修饰a的概率的一个得分,最后要形成树,我们就是在这个距离向量中找一棵最小生成树,生成出来的就是dependency parser。

 

全部评论

相关推荐

不愿透露姓名的神秘牛友
07-10 11:55
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
07-09 12:02
ssob上原来真有BOSS啊
硫蛋蛋:这种也是打工的,只不是是给写字楼房东打工
点赞 评论 收藏
分享
05-29 22:11
门头沟学院 Java
Elastic90:抛开学历造假不谈,这公司的招聘需求也挺怪的,Java开发还要求你有图文识别、移动端开发和c++的经验,有点逆天了。
点赞 评论 收藏
分享
05-22 09:23
门头沟学院 Java
点赞 评论 收藏
分享
这是什么操作什么意思,这公司我服了...
斯派克spark:意思是有比你更便宜的牛马了
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务