MaxMinDis.zip

  • sugar97
    了解作者
  • matlab
    开发工具
  • 1KB
    文件大小
  • zip
    文件格式
  • 0
    收藏次数
  • 1 积分
    下载积分
  • 0
    下载次数
  • 2021-04-19 11:38
    上传日期
最大最小距离法是模式识别中一种基于试探的类聚算法,它以欧式距离为基础,取尽可能远的对象作为聚类中心。因此可以避免K-means法初值选取时可能出现的聚类种子过于临近的情况,它不仅能智能确定初试聚类种子的个数,而且提高了划分初试数据集的效率。 该算法以欧氏距离为基础,首先初始一个样本对象作为第1个聚类中心,再选择一个与第1个聚类中心最远的样本作为第2个聚类中心,然后确定其他的聚类中心,直到无新的聚类中心产生。最后将样本按最小距离原则归入最近的类。
MaxMinDis.zip
  • MaxMinDisFun.m
    1.9KB
  • test.m
    144B
内容介绍
%%%%%%%%%%%%%%%%% %函数名称 MaxMinDisFun(x,Theta) %输入参数: % x : x为n*m的特征样本矩阵,每行为一个样本,每列为样本的特征 % Theta:即θ,可用试探法取一固定分数,如:1/2 %输出参数: % pattern:输出聚类分析后的样本类别 % centerIndex:聚类中心点 %函数功能 :利用最大最小距离算法聚类样本数据, %%%%%%%%%%%%%%%%%%%%% function [classes,centerIndex]=MaxMinDisFun(x,Theta) maxDistance=0; start=1; %初始选一个中心点 index=start;%相当于指针指示新中心点的位置 k=1; %中心点计数,也即是类别 dataNum=size(x,1); %输入的样本数 centerIndex=zeros(dataNum,1); %保存中心点 distance=zeros(dataNum,1); %表示所有样本到当前聚类中心的距离 minDistance=zeros(dataNum,1); %取较小距离 classes=zeros(dataNum,1); %表示类别 centerIndex(1)=index;%保存第一个聚类中心 classes(:)=k; %初始类别全为k %% for i=1:dataNum distance(i)=sqrt((x(i,:)-x(centerIndex(1),:))*(x(i,:)-x(centerIndex(1),:))');%欧氏距离,与第1个聚类中心的距离 classes(i)=k;%第1类 if(maxDistance<distance(i)) maxDistance=distance(i);%与第一个聚类中心的最大距离 index=i;%与第一个聚类中心距离最大的样本 end end %% minDistance=distance; % minDistance(index,1)=0; maxVal=maxDistance; while(maxVal>(maxDistance*Theta))%判断新的聚类中心是否满足条件 k=k+1; centerIndex(k)=index;%判断新的聚类中心是否满足条件,若满足则新增聚类中心 for i=1:dataNum distance(i)=sqrt((x(i,:)-x(centerIndex(k),:))*(x(i,:)-x(centerIndex(k),:))');%与第k个聚类中心的距离 if(minDistance(i)>distance(i)) minDistance(i)=distance(i); classes(i)=k;%按照当前最近临方式分类,哪个近就分哪个类别 end end %查找minDistance中最大值 maxVal=0; for i=1:dataNum if((maxVal<minDistance(i))) maxVal=minDistance(i); index=i; end end % centerIndex(k+1)=index;%新的聚类中心 aaa=0; end end
评论
    相关推荐
    • 最大最小距离聚类.rar
      用手肘法确定聚类数目,进行聚类,实现较好地聚类
    • KFCM均值聚类
      KFCM均值聚类
    • optics聚类算法
      optics是典型的多维聚类方法,在模式分类和机器学些中都有广泛的应用。
    • 模式识别最小最大聚类算法
      这是一个模式识别聚类的小程序,欢迎大家下载使用,很好用的,谢谢MMMMMMMMMMMMMMMM MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
    • 最大最小K-means聚类算法
      用C语言写的K-means聚类算法,有助于初学者的学习使用
    • c# 实现的最大最小距离方法对鸢尾花数据进行聚类
      自己刚完成的对鸢尾花数据进行聚类,和大家分享一下,具体的讲解都在README里面,大家可以看一下
    • 最大最小聚类代码
      模式识别聚类分析中的最大最小聚类方法,对给定的样本数据(7个),通过聚类分类,返回类别编号,代码有注释能直接运行主函数。
    • 聚类算法最大最小距离
      最大最小距离聚类算法 模式识别 聚类算法
    • 聚类.zip
      此次实现采取与上次最大最小距离聚类算法相同的方式:先寻找聚类中心,再根据最近邻原则分类,两种方式实现效果是相同的,同时又可以直接利用最大最小距离聚类算法中写好的classify()分类方法。 原文地址:...
    • matlabcnhelp.rar
      matlab中文帮助很难找的,快速下载