基于MOOC人工智能之模式识别的课程完成的第五次作业
MATLAB实现KNN算法(MNIST数据集)
MOOC地址:人工智能之模式识别
k-近邻分类器又称为 KNN 算法(K Nearest Neighbors Algorithm),它是指需要从训练集中找出待识别样本的 k 个最近邻,然后依据这 k 个最近邻分别所属的类别来决定应当把待识别样本划分到哪个类别中。
k-近邻分类器原理简单,无需对样本集进行回归分析或者概率分布统计,实现起来十分方便。
距离度量、k 值的选择及分类决策规则是 k 近邻算法的三个基本要素。
根据选择的距离度量(如曼哈顿距离或欧氏距离,Minkowski 明可夫斯基),可计算测试样本与训练集中的每个实例点的距离,根据 k 值选择 k 个最近邻点,最后根据分类决策规则将测试实例分类。
KNN.m 程序代码主要实现了数据集读入,KNN 分类器训练,测试及结果输出几个部分。数据集仍使用之前的MNIST数据集。
%knn.m
clc
clear variables
load ('../test_images.mat');
load ('../test_labels.mat');
load ('../train_images.mat');
load ('../trai