OPTICS 算法中的密度连通集
Density-connected sets in OPTICS algorithm
我对 OPTICS 算法感到困惑。如果一组点是密度连接的,则可以将它们视为一个簇。如果存在对象 o 使得 p 和 q 从 o wrt epsilon 和 MinPts 密度可达,则点 p 与点 q 密度连通。
在我的例子中(epsilon=5,minPts=2,L1-norm=Manhattan 距离)H 是一个核心点,因为它在它的 epsilon 距离中有超过 2 个点。 H从G到G是密度可达的,因为它们共享E。H和S也是如此,因为它们共享T。毕竟E,T,S和G在H的epsilon范围内。在我的opinion E, G, H, S, T 在同一个集群中。
如果我运行它与sklearn.optics
它给我图片的结果,其中H是一个噪声点。
为什么 E、G、H、S 和 T 不在同一个集群中?
from sklearn.cluster import OPTICS
import numpy as np
data = np.array([[3,2], [2,5], [2,7], [1,8], [2,9], [2,8], [3,9], [7,9], [6,2], [7,1], [7,3], [7,2], [8,3], [9,2], [8,2], [8,1], [10,10], [10,11], [11,10], [11,11] ])
clustering = OPTICS(min_samples=2, max_eps=5.0, metric='manhattan').fit(data)
print('labels:', clustering.labels_)
这给了我:
labels: [ 0 1 1 1 1 1 1 -1 0 0 0 0 0 0 0 0 2 2 2 2]
A B C D E F G H I J K L M N O P Q R S T
最后的聚类结果是基于xi-step的方法(OPTICS论文中的图19)而不是reachability的定义,实际上是DBSCAN中最终聚类的定义
在 xi-step 方法中,算法将可达性图中的谷或凸起检测为聚类。在可达性图中
H和S之间的可达距离比较高,这就是H被称为离群点的原因。
我对 OPTICS 算法感到困惑。如果一组点是密度连接的,则可以将它们视为一个簇。如果存在对象 o 使得 p 和 q 从 o wrt epsilon 和 MinPts 密度可达,则点 p 与点 q 密度连通。
在我的例子中(epsilon=5,minPts=2,L1-norm=Manhattan 距离)H 是一个核心点,因为它在它的 epsilon 距离中有超过 2 个点。 H从G到G是密度可达的,因为它们共享E。H和S也是如此,因为它们共享T。毕竟E,T,S和G在H的epsilon范围内。在我的opinion E, G, H, S, T 在同一个集群中。
如果我运行它与sklearn.optics
它给我图片的结果,其中H是一个噪声点。
为什么 E、G、H、S 和 T 不在同一个集群中?
from sklearn.cluster import OPTICS
import numpy as np
data = np.array([[3,2], [2,5], [2,7], [1,8], [2,9], [2,8], [3,9], [7,9], [6,2], [7,1], [7,3], [7,2], [8,3], [9,2], [8,2], [8,1], [10,10], [10,11], [11,10], [11,11] ])
clustering = OPTICS(min_samples=2, max_eps=5.0, metric='manhattan').fit(data)
print('labels:', clustering.labels_)
这给了我:
labels: [ 0 1 1 1 1 1 1 -1 0 0 0 0 0 0 0 0 2 2 2 2]
A B C D E F G H I J K L M N O P Q R S T
最后的聚类结果是基于xi-step的方法(OPTICS论文中的图19)而不是reachability的定义,实际上是DBSCAN中最终聚类的定义
在 xi-step 方法中,算法将可达性图中的谷或凸起检测为聚类。在可达性图中
H和S之间的可达距离比较高,这就是H被称为离群点的原因。