DBSCAN聚类(1)

最近项目中用到了DBSCAN聚类算法,对该算法的参数和使用进行了相应了解并以此记录

调用:

from sklearn.cluster import DBSCAN

python源码附的基本原理:

简单来说该算法是一种基于密度的空间聚类算法,可将小于距离阈值的样本划分为同一簇,对包含相似密度集群的样本和具有噪声的数据有较好的效果。

参数选择:

eps:聚类的半径,默认为0.5.  此参数用于指定对选取点的多长距离的半径做聚类操作。选取大了会导致聚类的结果类数很多,选取小了会导致聚类的结果类数很少。实际选取需根据数据情况。

min_samples:最小样本数,默认为5.该参数表示以取样点设定半径范围内满足多少样本数为一聚类(包含取样点本身),一般都是从较小值开始尝试。

推荐一个算法可视化网站,对具体的实现过程进行了详细的动画讲解

Visualizing DBSCAN Clustering

其余参数详解:

metric:控制计算距离的度量方法,默认为欧氏距离,可选参数如l1距离、曼哈顿距离等,可根据实际情况进行选择

metric_params:距离度量函数的其他关键字参数(如所选度量函数需要时选择)

algorithm:计算距离的算法算法的选择,可选参数如下。算法区别主要在于高低维数据的使用场景,默认auto可自动选择。

leaf_size:如果使用BallTree或ckDTree算法时选择,用于指定叶子节点的大小,默认为30

p:用于使用曼哈顿距离时指定p值,默认为2(即欧几里得距离)

n_jobs:表示并行的工作数,默认为1,为在主流程下,可设置为-1,表示所有的processors可用

实际使用中需根据使用需求合理的设置相关参数,并进行相关参数的调优。

算法评估算法可分为类间评估和类外评估 ,区别在于是否能够得到数据对应的标签

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值