gpt4 book ai didi

nlp - 跨多种语言的语义相似性

转载 作者:行者123 更新时间:2023-12-05 08:55:33 29 4
gpt4 key购买 nike

我正在使用词嵌入来寻找两个句子之间的相似性。使用 word2vec,如果一个句子是英语而另一个句子是荷兰语(虽然不是很好),我也会得到一个相似性度量。

所以我开始想知道是否有可能计算两种不同语言的两个句子之间的相似度(没有明确的翻译),特别是如果这些语言有一些相似之处(英语/荷兰语)?

最佳答案

让我们假设您的句子相似度方案仅使用词向量作为输入——就像在简单的词向量平均方案或词移动距离中一样。

如果满足以下条件,应该可以执行您的建议:

  • 对于每种语言的单词,你都有很好的单词向量集
  • 词向量的坐标空间是兼容的,这意味着两种语言中表示完全相同事物的词具有几乎相同的坐标(并且具有相似含义的其他词具有接近的坐标)

第二种质量不会自动得到保证。事实上,考虑到 word2vec 模型的随机初始化,以及算法/实现引入的其他随机化,即使是在完全相同的数据上运行的后续训练也不会将单词放在完全相同的位置。因此,在完全独立的英语/荷兰语语料库上训练的词向量不太可能将等同的词​​放在相同的坐标上。

但是,您可以根据某些 anchor /引用词对(您知道应该具有相似的向量)学习两个空间之间的代数转换。然后,您可以将该转换应用于两组中一组中的所有单词,这会导致您在“规范”单词集的可比较坐标空间内拥有那些“外来”单词的向量。

事实上,这个想法在第一篇 word2vec 论文中被使用过:

"Exploiting Similarities among Languages for Machine Translation "

如果您要对您的一个语言词向量集应用类似的转换,然后使用这些转换后的向量作为您的句子向量方案的输入,这些句子向量可能与另一种语言,从同一坐标空间中的词向量引导。

更新:有一个非常有趣的recent paper它设法同时训练多种语言的词向量,使用的语料库包括每种语言的原始句子和一组(较小的)已知在两种语言中含义相同的对齐句子。 Gensim 尚不支持此模式,但有 discussion of supporting it在未来的重构中。

关于nlp - 跨多种语言的语义相似性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45571295/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com