Fisher判别分析详解

Fisher判别分析详解Fisher 判别分析将高维度空间的样本投影到低维空间上 使得投影后的样本数据在新的子空间上有最小的类内距离以及最大的类间距离 使得在该子空间上有最佳的可分离性可以看出右侧投影后具有更好的可分离性 Fisher 判别分析和 PCA 差别刚学完感觉两个很类似 实际上两个方法是从不同的角度来降维 PCA 是找到方差尽可能大的维度 使得信息尽可能都保存 不考虑样本的可分离性 不具备预测功能 LAD

Fisher判别分析

Fisher判别分析和PCA差别

刚学完感觉两个很类似,实际上两个方法是从不同的角度来降维。

在这里插入图片描述
PCA是找到方差尽可能大的维度,使得信息尽可能都保存,不考虑样本的可分离性,不具备预测功能。
LAD(线性判别分析) 是找到一个低维的空间,投影后,使得可分离性最佳,投影后可进行判别以及对新的样本进行预测。

Fisher判别详解

μ i \mu_i μi为第i类样本质心, N i N_i Ni为第i类的数量 μ i = 1 N i ∑ x ∈ X i x \mu_i=\frac{1}{N_i}\sum_{x\in X_i} x μi=Ni1xXix

  1. 最大的类间距离
    即要投影后两个样本的质心离得越远越好,那么就能得到
    J 0 = ( W T μ 1 − W T μ 0 ) 2 = ( W T ( μ 1 − μ 0 ) ) 2 = ( W T ( μ 1 − μ 0 ) ) ( W T ( μ 1 − μ 0 ) ) T = W T ( μ 1 − μ 0 ) ( μ 1 − μ 0 ) T W J_0=(W^T\mu_1-W^T\mu0)^2=(W^T(\mu_1-\mu0))^2=(W^T(\mu_1-\mu0))(W^T(\mu_1-\mu0))^T=W^T(\mu_1-\mu0)(\mu_1-\mu0)^TW J0=(WTμ1WTμ0)2=(WT(μ1μ0))2=(WT(μ1μ0))(WT(μ1μ0))T=WT(μ1μ0)(μ1μ0)TW
    S 0 = ( μ 1 − μ 0 ) ( μ 1 − μ 0 ) T S_0=(\mu_1-\mu0)(\mu_1-\mu0)^T S0=(μ1μ0)(μ1μ0)T ,那么 J 0 = W T S 0 W J_0=W^TS_0W J0=WTS0W


  2. 最小的类内距离
    即要使得投影后同一类的样本点尽可能聚拢在一起,离质心越近越好。
    J 1 = ∑ x ∈ X i ( W T x − W T u i ) 2 = ∑ x ∈ X i ( W T ( x − u i ) ) ( W T ( x − u i ) ) T = ∑ x ∈ X i W T ( x − u i ) ( x − u i ) T W J1=\sum_{x\in X_i} (W^Tx-W^Tu_i)^2=\sum_{x\in X_i} (W^T(x-u_i))(W^T(x-u_i))^T=\sum_{x\in X_i} W^T(x-u_i)(x-u_i)^TW J1=xXi(WTxWTui)2=xXi(WT(xui))(WT(xui))T=xXiWT(xui)(xui)TW
    S 1 = ∑ x ∈ X i ( x − u i ) ( x − u i ) T S_1=\sum_{x\in X_i}(x-u_i)(x-u_i)^T S1=xXi(xui)(xui)T,那么 J 1 = W T S 1 W J1=W^TS_1W J1=WTS1W


那么我们现在要使得 J 0 J0 J0尽可能大, J 1 J_1 J1尽可能小,那么就是最大化 J = J 0 J 1 = W T S 0 W W T S 1 W J=\frac{J_0}{J_1}=\frac{W^TS_0W}{W^TS_1W} J=J1J0=WTS1WWTS0W

分式上下都有W,那么W和 α W \alpha W αW效果是一样的,不妨令 W T S 1 W = 1 W^TS_1W=1 WTS1W=1,那么优化条件变成
J = W T S 0 W , s . t . : W T S 1 W = 1 J=W^TS_0W,s.t. :W^TS_1W=1 J=WTS0W,s.t.:WTS1W=1

用拉格朗日乘子法求解, L ( W , λ ) = W T S 0 W − λ ( W T S 1 W − 1 ) L(W,\lambda)=W^TS_0W-\lambda(W^TS_1W-1) L(W,λ)=WTS0Wλ(WTS1W1)
d L = ( d w ) T S 0 W + W T S 0 d W − λ ( ( d w ) T S 1 W + W T S 1 d W ) dL=(dw)^TS_0W+W^TS_0dW-\lambda((dw)^TS_1W+W^TS_1dW) dL=(dw)TS0W+WTS0dWλ((dw)TS1W+WTS1dW)
= W T S 0 T d W + W T S 0 d W − λ ( W T S 1 T d W + W T S 1 d W ) =W^TS_0^TdW+W^TS_0dW-\lambda(W^TS_1^TdW+W^TS_1dW) =WTS0TdW+WTS0dWλ(WTS1TdW+WTS1dW)
= ( 2 W T S 0 − 2 λ W T S 1 ) d W =(2W^TS_0-2\lambda W^TS_1)dW =(2WTS02λWTS1)dW


运算过程是用到矩阵求导, S 0 T = S 0 S_0^T=S_0 S0T=S0
那么 ∂ L ∂ W = ( 2 W T S 0 − 2 λ W T S 1 ) T = 2 S 0 W − 2 λ S 1 W \frac{\partial L}{\partial W}=(2W^TS_0-2\lambda W^TS_1)^T=2S_0W-2\lambda S_1W WL=(2WTS02λWTS1)T=2S0W2λS1W ,导数为0处, S 0 W = λ S 1 W S_0W=\lambda S_1W S0W=λS1W
S 1 S_1 S1可逆的时候, λ W = S 1 − 1 S 0 W \lambda W=S_1^{-1}S0W λW=S11S0W,那么最优的 W W W即为 S 1 − 1 S 0 S_1^{-1}S_0 S11S0的最大的特征向量。
如果要将 X ∈ R n X\in R^n XRn投影到 R d ( d < n ) R^d (d
Rd(d<n)
的子空间中,则取前d个特征向量。



注意点:

参考博客:

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/226242.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月17日 上午7:31
下一篇 2026年3月17日 上午7:32


相关推荐

  • 为什么我的OpenClaw的默认模型不是qwen3.5-plus?

    为什么我的OpenClaw的默认模型不是qwen3.5-plus?

    2026年3月13日
    1
  • java模板引擎哪个好_模板引擎比较

    java模板引擎哪个好_模板引擎比较18 9 3 总结 1 FreeMarker 是一个用 Java 语言编写的模板引擎 它基于模板来生成文本输出 FreeMarker 与 Web 容器无关 即在 Web 运行时 它并不知道 Servlet 或 HTTP 它不仅可以用作表现层的实现技术 而且还可以用于生成 XML JSP 或 Java 等 在 spring4 0 中推荐使用 thymeleaf 来做前端模版引擎 2 JSP 技术 springboot 官方是不推荐的 原因

    2026年3月17日
    2
  • 【推荐系统】音乐推荐系统02

    【推荐系统】音乐推荐系统02数据预处理爬取网易音乐数据 格式为 json 数据 抽取歌单名称 歌单 ID 收藏数 所属分类等歌单维度信息 歌曲 ID 歌曲名 歌手 歌曲热度等歌曲维度信息 做推荐系统常用的库 surprise lightfm 推荐系统的项目有 online 和 offline offline 可以使用 Python online 追求的是效率 key value 形式 可以使用 C 或者 Java 线上的一定要是最优的

    2026年3月16日
    1
  • 前端架构分析

    前端架构分析前端架构分析前端的价值到底在哪里实现界面交互提升用户体验总结就是能写交互页面 写的交互页面用户用的爽前端的进阶前端不局限于前端 当然优先前端技术需要如何进阶 性能优化 推荐阅读掘金文章 移动 web 性能优化从入门到进阶 首先是如何发现问题 发现问题之后 是如何分析其中原因找到原因之后 采用的解决办法 解决之后 是否真实的对用户体验有所提升 对框架的理解流行框架的 API 调用是最基本的要求 理解框架原理 理解思想可以让你在前端的路上走的更远 以 vue 为例 Vue 中的

    2026年3月17日
    2
  • webservice传递特殊字符时的解决的方法

    webservice传递特殊字符时的解决的方法

    2021年11月29日
    41
  • 智谱GLM-5震撼发布,昇腾AI全力支持!

    智谱GLM-5震撼发布,昇腾AI全力支持!

    2026年3月12日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号