首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如果两个句子中的单词数量不同,如何为基于单词的翻译模型生成对齐

如果两个句子中的单词数量不同,如何为基于单词的翻译模型生成对齐
EN

Stack Overflow用户
提问于 2019-11-05 04:04:04
回答 1查看 65关注 0票数 0

我正在努力实现IBM模型1。我有一个平行的语料库,大约有2,000,000个句子(英语到荷兰语)。而且,两个文档的句子已经对齐了。其目的是将荷兰语句子翻译成英语,反之亦然。

我用来生成比对的代码是:

代码语言:javascript
复制
A = pair_sent[0].split()  # To split English sentence
B = pair_sent[1].split()  # To split Dutch sentence
trips.append([zip(A, p) for p in product(B, repeat=len(A))])

现在,出现了单词数量不相等的配对句子(如英语中的10个,荷兰语翻译中的14个)。我们的教授告诉我们,我们应该使用NULLs或丢弃一个单词。但我不明白该怎么做?在哪里插入NULL,以及如何选择要删除的单词。

最后,我要求这对句子的词数相等。

EN

回答 1

Stack Overflow用户

发布于 2019-11-11 17:24:38

问题不在于句子的词数不同。毕竟,IBM模型为源句子中的每个单词计算目标句子中所有单词的概率分布,而不关心目标句子中有多少个单词。问题是,目标句子中可能存在没有对应物的单词。

如果您将一个空词附加到目标句子中(无论在哪里,因为IBM Model 1没有考虑重新排序),您还可以对一个单词在目标句子中没有对应词的概率进行建模。

然后,使用来自两边的一对IBM模型的对称化启发式完成实际的双语对齐。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58700304

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档