使用hdbscanapproximate_predict对图像进行分类

时间:2019-09-10 20:04:42

标签: python-3.x multilabel-classification hdbscan

我正在尝试使用hdbscan的roximate_predict功能基于与从相似图像数据来源获得的聚类的相似性,对图像进行逐点分类。 我要聚类的数据称为X_low

我想知道我的方法是否有意义。是否可以使用这种方法基于聚类模型进行分类?

我知道本教程说: 请注意,approximate_predict()采用了一系列新点。如果只有一点,请确保将其包装在列表中。

但是我没有明白这一点,我的数据似乎在列表中,但是仍然抛出错误。

 import hdbscan

    cluster_umap = hdbscan.HDBSCAN( min_samples=5,min_cluster_size=50,    gen_min_span_tree=True, prediction_data=True)
    clusterer = cluster_umap.fit(X_low)

#My data to be classified is simply called: data
    data.shape
Out[39]: (2601, 1501)

    result_image_centers = np.zeros_like(data)

    nx = data.shape[0]
    ny = data.shape[1]
    step = 1

    for i in range(0,data.shape[0],step):
         for j in range(0,data.shape[1],step):        
            class_id, strengths=hdbscan.approximate_predict(clusterer, data[i,j])
            result_image_centers[i,j]=class_id

尽管它仍然抛出一个错误:

File "/home/flavio/.local/lib/python3.6/site-packages/hdbscan/prediction.py", line 380, in approximate_predict
    if points_to_predict.shape[1] != \

IndexError: tuple index out of range

0 个答案:

没有答案