python - 如何为 Damerau-Levenshtein 距离选择合适的最大值?
问题描述
在我的相似性测量中,我正在使用此处提供的 Damerau-Levenshtein 代码。问题是,当我将 Damerau-Levenshtein 应用于两个字符串(例如cat sat on a mat
and dog sat mat
)时,我得到的编辑距离为 8。这种相似性结果可以得到关于插入、删除或替换的任何数字,例如从 0、1、2 到的任何范围。 ... 现在我想知道是否有任何方法可以假设或找到该距离(相似性)的最大值并在 0 和 1 之间转换,或者我们如何设置至少我可以说的最大值:distance =1 - similarity
.
这篇文章的原因是我为余弦、列文斯坦和 damerau 列文斯坦等一些距离度量设置了一个阈值,并且所有的输出都应该在 0 和 1 之间。
解决方案
Levenshtein Distance score = number of insertion + number of deletion + number of substitution.
所以最大值是数据集中最大长度字符串的 3 X(乘)。
推荐阅读
- android - Crashlytics 未在 Android 中显示一些崩溃
- amazon-web-services - API Gateway Lambda CORS handler. Getting Origin securely
- java - SparkContext:在 MapR 沙盒上初始化 SparkContext 时出错
- php - HTTPS 请求包含 HTTP 响应标头和混合内容警告 - 如何避免
- c++ - 计算宏函数中可变参数的数量
- python - 为 sam 应用程序在 template.yaml 中的 codeUri 中导入通用 python 文件
- php - 将数据传递给模式中的 Button href
- javascript - How to align the elements using flexbox?
- python-3.x - AudioSegment 和 BytesIO 模块给出“FileNotFoundError”
- mysql - NodeJS 到 Postman 结果