返回介绍

数学基础

统计学习

深度学习

工具

Scala

四、AgglomerativeClustering

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

  1. AgglomerativeClusteringscikit-learn提供的一种层次聚类模型。其原型为:

    
    
    xxxxxxxxxx
    class sklearn.cluster.AgglomerativeClustering(n_clusters=2, affinity='euclidean', memory=Memory(cachedir=None), connectivity=None, n_components=None, compute_full_tree='auto', linkage='ward', pooling_func=<function mean>)
    • n_clusters:一个整数,指定簇的数量。

    • connectivity:一个数组或者可调用对象或者为None,用于指定连接矩阵。它给出了每个样本的可连接样本。

    • affinity:一个字符串或者可调用对象,用于计算距离。可以为:'euclidean', 'l1', 'l2', 'manhattan', 'cosine', 'precomputed'

      如果linkage='ward',则 'affinity必须是 'euclidean'

    • memory:用于缓存输出的结果,默认为不缓存。如果给定一个字符串,则表示缓存目录的路径。

    • n_components:将在scikit-learn v 0.18中移除

    • compute_full_tree:通常当已经训练了n_clusters之后,训练过程就停止。

      但是如果compute_full_tree=True,则会继续训练从而生成一颗完整的树。

    • linkage:一个字符串,用于指定链接算法。

      • 'ward':采用方差恶化距离variance incress distance
      • 'complete':全链接complete-linkage算法,采用 $ MathJax-Element-17 $ 。
      • 'average':均链接average-linkage算法,采用 $ MathJax-Element-18 $ 。
      • 'single':单链接single-linkage算法,采用 $ MathJax-Element-19 $ 。
    • pooling_func:即将被废弃的接口。

  2. 属性:

    • labels_:一个形状为[n_samples,] 的数组,给出了每个样本的簇标记。
    • n_leaves_:一个整数,给出了分层树的叶结点数量。
    • n_components_:一个整数,给除了连接图中的连通分量的估计值。
    • children_:一个形状为[n_samples-1,2]数组,给出了每个非叶结点中的子节点数量。
  3. 方法:

    • fit(X[, y]):训练模型。
    • fit_predict(X[, y]):训练模型并执行聚类,返回每个样本所属的簇标记。

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

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

发布评论

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