【发布时间】:2018-12-06 01:23:22
【问题描述】:
我正在尝试确定两个术语之间的相似性;一个拼写正确,另一个可能包含也可能不包含拼写错误。
为此,我现在使用 TFIDFvectorizer 对这两个术语进行矢量化,然后使用相似性方法来确定它们之间的相似性。
这适用于以下类型的示例:
Original term | Input term | Similarity
---------------------------------------
red car | red car | 1.0
red car | big red car | 0.75
但是,如果出现拼写错误,例如:
Original term | Input term | Similarity
------------------------------------------
red car | redd carr | 0.0
它给出了0 的相似性,即使它们是有些相似的术语(我不排除得到1.0 的相似性,但目标是得到相似性> 0.0。
我的一个考虑是将每个单词分解为 X 个字符,这样每个术语将是:
Original term = ['re', 'ed', 'd ', ' c', 'ca', 'ar']
Input term = ['re', 'ed', 'dd', 'd ', ' c', 'ca', 'ar', 'rr']
然后确定它们之间的相似度并计算平均相似度。
对于解决此问题的潜在方法,我非常感谢任何其他建议。
【问题讨论】:
标签: python vectorization spell-checking similarity tfidfvectorizer