Fisher线性判别分析

案例说明

案例

\(以下两个维度比较在不同温度下冶炼的钢铁群体\)

\(Y_1代表钢铁击穿点(yield point)\)

\(Y_2代表钢铁强度(ultimate\quad strength)\)

\(温度1\)

$$y_1$$ $$y_2$$
33 60
36 61
35 64
38 63
40 65

\(温度2\)

$$y_1$$ $$y_2$$
35 57
36 59
38 59
39 61
41 63
43 65
41 59

Fisher线性判别分析(Fisher's linear discriminant analysis,LDA)

假设

\(两个群体的均值向量(\mu_1\ne \mu_2),但具有相同的协方差矩阵\Sigma\)

\(随机样本(历史数据)\)

\(第一个p维群体y_{11},...,y_{1n_1}\)
\(样本均值向量\bar y_1,样本容量n_1,协方差矩阵\frac{\Sigma}{n_1}\)

\(第二个p维群体y_{21},...,y_{2n_2}\)
\(样本均值向量\bar y_2,样本容量n_2,协方差矩阵\frac{\Sigma}{n_2}\)


思路

\(用来寻找两个群体间"最好"的线性判别法则,来最大限度地区分两个群体\)

目标 找到方向a,使得所有点,投影下来后,两个群体分的最开
\(投影就是做a和y_1两个向量的內积,也就是\bar Z_1,然后两个投影相减 d=\bar Z_1 -\bar Z_2\)

这个d是欧式距离,但距离大不一定是分得开,所以用标准化距离
标准化就是要除以自己的方差

\(d=\bar Z_1-\bar Z_2=a^T(\bar y_1-\bar y_2)\)

\(Cov(\bar y_1)=\frac{\Sigma}{n_1}\)

\(Cov(\bar y_2)=\frac{\Sigma}{n_2}\)

\(Cov(\bar y_1-\bar y_2)=\Sigma(\frac{1}{n_1}+\frac{1}{n_2})\)

\(var(d)=(\frac{1}{n_1}+\frac{1}{n_2})a'\Sigma a\)

\(s_d=\sqrt{(\frac{1}{n_1}+\frac{1}{n_2})a'S_{pl} a}\)

\(S_{pl}是指用样本(包括两分类样本都算)算出来的协方差矩阵,\Sigma是模型真实的协方差矩阵\)

\(标准化距离就是\frac{d}{s_d},可正可负,所以一般处理平方(\frac{d}{s_d})^2\)

投影后标准化距离(平方)为

\(t^2(a)=\frac{\left\{a^T(\bar y_1-\bar y_2)\right\}^2}{(\frac{1}{n_1}+\frac{1}{n_2})a^TS_{pl}a}\)

\(Fisher线性判别分析找a使得t^2(a)最大\)

怎么求最大值

\(1.(\frac{1}{n_1}+\frac{1}{n_2}) 是常数\)

\(2.利用柯西不等式\)

\((a^Tb)^2\le (a^Ta)(b^Tb) ; 当且仅当\quad a=b,內积的平方小于等于模长的平方的积\)

\(柯西不等式的变形\)

\((a^Tb)^2\le (a^TWa)(b^TW^{-1}b)\)

\(或者\frac{(a^Tb)^2}{a^TWa}\le b^TW^{-1}b; 当且仅当 \quad a=W^{-1}b\)

\(所以最大值时,a=S_{pl}^{-1}(\bar y_1-\bar y_2)\)

\(称为\color{red}{判别函数系数(Discriminant\quad function \quad coefficient)}\)

\(z=a^Ty\)

\(称为\color{red}{Fisher判别函数(Fisher's \quad discriminant \quad function)}\)

回到原来的案例,看下计算结果

结尾

材料来自于b站,厦门大学多元统计分析
这里要求两分类样本的协方差矩阵是一样的,但实际也是可以不一样的,在PRML一书中 公式4.28

\(S_W = \sum\limits_{n \in C_1}(x_n - m_1)(x_n - m_1)^T + \sum\limits_{n \in C_2}(x_n - m_2)(x_n - m_2)^T\)

就用的是两个协方差的加和操作

posted @ 2022-03-23 21:59  筷点雪糕侠  阅读(518)  评论(0编辑  收藏  举报