我面临一个问题,我需要计算双语(英语和法语)文本的相似性。“数据库”如下所示:
+-+-+-+
| |F|E|
+-+-+-+
|1|X|X|
+-+-+-+
|2| |X|
+-+-+-+
|3|X| |
+-+-+-+
|4|X| |
+-+-+-+
|5| |X|
+-+-+-+
|6|X|X|
+-+-+-+
|7|X| |
+-+-+-+
这意味着我对每个“项目”都有英语和法语文本(可变的长单句),或者在两个版本中(在这种情况下,版本是彼此松散的翻译),或者只有一种语言。
任务是为任何传入的新句子找到最接近的项目 ID,而不管“数据库”中的句子或传入句子的实际语言(即,“数据库”中的匹配句子不一定是与传入的句子使用相同的语言,只要含义最接近)。我希望这个目标解释清楚。
最初我计划从头开始为两种语言构建一个 word2vec(词汇表非常具体,所以我更喜欢我自己的 word2vec),并且只为每个新句子的相应语言找到相似之处,但这会省略项目中的所有候选者缺少相应的语言句子。
所以我想知道为组合语料库生成一个通用的 word2vec 编码是否可行(word2vec 方法本身与语言无关),但我不知道这样的解决方案是否更好。
此外,句子的数量不是很大(大约 10.000 个),从头开始生成 word2vec 可能不是最好的主意,但另一方面,语料库中确实有特定的术语。