图解机器学习第十七章监督降维——Fisher判别分析

n=100;
x=randn(n,2);
x(1:n/2,1)=x(1:n/2,1)-4;
x(n/2+1:end,1)=x(n/2+1:end,1)+4;
x=x-repmat(mean(x),[n,1]);
y=[ones(n/2,1);2*ones(n/2,1)];

m1=mean(x(y==1,:));
x1=x(y==1,:)-repmat(m1,[n/2,1]);
m2=mean(x(y==2,:));
x2=x(y==2,:)-repmat(m2,[n/2,1]);
[t,v]=eigs(n/2*m1'*m1+n/2*m2'*m2,x1'*x1+x2'*x2,1);

figure(1);
clf;
hold on;
axis([-8 8 -6 6]);
plot(x(y==1,1),x(y==1,2),'bo');
plot(x(y==2,1),x(y==2,2),'rx');
plot(99*[-t(1) t(1)],99*[-t(2) t(2)],'k-');
n 是样本的数量,这里设置为100。
x 是一个 (n,2) 的矩阵,其中的元素是从标准正态分布中随机生成的。前一半样本的第一列减去4,后一半样本的第一列加上4,以在水平方向上分开两类数据。然后,每个样本都减去 x 矩阵的均值。
y 是一个 (n,1) 的向量,表示样本的类别标签。前一半样本标记为1,后一半样本标记为2。
m1 是类别1样本的均值向量。
x1 是类别1样本减去均值向量后的矩阵。
m2 是类别2样本的均值向量。
x2 是类别2样本减去均值向量后的矩阵。
t 是最优方向向量,用于将样本投影到一维子空间上。它是通过求解广义特征值问题得到的,其中投影方向最大化了两个类别之间的类间差异,并最小化了同一类别内的类内差异。

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值