资源简介
最简单的模式识别分类器,最小邻域分类,分类速度快,小样本时识别率高,matlab版本。
代码片段和文件信息
function [rate class nError] = NearestClassify(TrainData TestDataclassLabelnClassesnSamplesPerkDim)
% 最小距离分类法
% TrainData 训练数据矩阵,(nClasses * nSamplesPer) * (Row * nDim)
% TestData 测试数据矩阵
% classLabel 类别标签
% nClasses 参与类别数
% nSamplesPer 每类样本数
% kDim 选取特征向量维数
tic;
disp(‘数据初始化...‘);
classLabel = classLabel‘;% 正确分类标签
Test_Number = nSamplesPer*nClasses;
Train_Number = nClasses;
m = 1;%每一类起始
n = nSamplesPer;%每一类的截止
meanTrainData = zeros(Train_Numbersize(TrainData2));%初始化训练数据的类内均值
disp(‘计算类内平均值...‘)
for i = 1:Train_Number
meanTrainData(i:) = mean(newTrainData(m:n:));
m = m + nSamplesPer;
n = n + nSamplesPer;
end
disp(‘最小距离分类过
评论
共有 条评论