机器学习基础专题:线性判别器
线性判别分析
全称是Linear Discriminant Analysis (LDA)。
原理
给定训练样例集,通过降维的思路进行分类。将样例投影到一条直线上,使得同类样例的投影点接近,异类样例的投影点尽可能远离。LDA降维最多降到类别数K-1的维数。
输入
训练集数据D=(x1,y1)...(xM,yM)D = {(x_1,y_1) ... (x_M,y_M)}D=(x1,y1)...(xM,yM),xi∈X⊆Rnx_i \in \mathcal{X} \subseteq R^nxi∈X⊆Rn,yi∈Y⊆RKy_i \in \mathcal{Y} \subseteq R^Kyi∈Y⊆RK,二分类yi∈{−1,+1}y_i \in \{-1, +1\}yi∈{−1,+1}
Xi,μi,ΣiX_i, \mu_i, \Sigma_iXi,μi,Σi 分别表示第i类样例的集合、均值向量、协方差矩阵。
输出
每个分类的均值向量,各分类数据在总体中所占比例,降维矩阵,降维后各分量的权重。如果是二分类就是{+1, -1}。
损失函数
在下面的属于中b代表between class(类间),w代表within class(类内)。
定义全局散度矩阵St=∑i=1M(xi−μ)(xi−μ)TS_t = \sum_{i=1}^M(x_i-\mu)(x_i-\mu)^TSt=∑i=1M(xi−μ)(xi−μ)T
定义类内散度矩阵Sw=∑k=1KSwkS_{w} = \sum_{k=1}^K S_{w_k}Sw=∑k=1KSwk。每个类的散度矩阵Swk=∑x∈Xk(x−μk)(x−μk)TS_{w_k} = \sum_{x \in X_k}(x-\mu_k)(x-\mu_k)^TSwk=∑x∈Xk(x−μk)(x−μk)T
定义类间散度矩阵Sb=St−Sw=∑i=1K(μi−μ)(μi−μ)TS_b = S_t - S_w = \sum_{i=1}^K(\mu_i-\mu)(\mu_i-\mu)^TSb=St−Sw=∑i=1K(μi−μ)(μi−μ)T
最大化目标,两个矩阵的广义瑞丽商J=∣∣wTμ0−wTμ1∣∣22wTΣ0w+wTΣ1w=wTSbwwTSwwJ = \frac {||w^T\mu_0 - w^T\mu_1||_2^2}{w^T\Sigma_0w+w^T\Sigma_1w} = \frac{w^TS_bw}{w^TS_ww}J=wTΣ0w+wTΣ1w∣∣wTμ0−wTμ1∣∣22=wTSwwwTSbw
定义多分类优化目标 J(w)=wTSbwwTSwwJ(w) = \frac{w^T S_b w}{w^T S_w w}J(w)=wTSwwwTSbw. 我们希望argmaxwJ(w)argmax_w J(w)argmaxwJ(w)。tr表示矩阵的迹(trace),是对角线元素总和,我们有时候简化成J(w)=tr(wTSbw)tr(wTSww)J(w) = \frac{tr(w^T S_b w)}{tr(w^T S_w w)}J(w)=tr(wTSww)tr(wTSbw)。
对目标函数进行求导,
∂J(w)∂w=2Sbw(wTSww)−1+(wTSbw)(wTSww)−2(−2)(Sww)=0Sbw(wTSww)−(wTSbw)Sww=0Sww=(wTSww)(wTSbw)Sbww=Sw−1Sbw(常数被约掉,因为大小不重要)\frac{\partial J(w)}{\partial w} = 2 S_b w (w^T S_w w)^{-1} + (w^T S_b w) (w^T S_w w)^{-2}(-2)(S_w w) = 0 \\\\ S_b w (w^T S_w w) - (w^T S_b w) S_w w = 0 \\\\ S_w w = \frac {(w^T S_w w)} {(w^T S_b w)} S_b w \\\\ w = S_w^{-1} S_b w\ (常数被约掉,因为大小不重要) ∂w∂J(w)=2Sbw(wTSww)−1+(wTSbw)(wTSww)−2(−2)(Sww)=0Sbw(wTSww)−(wTSbw)Sww=0Sww=(wTSbw)(wTSww)Sbww=Sw−1Sbw (常数被约掉,因为大小不重要)
分子分母只跟w的二次向有关,与w长度无关。如果将问题简化成二分类,则w的方向是
argminw−wTSbwargmin_w -w^TS_bwargminw−wTSbw s. t. wTSww=1w^TS_ww=1wTSww=1 => w=Sw−1(μ0−μ1)w = S_w^{-1}(\mu_0-\mu_1)w=Sw−1(μ0−μ1)
Reference
- 《美团机器学习实践》by美团算法团队,第三章
- 《机器学习》by周志华,第三、四章
- 白板推导系列,shuhuai007
机器学习基础专题:线性判别器相关推荐
- 【机器学习】Fisher线性判别与线性感知机
来源 | AI小白入门 作者 | 文杰 编辑 | yuquanle 原文链接 Fisher线性判别与线性感知机 Fisher线性判别和线性感知机都是针对分类任务,尤其是二分类,二者的共同之处在于都 ...
- 机器学习基础专题:分类
线性分类 分类方式 硬分类 使用的是非概率模型,分类结果是决策函数的决策结果. 代表:线性判别分析.感知机 软分类 分类结果是属于不同类别的概率. 生成式 通过贝叶斯定理,使用MAP比较P(Y=0∣X ...
- 机器学习基础专题:特征工程
特征工程 特征提取 将原始数据转化为实向量之后,为了让模型更好地学习规律,对特征做进一步的变换.首先,要理解业务数据和业务逻辑. 其次,要理解模型和算法,清楚模型需要什么样的输入才能有精确的结果. 探 ...
- 机器学习基础专题:感知机
感知机 原理 思想是错误驱动.一开始赋予w一个初始值,通过计算被错误分类的样本不断移动分类边界. 输入 训练集数据D=(x1,y1)...(xM,yM)D = {(x_1,y_1) ... (x_M, ...
- 机器学习基础专题:评估指标
评估指标 线下使用机器学习评估指标,线上使用的是业务指标.需要进行多轮模型迭代使两个指标变化趋势相同. 分类指标 精确率和召回率 用于二分类问题,结合混淆矩阵. 精确率 P = TPTP+FP\fra ...
- 【机器学习基础】线性基函数模型
本系列为<模式识别与机器学习>的读书笔记. 一,线性基函数模型 1,线性基函数 回归问题的⽬标是在给定 D D D 维输⼊(input) 变量 x \boldsymbol{x} x 的情况 ...
- 机器学习基础专题:高斯混合模型和最大期望EM算法以及代码实现
高斯混合模型 混合模型是潜变量模型的一种,是最常见的形式之一.而高斯混合模型(Gaussian Mixture Models, GMM)是混合模型中最常见的一种.zzz代表该数据点是由某一个高斯分布产 ...
- 机器学习基础专题:支持向量机SVM
支持向量机 全称Support Vector Machine (SVM).可以分为硬间隔(hard margin SVM),软间隔(soft margin SVM),和核支持向量机(kernel ma ...
- 机器学习基础专题:随机变量
术语 样本空间(sample space):Ω\OmegaΩ,包含了所有可能出现的结果的集合.比如在掷一次骰子的样本空间可以用{1,2,3,4,5,6}表示. 事件集(event space): FF ...
最新文章
- 【云周刊】第126期:硬货!云存储成本到底省在哪儿
- [Database] 数据库范式理论
- 【机器学习】情侣、基友、渣男和狗-基于时空关联规则的影子账户挖掘
- 根据当月数据库自动生成下个月数据库--3
- java多线程同步synchronized——对象监视器
- leetcode - 538. 把二叉搜索树转换为累加树
- 征稿 | 计算机视觉与数据挖掘-EI会议 ICCVDM2020
- Linux安装mysql(解决E: Package ‘mysql-server‘ has no installation candidate与ERROR 1698 (28000))
- 二十年的编程,教会我的五件事!
- linux 查看内存条详情命令
- Linux卡巴斯基杀毒(kesl)基础操作
- 智能锁常见的8种开锁方式及其安全性介绍
- java socket输入输出流
- mybatis 3.x 缓存Cache的使用
- 一文读懂nginx charset
- APM,云时代的应用性能优化神器
- Linux DRM(一)Display Server
- 如何提高外贸询单转化率
- 【电商】电商后台设计—购物车
- 面试部分梳理 - 计算机网络