LDA分类器
1.1分类器主要研究内容
(1)分类器的原理和算法流程;
(2)利用现有的任一公开数据集(自己选取)实现分类器分类;
(3)并利用某种评价标准 对分类结果进行分析评判;
(4)原理:利用LDA分类器,将数据在低维度进行投影,并希望每一种类别数据的投影点尽可能的接近,而不同类别的数据的类别中心之间的距离尽可能的大;
(5)本人主要负责组内代码编写及实现的任务,对鸢尾花数据集进行了LDA算法,然后使用LDA方法分析处理了二分类和多分类问题。
1.2 LDA分类器研究的工作基础或实验条件
(1)手动推演:通过手动推演实现算法流程,并计算出分类结果。
(2)软件环境:通过python来实现算法流程来验证手动推演结果,并且画出分类结果图。
1.3 设计思想
输入:数据集其中任意样本Xi为n维向量,降维到的维度是d。
输出:降维后的数据集。
(1)计算类内散度矩阵Sw
(2)计算类间散度矩阵Sb
(3)计算矩阵
(4)求出第三步的矩阵的特征值和特征向量,按从小到大的顺序选择前d个特征值和对应的特征向量,从而求得投影矩阵W
(5)对样本集中的每一个样本特征xi,转化为新的样本
(6)最后得出输出样本集
1.4 流程图
1.5 主要程序代码
import numpy as np
import matplotlib.pyplot as plt
from sklearn import datasets
def LDA(X, y):
# 根据y等于0或1分类
X1 = np.array([X[i] for i in range(