基于 MATLAB 的 Fisher 分类手写数字识别
手写数字识别是计算机视觉领域的一个重要问题,在数字分类、自然语言处理和人工智能等领域中都有广泛应用。本文介绍了一种基于 MATLAB 的 Fisher 分类方法来识别手写数字的实现。
-
数据集准备
我们使用 MNIST 数据集,该数据集包含 60000 个训练样本和 10000 个测试样本,每个样本大小为 28x28 像素。我们将每幅图像展开成一个 784 维的向量,然后标准化处理,保证每个特征均值为 0,方差为 1。 -
Fisher 线性判别分析
Fisher 线性判别分析(FLD)是一种经典的线性分类方法。FLD 旨在通过寻找最佳投影轴来将训练数据映射到低维空间。为了将数据投影到一条直线上,FLD 最大化类间离散度,同时最小化类内离散度。
MATLAB 中提供了 classify
函数实现了 FLD 分类器。首先使用训练集进行分类器建模:“
% load data
load('mnist.mat'