摘要:

层次短语模型,顾名思义,短语是具有层次关系的。机器翻译中,最重要的就是两点,第一点选词问题,第二点调序问题。层次短语模型通过“变量规则”融合了选词以及调序问题。由于源语言以及目标语言表达的不同,变量规则可以很好地捕捉到位置的变化。层次短语模型名义上属于形式化句法翻译模型,实则是短语翻译模型。重要的过程包括两点:层次短语规则的抽取以及解码。

层次短语规则的抽取过程包含普通短语规则的抽取,以及包含变量的规则抽取。抽取短语最基本的条件就是“对齐一致性”。在抽取变量规则的时候,通过枚举SPAN范围内所有可能的组合,不含变量、一个变量以及两个变量等三种可能。规则主要包含源端、目标端、双向词汇化翻译概率、双向短语翻译概率。计算时需要估算每一个短语的fraction,对于不含变量的规则而言,每次抽取该种规则时fraction为1,对于包含变量规则,fraction为变量总数分之一。计算双向短语翻译概率时,使用fraction进行计算。注意工程实现细节,抽取的规则数目达到一定程度时,就需要输出到临时文件,并且清空所使用的内存。

对于解码而言,层次短语模型使用最基本的CYK算法。自底向上逐渐填充每一个span。对于填充某一个span时,首先枚举该span可能包含的所有规则,对于每一个规则产生一个cube候选,然后对于所有的cube候选进行cube pruning,然后添加到chart图中。

层次短语模型相比于短语模型以及MEBTG模型究竟优势在何处呢?短语模型依靠词汇化调序模型以及distortion调序模型进行随机调序,产生比较大的歧义,很难解决长距离调序问题。MEBTG模型生成一个span时,总是合并两个子span,并且合并方式只有两种,“逆序”或者“顺序”。而层次短语模型依靠变量规则直接进行了依据语言规律的调序,排除了很多歧义性,并且更加符合真实情况。对于处理OOV问题,短语模型以及MEBTG模型遇到之后,概率计算会使用默认值,并且OOV问题一直会影响后续的概率计算问题。对于层次短语模型,由于使用的是变量规则,OOV可以泛化成变量,而不影响后续的概率计算。依据此两点,层次短语模型能够更好的进行翻译工作。

一、解码流程

1. CKY算法自底向上填充每一个span。

2.计算该span的所有可能的cube。

2.1 枚举span的所有可能的规则

2.2 对于每一条合法且有效的规则,生成一个cube

3.利用cube pruning进行选取Candidate,添加到chart中。

3.1 添加每一个cube中第一个元素(生成翻译)到优先级队列中

3.2 从优先级队列中取出最优元素添加到chart中,并添加其邻居到队列

3.3 直到达到chart的limit

系统涉及到的对象:

1. Rule: 规则,单条规则

2. RuleTable: 短语表,vector存放Rule,map<source, TargetIDs>存放映射

3. LanguageModel:计算语言模型分数

4. Search:核心数据结构,搜索最优路径

5. Cube:一个Cube,对应一条规则

6. Candidate: Cube Pruning时优先级队列中的对象

7. Translation:翻译后的对象

8. Chart:CYK核心数据结构

9. StaticData:系统所需参数

二、NBEST计算
       输出最后一个span的内容即可,据听说合并翻译假设后生成的NBEST和最后一个span的内容相差没有多少。因此,为了简便,直接输出最后一个span的内容即可。

层次短语模型学习笔记相关推荐

  1. 概率图模型学习笔记:HMM、MEMM、CRF

    作者:Scofield 链接:https://www.zhihu.com/question/35866596/answer/236886066 来源:知乎 著作权归作者所有.商业转载请联系作者获得授权 ...

  2. DMU-单性状重复力模型-学习笔记3

    单性状重复力模型 本次主要是演示如何使用DMU分析单性状重复力模型. 重复力模型和动物模型的区别: 不是所有的性状都可以分析重复力模型, 首先重复力模型是动物模型的拓展, 它适合一个个体多个观测值的情 ...

  3. 文本分类模型学习笔记

    文本分类模型学习笔记 TextCNN 模型结构 HAN 模型结构 实验 数据集 预处理 模型内容 模型训练 模型测试 近年来,深度学习模型在计算机视觉和语音识别中取得了显著成果.在自然语言处理中,深度 ...

  4. Heckman两阶段模型学习笔记

    有近两周的时间都在学习Heckman两阶段模型.网上看了一些资料,在CSDN里找到了几篇珍贵的学习笔记,有一篇相当于带我入了门学习笔记 | Heckman两阶段法介绍_Claire_chen_jia的 ...

  5. ARIMA模型学习笔记

    ARIMA模型学习笔记 目录 ARIMA模型学习笔记 ARIMA模型 时间序列平稳性 什么是平稳性 严平稳 弱平稳 平稳性检验 ADF检验(Augmented Dickey-Fuller test) ...

  6. 生成模型学习笔记:从高斯判别分析到朴素贝叶斯

    机器之心专栏 作者:张威 翻译:燕子石 本文是哥伦比亚大学研究生张威在生成模型上的学习笔记,由毕业于新西兰奥克兰理工大学的燕子石翻译.机器之心之前曾介绍过张威所写的吴恩达<机器学习>课程的 ...

  7. 图神经网络(GNNs)模型学习笔记与总结

    GCN学习笔记 1 基于谱域的GCN 1.1 知识要点: 1.2 Spectral-based models 1.2.1 Spectral Network 1.2.2 ChebNet(2016) 1. ...

  8. MNL——多项Logit模型学习笔记(二)

    本节将会通过案例举例,介绍Logit模型的建模思路和过程 内容为摘抄他人学习资料的个人学习笔记,如有侵权则删 1.正确打开/解读Logit模型系数的方式 本节的具体内容在笔记里不详细表示了,大家在软件 ...

  9. 分类模型 · 学习笔记一

    文章目录 分类模型 分类算法一:逻辑回归 一.直接采用线性概率模型是否可行? 二.模型的构建 1. 两点分布(伯努利分布) 2. 那么连接函数 F ( x , β ) F(x,\beta) F(x,β ...

最新文章

  1. QML基础类型之vector4d
  2. Leetcode题库 4.寻找两个正序数组的中位数(双指针法 C实现)
  3. spring的PathMatchingResourcePatternResolver基于ant通配符匹配路径遍历项目所有xml文件
  4. 提高软件开发、软件维护的效率和质量的利器
  5. k8s部署tomcat及web应用_k8s部署tomcat应用服务
  6. 计算机日常英语,计算机英语的常用句子
  7. 前端学习资料汇总(转)
  8. window.event 对象详解
  9. 炫酷大屏demo_周末大放送 16几个炫酷的HTML5动画锦集
  10. Win10 LTSC 2021安装及相关bug解决
  11. 每周分享第 45 期
  12. 大学的第一堂必修课:军训
  13. ArcGIS For Unity3D(一)—— 在Unity3D中开启ArcGIS
  14. Java学习推荐教材
  15. 骗子QQ2875827910手机号码15591473507微信号gewen521520
  16. confluence 删除_Confluence 清理已经删除的页面(完全删除)
  17. Hadoop2.7下载安装
  18. 没有软件开发人员,可以办理CMMI3级吗?
  19. [Alpha阶段]第十次Scrum Meeting
  20. CCF历年题目201803-4 棋局评估

热门文章

  1. 3600万中国人在抖音“上清华”。
  2. 微信群发频繁发送消息,请稍后再试?
  3. 波特兰:特别奖金3月PADNUG与Adam Cogan会面
  4. 汉医健康:“互联网+医疗健康”让患者更有“医”靠
  5. subplots与figure函数参数解释说明以及简单的使用脚本实例
  6. 知识管理文档协同不一定要用语雀和石墨,用它效果更好
  7. 公众号数据全面分析解读(上篇)
  8. 数据时代大数据管理,主要有哪些策略?
  9. [水晶报表]如何设置水晶报表(crystal reports)的字段自动换行
  10. 使用 ChatGPT 将您的 Excel 工作效率提高 10 倍,您不再需要成为 Excel 向导才能变得超级高效。