【问题标题】:2D pattern matching in a noisy dataset嘈杂数据集中的二维模式匹配
【发布时间】:2018-03-29 01:31:52
【问题描述】:

我有一个 RFID 天线在两个人移动的 2D x,y 位置上给出的数据集。一个人携带 3 个 RFID 标签,而另一个人携带 4 个标签。两者都沿 y 轴移动,如下所示。红色和青色是路径,两个人在走。

x,y 比例的位置图如下所示。

理想情况下,橙色、黄色、蓝色和灰色线(RFID x,y 数据点)应位于正水平线上,而下方的绿色、深蓝色和天蓝色线应位于负水平线上。

问题 虽然线条不是直的,但出现了一种视觉模式,可以在零线上方聚集在一起,在零线下方聚集在一起。我的问题是可以使用什么算法/方法来比较这些模式并将它们聚集在一起。 (所以理想的答案应该是,4 行以上在一个集群中,3 行以下在另一个集群中。)

很难将其始终视为线性运动,因为人们可以以非线性方式行走。所以最佳拟合线不起作用。非常感谢任何建议或阴影。

【问题讨论】:

    标签: algorithm pattern-matching cluster-analysis


    【解决方案1】:

    您想查看对时间序列 (1d) 或轨迹 (2d) 进行聚类的方法。

    两者的方法几乎相同。首先,您要找到合适的距离度量(相异性度量),其次,您要确定合适的聚类算法。

    可能的距离指标

    以下是您可以使用的一些示例距离,每个距离都有一些简短的参数:

    • 欧几里得距离:非常基本
    • 动态时间环绕 (DTW):可以考虑班次
    • 最长公共子序列 (LCSS):考虑班次并可以处理异常值
    • 使用 Real Penalty (EDP) 编辑距离:考虑班次并可以处理异常值

    更多详情可以在this paper 中找到。距离的实现可以在here找到。

    可能的聚类算法

    您通常可以将任何距离度量与任何基于距离的聚类算法相结合。

    意见

    查看您的数据,我会尝试将 DTW 作为距离度量。如果您期望两个集群,那么 k=2 的 K-Means 应该可以工作。否则,您可以尝试单链接聚类,这将为您提供类似于下图的内容。

    【讨论】:

    • 感谢 SaiBot 提供了非常详细的回答。只是感到好奇,如果我不知道可能的簇数,这些聚类算法中的任何一个都可以动态获取簇数吗?例如,虽然我在图像中只绘制了两个集群,但实际上我不知道会有多少集群。
    • 对于K-Means,有一些方法可以estimate the parameter k for a dataset。在 DBScan 中,您不必设置集群的数量,但您还有其他参数,只要一个区域中有足够多的相似对象,基本上就可以让集群增长。单链接聚类或 OPTICS 等方法没有参数,可以帮助您直观地评估数据集并动态确定树状图中的截止点。总体而言,一个重要的话题可能不适合发表评论:-)
    猜你喜欢
    • 1970-01-01
    • 2010-12-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-10-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多