【问题标题】:How to convert the geospatial distance of two points (lat, lon) to a similarity measuremnt如何将两点(纬度,经度)的地理空间距离转换为相似度测量
【发布时间】:2021-02-11 20:45:45
【问题描述】:

我正在尝试使用它们的纬度和经度来计算地球上两点之间的相似度。我已经通过 geopy 包中的 Vincenty 距离计算了它们的距离。我想将此距离转换为相似度测量值(理想范围为 0 到 1),使得相似度为 1 的较近点和相似度接近 0 的点彼此相距较远。有没有办法进行这种转换?这可以使转换从0到1平滑吗?谢谢!

【问题讨论】:

    标签: algorithm math distance latitude-longitude similarity


    【解决方案1】:

    一个简单的答案是定义极值,然后在它们之间进行线性插值。所以你会有

    • 如果dv == 0similarity = 1(相同点)
    • 如果dv == MAXsimilarity = 0(对映点;您可以取 20 000 000 m 作为 MAX 的近似值,或者使用确切的值,随心所欲)
    • 否则,similarity = (MAX - dv) / MAX

    除了线性之外,您还可以使用其他插值 - 但基本思想是:这比您想象的要容易。任何单调且连续的函数 f 使得 f(0) == 0 && f(1) == 1 将使 f((MAX - dv) / MAX) 与您的约束相匹配。

    【讨论】:

    • 我认为这种标准化的想法是有道理的。我可能高估了这个问题。谢谢。
    猜你喜欢
    • 1970-01-01
    • 2014-02-06
    • 1970-01-01
    • 2013-09-09
    • 1970-01-01
    • 1970-01-01
    • 2015-11-28
    • 2012-10-13
    • 1970-01-01
    相关资源
    最近更新 更多