首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用NLP匹配2个关键词列表

使用NLP匹配2个关键词列表
EN

Data Science用户
提问于 2022-02-09 11:27:52
回答 1查看 222关注 0票数 1

我有两个列表,我想确定哪些元素在列表中是常见的(在含义或上下文上相同或相似)。我们应该使用哪种NLP算法。

代码语言:javascript
复制
list-1= [US, Apple, Trump, Biden, Mango, French, German]

list-2= [State, iphone, ipad, ipod, president, person, Fruit, Language, Country]
EN

回答 1

Data Science用户

发布于 2022-02-09 12:58:51

最简单的实现是使用以下步骤:

代码语言:javascript
复制
Step 1 : Iterate through both the list 
Step 2 : Calculate the Cossine Similarity between each word in list1 with list2
Step 3 : Decide the threshold on cossine similarity. Higher means stricter

守则如下:

代码语言:javascript
复制
list_1 = [ US, Apple, Trump, Biden, Mango, French, German]
list_2 = [State, iphone, ipad, ipod, president, person, Fruit, Language, Country]


# Download the package and model : 
from gensim.models import Word2Vec

similarity_dict = {}
for word_list1 in list_1:
    for word_list2 in list_2:
         model = Word2Vec.load(path/to/your/model)
         cosine_similarity = model.wv.similarity(word_list1, word_list2)

优点:

  1. 易于实现
  2. 使用Word2vec aso作为word2vec确保上下文非常可靠
  3. 易于理解和

缺点:

  1. 该代码的复杂度为O(n*n)
  2. 它不适用于word2vec中词汇量不足的单词
票数 2
EN
页面原文内容由Data Science提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://datascience.stackexchange.com/questions/108016

复制
相关文章

相似问题

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