从句子中获得关键字相似度值的最佳方法?



我正在努力找出最好的方法,以及我想要实现的目标的最佳度量。

我正在寻找文本之间的相似性值,例如:

Keyword: "why can't dogs eat chocolate"

文本:"Chocolate is toxic to dogs because it contains theobromine and to a lesser extent, caffeine."

虽然文本中没有确切的关键字,但其含义大致相同。

目前我使用模糊字符串匹配,但不认为这是理想的。(使用Thefuzz模块)

value = fuzz.token_set_ratio(keyword, text)

从某种意义上说,我只是想找出关键字的"core meaning"是否可以在文本中找到,即使它是一个巨大的文本。

在python中有一个RapidFuzz库。用c++编写,处理大数据的速度更快。

有很多配置,你可以找到最适合你的。

下面是

的用法一个例子,你可以提取最相似的查询,也可以用许多处理器来做。不需要通过self实现

rapidfuzz.process.extract(query, choices, *, scorer=<cyfunction WRatio>, processor=<cyfunction default_process>, limit=5, score_cutoff=None, score_hint=None, **kwargs)

相关内容

最新更新