返回介绍

数学基础

统计学习

深度学习

工具

Scala

二、DBSCAN

发布于 2023-07-17 23:38:23 字数 3039 浏览 0 评论 0 收藏 0

  1. DBSCANscikit-learn提供的一种密度聚类模型。其原型为:

    
    
    xxxxxxxxxx
    class sklearn.cluster.DBSCAN(eps=0.5, min_samples=5, metric='euclidean', metric_params=None, algorithm='auto', leaf_size=30, p=None, n_jobs=None)
    • eps: $ MathJax-Element-12 $ 参数,用于确定邻域大小。

    • min_samples: $ MathJax-Element-16 $ 参数,用于判断核心对象。

    • metric:一个字符串或者可调用对象,用于计算距离。

      如果是字符串,则必须是metrics.pairwise.calculate_distance中指定的。

    • metric_params:一个字典,当metric 为可调用对象时,为metric 提供关键字参数。

    • algorithm:一个字符串,用于计算两点间距离并找出最近邻的点。可以为:

      • 'auto':由算法自动选取合适的算法。
      • 'ball_tree':用ball树来搜索。
      • 'kd_tree':用kd树来搜索。
      • 'brute':暴力搜索。
    • leaf_size:一个整数,用于指定当algorithm=ball_tree或者kd_tree时,树的叶结点大小。

      该参数会影响构建树、搜索最近邻的速度,同时影响存储树的内存。

    • p:一个浮点数,指定闵可夫斯基距离的 $ MathJax-Element-7 $ 值。

    • n_jobs:指定并行度。

  2. 属性:

    • core_sample_indices_:一个形状为[n_core_samples,] 的数组,给出了核心样本在原始训练集中的位置。

    • components_:一个形状为[n_core_samples,n_features] 的数组,给出了核心样本的一份拷贝

    • labels_:一个形状为[n_samples,] 的数组,给出了每个样本所属的簇标记。

      对于噪音样本,其簇标记为 -1。

  3. 方法:

    • fit(X[, y, sample_weight]):训练模型。
    • fit_predict(X[, y, sample_weight]):训练模型并执行聚类,返回每个样本所属的簇标记。
  4. 考察 $ MathJax-Element-12 $ 参数的影响:

    • ARI指数随着 $ MathJax-Element-12 $ 的增长,先上升后保持平稳最后断崖下降。

      断崖下降是因为产生的训练样本的间距比较小,最远的两个样本点之间的距离不超过 30。当 $ MathJax-Element-12 $ 过大时,所有的点都在一个邻域中。

    • 核心样本数量随着 $ MathJax-Element-12 $ 的增长而上升。

      这是因为随着 $ MathJax-Element-12 $ 的增长,样本点的邻域在扩展,则样本点邻域内的样本会更多,这就产生了更多满足条件的核心样本点。

      但是样本集中的样本数量有限,因此核心样本点数量的增长到一定数目后稳定。

    DBSCAN_epsilon

  5. 考察 $ MathJax-Element-16 $ 参数的影响:

    • ARI指数随着 $ MathJax-Element-16 $ 的增长,平稳的下降。

    • 核心样本数量随着 $ MathJax-Element-16 $ 的增长基本上线性下降。

      这是因为随着 $ MathJax-Element-16 $ 的增长,样本点的邻域中必须包含更多的样本才能使它成为一个核心样本点。因此产生的核心样本点越来越少。

    DBSCAN_min_samples

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文