我正在尝试确定两个术语之间的相似性;一个拼写正确,另一个可能包含也可能不包含拼写错误。
为此,我现在使用 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']
然后确定它们之间的相似度并计算平均相似度。
对于解决这个问题的潜在方法,我真的很感激任何其他建议。