精华内容
下载资源
问答
  • Vague集是Fuzzy集的扩展,在给出几种构造Vague集相似矩阵方法的基础上,将Fuzzy集上的编网法和最大树法引入到Vague集上,定义了Vague关系图,并给出了基于Vague集的直接聚类法:编网法和最大树法。最后使用文献[1]中...
  • 使用C#和arcengine,结合直接聚类法,根据地图上的点之间的距离对点进行聚类,并可以让用户自定义聚类的级别
  • 直接聚类法

    千次阅读 2014-04-05 02:35:35
    直接聚类法的基本原理是先把各个分类对象单独视为一类,然后根据距离最小的原则,依次选出一对分类对象,并成新类。如果其中一个分类对象已归于一类,则把另一个也归入该类;如果一对分类对象正好属于已归的两类,则...

    1.引言
    直接聚类法的基本原理是先把各个分类对象单独视为一类,然后根据距离最小的原则,依次选出一对分类对象,并成新类。如果其中一个分类对象已归于一类,则把另一个也归入该类;如果一对分类对象正好属于已归的两类,则把这两类并为一类。每一次归并,都划去该对象所在的列与列序相同的行。经过m1次就可以把全部分类对象归为一类,这样就可以根据归并的先后顺序作出聚类谱系图。直接聚类法由于简单易行且准确率较高被广泛应用于社会生活各个方面的有关分析。
    Java是一门面向对象的,跨平台的语言,由于其强大的生命力而被广泛应用于编程的各个方面。本文的直接聚类法将基于java语言开发,运行环境是JDK1.6.10版本。
    本文将探讨直接聚类法的基本思想和实现步骤,并给出每一步骤的java代码实现。最后通过一个城镇居民消费结构的差异化分析来展示该方法的应用。
    2.直接聚类法的步骤及相应的java代码
    直接聚类法的基本原理在引言中已经给出,可以看出,其思想还是比较简单的。下面将详细介绍直接聚类法的实施步骤。关于聚类要素的数据处理和样本之间距离的计算有多种方法,本文的java代码实现仅选择其中的一种来实现,因此在相应的步骤中将会详细介绍java代码实现的处理方法,对于其他方法则点到为止。
    假设有m 个聚类的对象,每一个聚类对象都有n个要素构成。则 表示第i个样本的第j个要素所对应的数值,以下的 均表此含义。
    2.1聚类要素的数据处理
    在聚类分析中,聚类要素的选择是十分重要的,它直接影响分类结果的准确性和可靠性。
    在实际应用中,被聚类的对象常常是多个要素构成的。不同要素的数据往往具有不同的单位和量纲,其数值的变异可能是很大的,这就会对分类结果产生影响。因此当分类要素的对象确定之后,在进行聚类分析之前,首先要对聚类要素进行数据处理。
    数据处理的方法有很多种,主要包括总和标准化,标准差标准化,极大值标准化和极差标准化。本文的java代码实现采用极差标准化的方法。
    极差标准化的计算公式如下所示:

    (i=1,2,3,…m, j=1,2,…n)
    聚类要素数据处理的java代码实现:
    // 采用极差标准化方法将原始数据标准化,使得所有的数据均转化为01之间的数值。
    public double[][] getNormalization(double[][] data) {
    for (int i = 0; i < column; i++) { // i代表列
    double max = data[0][i];
    double min = data[0][i];
    for (int j = 0; j < row; j++) { // j代表行
    if (max < data[j][i]) {
    max = data[j][i];
    }
    if (min > data[j][i]) {
    min = data[j][i];
    }
    }
    double s = max min;
    for (int j = 0; j < row; j++) {
    normalization[j][i] = (data[j][i] min) / s;
    }
    }
    for (int i = 0; i < normalization.length; i++) {
    for (int j = 0; j < normalization[i].length; j++) {
    System.out.print(myformat.format(normalization[i][j]) + " ");
    }
    System.out.println();
    }
    return normalization;
    }
    2.2各样本间距离的计算
    距离是用来测量两个样本之间差异度的指标。距离的计算方法主要有以下几种:绝对值距离,欧氏距离 ,明科夫斯基距离 ,切比雪夫距离。本文的java代码实现采用绝对值距离来计算各个样本之间的距离。

    (i,j=1,2,3,…m)

    // 用绝对值距离的方法获取初始各对象之间的距离
    public double[][] getDistance(double normalization[][]) {
    for (int i = 0; i < row; i++) { // i代表diatance的行
    for (int j = 0; j < row; j++) { // i代表distance的列
    distance[i][j] = 0;
    for (int k = 0; k < column; k++) { // k代表normalization的列
    distance[i][j] += Math.abs(normalization[i][k]
    normalization[j][k]);
    }
    System.out.print(myformat.format(distance[i][j]) + " ");
    }
    System.out.println();
    }
    return distance;
    }
    2.3进行聚类
    先把各个分类对象单独视为一类,然后根据距离最小的原则,依次选出一对分类对象,并成新类。每一次归并,都划去两个对象中序号较大者所在的列与列序相同的行。经过m1次就可以把全部分类对象归为一类,这样就可以根据归并的先后顺序作出聚类谱系图。

    // 按照谱系聚类法进行聚类
    public void cluster(double[][] distance) {
    int number=distance.length;
    double rate[] = new double[number1]; // 从小到大顺序存储对象之间的距离
    int entity[][] = new int[number1][2];// 每两个对象化为一类,共number1类int drop[] = new int[number1]; // 每次聚类之后距离矩阵中划掉的行(列)数
    drop[0] = number;
    int row = number; // 距离矩阵的行数,初始值为number.

    for (int i = 0; i < 8; i++) {

    /**
    * tRow和tCloumn作为中间变量来存储距离矩阵中最小值所在的行和列
    */
    int tRow = 0;
    int tColumn = 0;
    double min = number+1;
    for (int j = 0; j < row; j++) { // i代表diatance的行
    for (int k = 0; k < j; k++) { // i代表distance的列
    if (distance[j][k] < min) {
    min = distance[j][k];
    tRow = j;
    tColumn = k;
    }
    }
    }
    rate[i] = min;
    entity[i][0] = tRow;
    entity[i][1] = tColumn;
    /**
    * 通过循环将对象还原为在初始距离矩阵中的位置
    */
    if (i > 0) {
    for (int j = i1; !(j <0); j) {
    if (!(entity[i][0] < drop[j]))
    entity[i][0] += 1;
    if (!(entity[i][1] < drop[j]))
    entity[i][1] += 1;
    }
    }
    /**
    * 使输出结果符合我们的思维习惯,从1开始,而不是从0开始
    */
    entity[i][0] += 1;
    entity[i][1] += 1;
    System.out.println(myformat.format(rate[i]) + " " + entity[i][0]
    + " " + entity[i][1]);

    drop[i] = tRow;
    if (row > 1) {
    row = 1;
    }
    /**
    * 距离矩阵在划掉一行一列之后如何形成新的降阶矩阵
    */
    if (drop[i] != row) {
    for (int m = 0; m < drop[i]; m++) {
    for (int n = drop[i]; n < row; n++) {
    distance[m][n] = distance[m][n + 1];
    }
    }
    for (int m = drop[i]; m < row; m++) {
    for (int n = 0; n < drop[i]; n++) {
    distance[m][n] = distance[m + 1][n];
    }
    }
    for (int m = drop[i]; m < row; m++) {
    for (int n = drop[i]; n < row; n++) {
    distance[m][n] = distance[m + 1][n + 1];
    }
    }
    }
    }
    }

    至此,我们完成了直接聚类算法的java代码实现。
    3.用直接聚类法分析2011年中国城镇居民的消费结构差异
    消费结构是在一定的社会经济条件下,人们(包括各种不同类型的消费者和社会集团)在消费过程中所消费的各种不同类型的消费资料(包括劳务)的比例关系。按照中华人民共和国统计局统计口径,构成城镇居民消费性支出的项目有:食品、衣着、家庭设备用品及服务、医疗保健、交通和通信、教育文化娱乐服务、居住、杂项商品和服务,以上构成城镇居民消费性支出的八个项目即为所选指标。
    以下数据来源于2011年中国统计年鉴,得到2011年的统计数据。

    2011年各地区城镇居民家庭平均每人全年消费性支出 (单位:元)
    地区食品衣着家庭设备用品及服务医疗保健交通和通信教育文化娱乐服务居住杂项商品和服务
    北京4560.521442.42977.471322.362173.262514.761212.89621.74
    天津3680.22864.89634.391049.331092.871452.171368.20405.99
    河北2492.26849.58460.27737.43875.43827.72864.92235.88
    山西2252.501016.69441.82589.97825.181007.92830.38206.48
    内蒙古2323.551168.93464.55555.00928.481052.65802.26371.19
    辽宁3102.13846.91362.10767.13797.64853.92909.42348.23
    吉林2457.21907.61318.65671.44815.02890.22984.95307.56
    黑龙江2215.68971.44319.37634.30665.01843.94755.32250.37
    上海5248.951026.87877.59762.922332.832431.741435.72645.13
    江苏3462.66886.82647.52600.691203.451467.36997.53362.56
    浙江4393.401383.63615.45852.272492.011946.151229.25436.37
    安徽3091.28869.55336.99441.42788.25869.23694.17203.83
    福建3854.26784.71525.65513.611232.701321.331233.49341.96
    江西2636.93725.72451.32357.03600.16894.58742.93236.87
    山东2711.651091.22526.29624.061175.571201.97838.17299.48
    河南2215.32919.31431.02520.57762.08847.12737.00252.76
    湖北2868.39877.01401.22517.19763.14997.74752.56220.08
    湖南2850.94868.23513.63632.52965.091182.18871.70285.00
    广东4503.86719.26633.03707.862394.661813.861254.69405.00
    广西2857.40477.67360.62401.06785.01850.90826.86232.43
    海南3097.71375.42405.81369.331154.87791.24743.60188.80
    重庆3415.921038.98615.74705.72976.021449.49954.56242.26
    四川2838.22754.93505.83449.871009.35976.33728.43261.85
    贵州2649.02832.74446.53329.77775.07938.37627.23249.66
    云南3102.46745.08335.14600.081076.93754.69585.35180.07
    西藏3107.90734.83211.10221.70694.21359.34612.67250.82
    陕西2588.91768.47478.58612.30824.461280.14746.59253.84
    甘肃2408.37854.00403.80562.74703.071034.42716.35291.46
    青海2366.42724.96420.31542.93753.07793.72653.04275.66
    宁夏2444.98874.39480.70578.75774.57846.72890.97314.49
    新疆2386.97953.03364.11472.35765.72819.72698.66269.45
    数据来源:《中国统计年鉴2011》

    应用上述java代码实现方法来处理该组数据,得到的分析结果如下:
    聚类次数差异度省份省份
    10.31新疆河南
    20.38河南黑龙江
    30.41湖北安徽
    40.41贵州江西
    50.42青海甘肃
    60.47湖南山东
    70.47宁夏河北
    80.56陕西四川
    90.57四川江西
    100.59甘肃黑龙江
    110.6黑龙江山西
    120.61山西河北
    130.62吉林辽宁
    140.65云南安徽
    150.68海南广西
    160.69广西江西
    170.71辽宁河北
    180.73重庆江苏
    190.74山东内蒙古
    200.75江西安徽
    210.87福建江苏
    220.98西藏安徽
    230.98安徽河北
    241.02内蒙古河北
    251.02广东浙江
    261.11江苏天津
    271.69上海北京
    281.86浙江北京
    292.28河北天津
    303.24天津北京

    通过上面的分析,我们可以看出聚类的结果和实际情况是相似的,这就验证了此算法的可行性。由于篇幅所限,中间处理结果,如分类要素的数据处理和各样本之间的距离等我们略去了。
    直接聚类算法由于简单易行,我们可以用它来解决生活中的很多问题,对样本进行聚类,总结各类之间的异同,对于我们更好地做出决策起到辅助作用。
    4.后续研究工作
    此文仅仅是谱系聚类算法中最简单的直接聚类法的java代码实现,后续还有很多工作要做,主要的方向为:
    实现数据要素初始化和样本之间距离计算的其他方法。
    加入类间距离的计算和应用。
    在数据量很大的时候,如何优化算法,提高效率是否可以借鉴排序技术中二分法的思想来处理,这个问题还有待进一步研究。
    5.参考文献
    [1] 高惠璇.应用多元统计分析[M].北京:北京大学出版社,2011.1
    [2]何晓群.多元统计分析[M].北京:中国人民大学出版社,2004
    [3]国家统计局.中国统计年鉴[M].北京:中国统计出版社.
    [4]张文新 信息资源管理课程讲义(内部资料)

    展开全文
  • 第三章 直接聚类法

    2019-02-15 22:08:23
    第三章 直接聚类法 References References [4] A Tutorial on Clustering Algorithms. http://home.deib.polimi.it/matteucc/Clustering/tutorial_html/ [5] https://en.wikipedia.org/wiki/DBSCAN [6] 基于网格...

    第三章 直接聚类法

    References

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    References

    [4] A Tutorial on Clustering Algorithms. http://home.deib.polimi.it/matteucc/Clustering/tutorial_html/
    [5] https://en.wikipedia.org/wiki/DBSCAN
    [6] 基于网格的高效 DBSCAN 算法
    [8] A Density-Based Algorithm for Discovering Clusters in Large Spatial Databases with Noise
    [9] OPTICS: Ordering Points to Identify the Clustering Structure
    [10] 改进的 OPTICS 算法及其在文本聚类中的应用
    [12] 分类属性数据聚类算法研究
    https://blog.csdn.net/itplus/

    展开全文
  • 聚类分析是研究多要素事物分类问题的数量方法。基本原理是根据样本自身的属性,用数学方法按照某种相似性或差异性指标,定量地确定样本之间的亲疏关系,...常见的聚类分析方法有系统聚类法、动态聚类法和模糊聚类法等。
  • 聚类算法初探(三)直接聚类法

    万次阅读 2013-08-20 00:57:45
    最近由于工作需要,对聚类算法做了一些相关的调研。现将搜集到的资料和自己对算法的一些理解整理如下,供大家参考。 另外在算法代码方面,我也...第三章 直接聚类法 第四章 K-means  第五章 DBSCAN 第六章 OPTICS

    第一章  引言

    第二章  预备知识

    第三章  直接聚类法

    第四章  K-means

    第五章  DBSCAN

    第六章  OPTICS

    第七章 聚类分析的效果评测

    第八章 数据尺度化问题

    发表在 Science 上的一种新聚类算法





    作者: peghoty 

    出处: http://blog.csdn.net/itplus/article/details/10088283 

    欢迎转载/分享, 但请务必声明文章出处.

    展开全文
  • 直接聚类法的代码实现

    千次阅读 2016-12-31 16:51:53
    作者: peghoty  出处: ... ...上面的图片大致介绍了直接聚类法的基本原理,但是没有给出实现代码,我这里给出一份吧.使用python语言实现: """ 目标: ~~~~~~~~~~~

    作者: peghoty 

    出处: http://blog.csdn.net/itplus/article/details/10088283 






    原来的作者大致介绍了直接聚类法的基本原理,但是没有给出具体的实现代码,我这里测试了一下这种算法,所以实现了一份.代码使用python,按照图中的例子测试了一下,测试通过,算了,没什么难的,文章就标记为转载吧:

    """
        目标:
        ~~~~~~~~~~~
        实现直接聚类算法.
    """
    import numpy as np
    
    #================辅助函数==================#
    def get_idx(idx):
        ''' 获得下标 '''
        x = idx[0][0]
        y = idx[1][0]
        if y > x:
            temp = y
            y = x
            x = temp
        return x, y
    #=================一些约定=================#
    # 叶子节点是这样的. --> ['leaf', label]
    # 中心节点是这样的. --> ['cluster', distance, [left tree], [right tree]] distance代表左子树和右子树的距离
    
    def get_type(node):
        ''' 获取叶子节点的类型 '''
        return node[0]
    
    def get_label(node):
        ''' 获取叶子节点的label '''
        assert(get_type(node) == 'leaf')
        return node[1]
    
    def get_left(node):
        ''' 获取左子树 '''
        assert(get_type(node) == 'cluster')
        return node[2]
    
    def get_right(node):
        ''' 获取右子树 '''
        assert(get_type(node) == 'cluster')
        return node[3]
    
    def get_distance(node):
        ''' 获取距离值 '''
        assert(get_type(node) == 'cluster')
        return node[1]
    
    
    def make_leaf(label):
        ''' 构建叶子节点 '''
        return ['leaf', label]
    
    def make_cluster(distance, left, right):
        ''' 构建中心节点 '''
        return ['cluster', distance, left, right]
    
    #=================直接聚类=================#
    
    def get_leaf_labels(node):
        ''' 获取标签的值 '''
        # 从node节点出发,遍历叶子节点
        node_type = get_type(node)
        if node_type == 'leaf':
            return [get_label(node)]
        elif node_type == 'cluster':
            labels = get_leaf_labels(get_left(node))
            labels.extend(get_leaf_labels(get_right(node)))
            return labels
    
    def get_classify(distance, node):
        ''' 获得分类的数据 '''
        node_type = get_type(node)
        if node_type == 'leaf':
            return [[get_label(node)]]
        elif node_type == 'cluster' and get_distance(node) < distance: # 要开始分类了
            return [get_leaf_labels(node)]
        else:
            llabels = get_classify(distance, get_left(node))
            rlabels = get_classify(distance, get_right(node))
            llabels.extend(rlabels)
            return llabels
    
    def direct_cluster(simi_matrix):
        ''' 直接聚类法 '''
        # 为了尽量简单,我只用list来构建树
        N = len(simi_matrix) # 得到矩阵对应的点的数目
        nodes = [make_leaf(label) for label in range(N)] # 构建一堆叶子节点
        np.fill_diagonal(simi_matrix, float('Inf')) # 先用最大值填充对角线
        root = 0 # 用于记录根节点的下标
        while N > 1:
            # 然后视图寻找相似度矩阵中最小的那个数的下标
            idx = np.where(simi_matrix == simi_matrix.min())
            x, y = get_idx(idx) # 得到下标值==> x 和 y 进行了合并
            distance = simi_matrix[x][y] # 得到两者的距离
            cluster = make_cluster(distance, nodes[x], nodes[y])
            nodes[y] = cluster # 更新
            root = y # 更新下标值
            # 删除x行, y列的元素
            simi_matrix[x] = float('Inf')
            simi_matrix[:, x] = float('Inf')
            N = N - 1
        return nodes[root]
    
    
    def test01():
        ''' 测试程序是否写得正确 '''
        simi_matrix = np.loadtxt(fname='matrix.txt')
        simi_matrix = simi_matrix + simi_matrix.T
        tree = direct_cluster(simi_matrix)
        print(tree)
        print(get_classify(4.0, tree))
    
    def test02():
        ''' 第二个测试函数 '''
        simi_matrix = np.array([[0, 1, 2],
                                [1, 0, 3],
                                [2, 3, 0]], dtype='float')
        tree = direct_cluster(simi_matrix)
        print(tree)
        print(get_classify(4.0, tree))
    
    
    if __name__ == '__main__':
        ''' 实际地要来跑一下简单的图像分类 '''
        test01()
    
    """
        在测试里面通过了.
    """
    
    
    
    

    当然,那个matrix.txt文件如下:

    0	0	0	0	0	0	0	0	0
    1.5	0	0	0	0	0	0	0	0
    3.1	2.7	0	0	0	0	0	0	0
    2.1	1.4	1.2	0	0	0	0	0	0
    5.8	6.0	3.6	4.7	0	0	0	0	0
    4.7	4.4	1.8	2.9	1.7	0	0	0	0
    5.7	5.5	2.9	4.0	0.8	1.0	0	0	0
    1.3	0.9	2.2	1.2	5.1	3.9	5.0	0	0
    2.6	1.6	1.2	0.5	4.8	3.0	3.3	1.4	0
    实现还是比较简单的,怎么说呢,这个算法只能说效果还行吧,毕竟仁者见仁智者见智.

    展开全文
  • 动态模糊聚类算法

    2016-12-15 15:16:24
    本资源通过matlab编写的动态模糊聚类算法,并且包含形成模糊矩阵的不同方法,最后形成直观的动态聚类图,结果十分直观,对理解模糊算法及动态聚类有相当大的帮助。
  • 动态聚类法

    2021-10-27 21:13:44
    目录动态聚类法一、K—均值算法(K-means)1.1 条件及约定1.2 基本思想:1.3 基于使聚类准则函数最小化准则函数聚类准则1.4 算法步骤1.5 讨 论1.6 例题 动态聚类法 两种常用算法: K-均值算法(K-means算法) 迭代自...
  • 系统聚类法 1.基本思想 将模式样本按距离准则逐步分类,类别由多到少,直到获得合适的分类要求为止。 算法: 第一步:设初始模式样本共有N个,每个样本自成一类,即建立N类,。计算各类之间的距离(初始时即为...
  • 聚类分析是数据挖掘技术中的一种重要的方法,可以作为一个独立的工具来获得数据分布情况,它广泛地应用于模式识别、数据分析、图像处理、生物学、经济学等许多领域。 聚类分析方法是数理统计中研究“物以类聚”的一...
  • 聚类算法优缺点总结

    千次阅读 2020-07-01 23:57:12
    聚类算法优缺点总结 目录 K均值算法 二分K-均值算法 Min单链凝聚层次聚类 Max全链凝聚层次聚类 组平均凝聚层次聚类 Ward方法 质心方法 Lance-Williams公式 DBSCAN密度聚类 聚类算法分析的角度 数据具有大小很不同...
  •  系统聚类法则是系统自己根据数据之间的距离来自动列出类别,所以通过系统聚类法 得出一个树状图,至于聚类的类别 需要自己根据树状图以及经验来确定  (同上)在聚类分析中,我们常用的聚类方法有快速聚类(迭代聚类)...
  • k 均值聚类法 快速高效,特别是大量数据时,准确性高一些,但是需要你自己指定聚类的类别数量系统聚类法则是系统自己根据数据之间的距离来自动列出类别,所以通过系统聚类法 得出一个树状图,至于聚类的类别 需要自己根据...
  • 动态聚类算法合集

    2019-05-03 19:17:19
    包括主流的几种动态聚类算法:K-means,K-means的改进算法,DBSCAN算法等等,还有数据作图代码,代码详细明晰!适合想学习动态聚类算法的朋友!
  • 系统聚类法   1.基本思想 将模式样本按距离准则逐步分类,类别由多到少,直到获得合适的分类要求为止。 算法: 第一步:设初始模式样本共有N个,每个样本自成一类,即建立N类,。计算各类之间的距离...
  • 聚类算法(二)--层次聚类法

    千次阅读 2017-11-29 12:19:32
    本文主要介绍层次聚类法的基本原理、距离计算方法、算法的优缺点,以及R语言实战。
  • K-means聚类法 1.简介 ​ 用层次聚类法聚类时,随着聚类样本对象的增多,计算量会迅速增加,而且聚类结果-谱系图会十分复杂,不便于分析,特别是样品的个数很大(如n>=100)的时,层次聚类法的计算量会非常大,将...
  • 最大最小聚类代码

    2017-03-31 21:31:52
    模式识别聚类分析中的最大最小聚类方法,对给定的样本数据(7个),通过聚类分类,返回类别编号,代码有注释能直接运行主函数。
  • 能够直接在MATLAB中使用的程序代码,直接填入EXCLE数据,就可以使用
  • 模糊动态聚类之python实现

    千次阅读 2017-12-14 19:19:25
    模糊动态聚类主要用于非监督学习的聚类分析
  • 在变压器故障诊断中,针对样本中可能存在的孤立样本以及样本分布的不均匀性,导致神经网络整体性能下降,训练和测试效率降低的情况,设计了利用模糊聚类法对样本进行预先处理,然后再应用神经网络进行训练和测试的...
  • 所谓聚类,就是将相似的事物聚集在一 起,而将不相似的事物划分到不同的类别的过程,是数据分析之中十分重要的一种手段。比如古典生物学之中,人们通过物种的形貌特征将其分门别类,可以说就是 一种朴素的人工聚类...
  • 聚类分析

    2019-04-24 18:14:00
    聚类分析指将物理或抽象对象的集合分组为由类似的对象组成的多个类的分析过程。它是一种重要的人类行为。 聚类分析的目标就是在相似的基础上收集数据来分类。聚类源于很多领域,包括数学,计算机科学,统计学,生物...
  • 目录理论部分1.1 提出背景1.2...该聚类算法同样也是基于密度聚类的算法,与DBSCAN不同的是,该算法的设计使得其对初始超参数的设定敏感度较低。 1.2 OPTICS算法 1.2.1 基本概念 ·核心距离 一个对象ppp的核心距离定义为
  • K均值聚类算法 在看下面之前建议看大佬写的Kmeans聚类算法详解,个人觉得写的很详细,也比较容易理解,以下的都是在此基础上的一些个人感悟。 k均值聚类算法(k-means clustering algorithm)是一种迭代求解的聚类...
  • 聚类算法综述(6)

    千次阅读 2013-10-10 12:57:09
    原文地址:聚类算法综述(6)作者:hyman 3.1.3 基于密度的方法 绝大多数划分方法基于对象之间的距离进行聚类,这样的方法只能发现球状的类,而在发现任意形状的类上有困难。因此,出现了基于密度的聚类方法,...
  • 原始数据矩阵 X= 标准化矩阵 相似系数法 欧式距离 求分类对象的相似度 距离法 明氏距离 切比雪夫距离 模糊相似矩阵 R 1 主观评分法 传递闭包法 传递闭包法进行聚类求动态聚类图 布尔矩阵法 等价关系矩阵 直接聚类法 ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 23,133
精华内容 9,253
关键字:

直接聚类法