gpt4 book ai didi

python - 查找相似/同义词/上下文单词 Python

转载 作者:行者123 更新时间:2023-12-03 02:35:44 32 4
gpt4 key购买 nike

您好,我正在寻找问题的解决方案:我想找到与法语和英语相似的单词列表例如 :名字可以是:名字、姓氏、化名、普雷诺姆、用户名......邮政地址可以是:城市、国家、街道、维尔、付款、邮政编码......

最佳答案

另一个答案和评论描述了如何获取同义词,但我认为您想要的不仅仅是这些?

我可以建议两种广泛的方法:WordNet 和词嵌入。

使用 nltk 和 wordnet,您想要探索相邻的图节点。请参阅http://www.nltk.org/howto/wordnet.html了解可用功能的概述。我建议您在 Wordnet 中找到起始词后,跟踪其所有关系,同时查找上位词,并在那里执行相同的操作。

找到起始词并不总是那么容易: http://wordnetweb.princeton.edu/perl/webwn?s=Postal+address&sub=Search+WordNet&o2=&o0=1&o8=1&o1=1&o7=&o5=&o9=&o6=&o3=&o4=&h=

相反,我似乎必须使用“地址”:http://wordnetweb.princeton.edu/perl/webwn?s=address&sub=Search+WordNet&o2=&o0=1&o8=1&o1=1&o7=&o5=&o9=&o6=&o3=&o4=&h=然后决定哪一个是这里的正确含义。然后尝试单击上位词、下位词、姊妹词等。说实话,这些都感觉不太对劲。

开放多语言 WordNet 尝试链接不同的语言。 http://compling.hss.ntu.edu.sg/omw/因此,您可以将英语 WordNet 代码转移到法语 WordNet,反之亦然。

另一种方法是使用词嵌入。您找到源单词的 300 维向量,然后在该向量空间中寻找最接近的单词。这将返回在相似上下文中使用的单词,因此它们可能具有相似的含义或相似的语法。

Spacy 有一个很好的实现,参见https://spacy.io/usage/spacy-101#vectors-similarityhttps://spacy.io/usage/vectors-similarity

关于英语和法语,通常您会独立使用这两种语言进行工作。但是,如果您搜索“多语言词嵌入”,您会发现一些论文和项目,其中对于不同语言的相同概念,向量保持相同。

注意:API 旨在告诉您两个单词的相似程度,而不是查找相似的单词。要找到相似的单词,您需要获取向量并与其他每个单词向量进行比较,该向量的词汇量大小为 O(N)。因此,您可能希望离线执行此操作,并为每个感兴趣的单词构建您自己的“同义词和相似”词典。

关于python - 查找相似/同义词/上下文单词 Python,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54882858/

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