Krield 2023-02-06 23:48 采纳率: 100%
浏览 30
已结题

kshape聚点最开头形状和该簇形状不符合

当数据集很小的时候,使用tslearn的kshape得到的簇的聚点最开头形状和该簇形状不符合是为什么啊?

比如同一簇开头是大幅上升的形状,但是通过ks.cluster_centers_[yi].ravel()画出来的聚点的开头是大幅下降的形状。
是我的代码有什么问题吗?
以及kshape中seed的设置有什么好的方法吗?不同seed出来的结果一致,但聚点和聚类效果不一样,怎么找到一个比较合适的seed。
求指教!

import numpy as np
from tslearn.clustering import KShape
from tslearn.preprocessing import TimeSeriesScalerMeanVariance

X = TimeSeriesScalerMeanVariance(mu=0.0, std=1.0).fit_transform(X)  # 标准化数据
ks = KShape(n_clusters=num_cluster, n_init=5, verbose=True, random_state=seed)
y_pred = ks.fit_predict(X)  # 训练模型
dists = ks._cross_dists(X)
np.fill_diagonal(dists, 0)
# ……  省略部分代码 
plt.plot(ks.cluster_centers_[yi].ravel(), "r-")  # 画聚点的代码

实际图不方便展示,手动画了个图,灰色为原始数据,红色为聚点。

img

  • 写回答

1条回答 默认 最新

  • 社区专家-Monster-XH 2023-02-07 11:33
    关注

    ''该回答引用ChatGPT''
    希望对你有帮助
    无法确定代码中的问题所在。可以考虑调整参数,如调整标准化方式、聚类数量等,也可以考虑使用其他的时间序列聚类算法进行比较。

    关于seed的设置,使用随机数种子可以使得训练结果具有可重复性,但对于寻找最佳seed值,没有统一的方法,可以通过不断调整seed的值,观察不同的训练结果,找到合适的种子。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 2月25日
  • 已采纳回答 2月17日
  • 创建了问题 2月6日

悬赏问题

  • ¥15 AT89C51控制8位八段数码管显示时钟。
  • ¥15 真我手机蓝牙传输进度消息被关闭了,怎么打开?(关键词-消息通知)
  • ¥15 下图接收小电路,谁知道原理
  • ¥15 装 pytorch 的时候出了好多问题,遇到这种情况怎么处理?
  • ¥20 IOS游览器某宝手机网页版自动立即购买JavaScript脚本
  • ¥15 手机接入宽带网线,如何释放宽带全部速度
  • ¥30 关于#r语言#的问题:如何对R语言中mfgarch包中构建的garch-midas模型进行样本内长期波动率预测和样本外长期波动率预测
  • ¥15 ETLCloud 处理json多层级问题
  • ¥15 matlab中使用gurobi时报错
  • ¥15 这个主板怎么能扩出一两个sata口