• 大小: 10KB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2021-05-18
  • 语言: Matlab
  • 标签: Matlab  

资源简介

基于Matlab的机器学习WKNN,加权K近邻,含有数据包内含178个数据样本。 基于Matlab的机器学习WKNN,加权K近邻,含有数据包内含178个数据样本。 积分不够私信我

资源截图

代码片段和文件信息


%aklabel=AK(data1(1:100:)data1(101:end1:end-1)10)
function aklabel=AK(trainingtestingk)
[row column]=size(training);
[row1 column1]=size(testing);
%计算测试集与训练集的距离
distance=[];

        for i=1:row1
            distance(i:)=sum((repmat(testing(i:)row1)-training(:1:(column-1))).^2 2);
        end 
    
% 寻找最近邻
aklabel=[];
ak=[];

for i=1:row1
    [ab]=sort(distance(i:));
    %a--距离由小到大排列
    %b--a的下标
    xa=1./a(1:k); %xa---a的加权(倒数)
    c=(training(b(1:k)column));
    %c--距离最近的k个训练样本的标签
    for j=2:k
        for j1=1:j-1
           if(c(j1)==c(j))
            xa(j1)=xa(j1)+xa(j);
           end
       end
    end        
    [numindex]=max(xa);
    %num---出现最多的数,index---出现最多数的下标
  %  label(i)=training(b(index)column);
      aklabel(i)=c(index);
end

        









   
      

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     文件         912  2019-06-04 06:45  WKNN.m
     文件        9564  2019-04-28 13:39  data1.mat

评论

共有 条评论