机器学习个人总结

线性模型

  1. 基本形式
    dd个属性描述示例x=(x1,x2,,xd)Tx=(x_1,x_2,\cdots,x_d)^T(列向量d×1d\times1),其中,x_i是x在第i个属性取值。
    f(x)=ω1x1+ω2x2++ωdxd+bf(x)=\omega_1x_1+\omega_2x_2+\cdots+\omega_dx_d+b
    向量形式:
    x=(x1,x2,,xd)Tx=(x_1,x_2,\cdots,x_d)^T
    ω=(ω1,ω2,,ωd)T\omega=(\omega_1,\omega_2,\cdots,\omega_d)^T
    f(x)=ωTx+b\color{Blue}f(x)=\omega^Tx+b
    或:
    x=(x1,x2,,xd,1)Tx=(x_1,x_2,\cdots,x_d,1)^T
    ω^=(ω1,ω2,,ωd,b)T\hat{\omega}=(\omega_1,\omega_2,\cdots,\omega_d,b)^T
    f(x)=ω^Tx\color{Blue}f(x)=\hat{\omega}^Tx

  2. 线性判别分析(LDA):二分类
    思想:投影到一条直线上,同类样例尽可能近,异类样例尽可能远。机器学习个人总结投影直线为ω\omega
    两类样本中心投影在直线上均值为:ωTμ0\omega^T\mu_0ωTμ1\omega^T\mu_1
    两类样本的协方差分别为:ωT0ω\omega^T\sum_0\omegaωT1ω\omega^T\sum_1\omega
    同类样例尽可能近:协方差尽可能小,即类内散度矩阵Sω=0+1S_\omega=\sum_0+\sum_1尽可能小;
    异类样例尽可能远:中心之间距离尽可能远,即类间散度矩阵:Sb=(μ0μ1)(μ0μ1)TS_b=(\mu_0-\mu_1)(\mu_0-\mu_1)^T尽可能大。
    定义"广义瑞利商"J=ωTSbωωTSωω\color{Blue}J=\frac{\omega^TS_b\omega}{\omega^TS_\omega\omega},越大越好。
    由于分子、分母都是ω\omega的二次多项式,因此解与ω\omega的长度无关,只与方向有关,那么可令ωTSωω=1\omega^TS_\omega\omega=1,
    maxJmax \, J等价于minωTSbωmin \,-\omega^TS_b\omega机器学习个人总结
    即得:Sbω=λSωωS_b\omega=\lambda S_\omega\omega
    而,SbωS_b\omega方向始终为μ0μ1\mu_0-\mu_1,可令Sbω=λ(μ0μ1)S_b\omega=\lambda(\mu_0-\mu_1),那么有:
    ω=Sω1(μ0μ1)\omega=S_\omega^{-1}(\mu_0-\mu_1).
    SωS_\omega进行奇异值分解可得Sω1S_\omega^{-1}
    \color{Red}**当两类数据同先验、满足高斯分布且协方差相等时,LDA可达到最优分类。

  3. 将LDA推广到多分类任务
    假定存在N个类,第i类示例数为mim_i,所有示例的均值向量为μ\mu。定义:
    全局散度矩阵St=Sω+Sb=i=1m(xiμ)(xiμ)TS_t=S_\omega+S_b=\sum\limits_{i=1}^{m}(x_i-\mu)(x_i-\mu)^T
    重定义Sω=i=1NSωiS_\omega=\sum\limits_{i=1}^{N}S_{\omega i},
    其中,Sωi=xXi(xμi)(xμi)TS_{\omega i}=\sum\limits_{x\in X_i}(x-\mu_i)(x-\mu_i)^T
    XiX_i为第ii类数据集,μi\mu_i为该类的均值向量。
    Sb=StSω=i=1Nmi(μiμ)(μiμ)TS_b=S_t-S_\omega=\sum\limits_{i=1}^{N}m_i(\mu_i-\mu)(\mu_i-\mu)^T,使用St,Sω,SbS_t,S_\omega,S_b中任意两个即可解决多分类问题。

  4. 多分类学习
    OvO:产生N(N1)/2N(N-1)/2个二分类学习器,在测试阶段,将新样本放入所有的二分类学习器中测试,得出N(N1)N(N-1)个结果,把预测得最多的类别作为分类结果。(\color{Blue}空间开销大,训练时间开销小)
    OvR:产生NN个二分类学习器,在测试阶段,得出NN个结果,若仅有一个学习器预测为正类,则对应的类标作为最终分类结果。若有多个学习器预测为正类,则考虑各个分类器的预测置信度,选择置信度最大的类别作为分类标记结果。(\color{Blue}空间开销小,训练时间开销大)
    MvM:常用纠错输出码(ECOC)完成正反类构造。机器学习个人总结机器学习个人总结海明距离:序列相同位置上不同数据的个数。
    欧氏距离:即两点之间的距离,(x1x2)2+(y1y2)2\sqrt{(x_1-x_2)^2+(y_1-y_2)^2}

  5. 类别不平衡问题
    分类任务中不同类别的训练样本数目差别很大
    欠采样法:去掉一些数目过多的类别的训练样本
    过采样法:加入一些正例(假设正例数目太少),常用插值法
    阈值移动:采用原始训练集训练。但对于线性分类器而言,y>0.5y>0.5时判定为正例,y<0.5y<0.5时判定为正例,而y1y\frac{y}{1-y}表示正例可能性和反例可能性的几率,以0.5为阈值意味着分类器决策规则为: y1y>1\frac{y}{1-y}>1;然而,当正反例数目不一致时,观测几率为:m+m\frac{m^+}{m^-},由于通常假设训练集是真实样本总体的无偏采样,因此观测几率代表了真实几率。所以,只要分类器的预测几率高于观测几率就判为正例,即决策规则为:y1y>m+m\color{Blue}\frac{y}{1-y}>\frac{m^+}{m^-},实际实现时令:y1y=y1ymm+\frac{y'}{1-y'}=\frac{y}{1-y}\frac{m^-}{m^+}再同1比较判别类别。