ZZX___ZY 2024-01-06 17:04 采纳率: 0%
浏览 12
已结题

ucr_dtw的输入输出?求解答!

在python中引用_ucrdtw.ucrdtw()方法,却不明白输入和输出的含义,网上能查询到的资料很少,求指点!
如何使用_ucrdtw.ucrdtw()方法对时间序列聚类?

  • 写回答

17条回答 默认 最新

  • 叫兽-郭老师 新星创作者: Java技术领域 2024-01-06 17:10
    关注
    获得0.60元问题酬金

    使用CSDN的C知道提供:

    _ucrdtw模块是针对不同长度的时序数据进行动态时间规整(DTW)比较的优化库。在时间序列分析中,DTW可以比较和评估两种不同长度的时间序列之间的相似性,对于动作识别、语音识别、环境识别等应用具有广泛的应用。 在Python中,使用_ucrdtw.ucrdtw()函数的基本格式如下:
    _ucrdtw.ucrdtw(N, Q, Q_len, cum, lb, bsf_er, warps)
    
    

    输入参数:

    N: 数据序列N,是一个一维数组。
    Q: 数据序列Q,是一个一维数组,这个方法会比较N和Q两个序列的相似程度。
    Q_len: 整数,Q序列的长度。
    cum: 累积成本矩阵,是一个Q_len长度的一维浮点型数组。
    lb: 对下确界的估计,是一个Q_len长度的一维浮点型数组。
    bsf_er:当前最佳的相似度的错误估计值。
    warps: 忽略前多少个点。在一些情况下,如果我们知道两个序列开头的几个点是没有匹配性的,那么我们可以设置跳过这些点。

    输出:

    dist: 两个序列之间的规整化欧氏距离,值越小,表示两个序列越相似。
    path: 对齐路径,表明了N序列和Q序列之间的匹配关系。

    使用_ucrdtw.ucrdtw()对时间序列进行聚类的基本步骤如下:

    首先,计算任意两个时间序列之间的距离。使用_ucrdtw.ucrdtw()函数可以计算任意两个序列之间的欧氏距离。
    然后,使用这个距离矩阵作为输入,用任何聚类算法对时间序列进行聚类。例如,我们可以使用scikit-learn包中提供的k-means算法对时间序列进行聚类。

    需要注意的是,该库现已被fastdtw库取代,fastdtw功能更加完善,并且有更丰富的文档,你可以考虑换用该库进行时间序列的动态时间规整计算。

    评论 编辑记录

报告相同问题?

问题事件

  • 系统已结题 1月14日
  • 创建了问题 1月6日