西瓜书第十章-降维与度量学习
一、k近邻学习
- k近邻(k-Nearest Neighbor,简称kNN) 学习是一种常用的监督学习方法,其工作机制非常简单:给定测试样本,基于某种距离度量找出训练集中与其最靠近的k个训练样本,然后基于这k个“邻居”的信息来进行预测。通常,在分类任务中可使用“投票法”,即选择这k个样本中出现最多的类别标记作为预测结果;在回归任务中可使用“平均法”,即将这k个样本的实值输出作为标记的平均值作为预测结果;还可基于距离远近进行加权平均或加权投票,距离越近的样本权重越大。
- 没有显式的训练过程,事实上,它是 “懒惰学习”(lazy learning) 的著名代表。此列学习技术在训练阶段仅仅是把样本保存起来,训练时间开销为零,待收到测试样本后再进行处理;相应的,那些在训练阶段就对样本进行学习处理的方法,称为“急切学习”(eager learning)
  
 暂且假设距离计算是“恰当”的,即能够恰当地找出k个近邻,对“最近邻分类器”(1NN,即k=1)在二分类问题上的性能做一个简单的讨论。
 给定测试样本 x \pmb x xxx,若其最近邻样本为 z \pmb z zzz,则最近邻分类器出错的概率就是将
 x \pmb x xxx与 z \pmb z zzz类别标记不同的概率,即
 P ( e r r ) = 1 − ∑ c ∈ Y P ( c ∣ x ) P ( c ∣ z ) P(err) = 1 - \sum_{c\in \mathcal Y}P(c|\pmb x)P(c|\pmb z) P(err)=1−c∈Y∑P(c∣xxx)P(c∣zzz)
 假设样本独立同分布,且对任意 x \pmb x xxx和任意小正数 δ \delta δ,在 x \pmb x xxx附近 δ \delta δ距离范围内总能找到一个训练样本;换言之,对任意测试样本,总能在任意近的范围内找到训练样本 z \pmb z zzz。令 c ∗ = argmax  c ∈ Y P ( c ∣ x ) c^* = \operatorname{argmax}_{c\in \mathcal Y}P(c|\pmb x) c∗=argmaxc∈YP(c∣xxx)表示贝叶斯最优分类器的结果,有
 P ( e r r ) = 1 − ∑ c ∈ Y P ( c ∣ x ) P ( c ∣ z ) ≃ 1 − ∑ c ∈ Y P 2 ( c ∣ x ) ≤ 1 − P 2 ( c ∗ ∣ x ) = ( 1 + P ( c ∗ ∣ x ) ) ( 1 − P ( c ∗ ∣ x ) ) ≤ 2 × ( 1 − P ( c ∗ ∣ x ) ) \begin{aligned} P(err) &= 1 - \sum_{c\in \mathcal Y}P(c|\pmb x)P(c|\pmb z)\\ & \simeq1-\sum_{c\in \mathcal Y}P^2(c|\pmb x)\\ & \leq 1-P^2(c^*|\pmb x)\\ & = (1+ P(c^*|\pmb x))(1- P(c^*|\pmb x))\\ & \leq 2\times(1- P(c^*|\pmb x)) \end{aligned} P(err)=1−c∈Y∑P(c∣xxx)P(c∣zzz)≃1−c∈Y∑P2(c∣xxx)≤1−P2(c∗∣xxx)=(1+P(c∗∣xxx))(1−P(c∗∣xxx))≤2×(1−P(c∗∣xxx))
 于是得到结论:最近邻分类器虽简单,但它的泛化错误率不超过贝叶斯最优分类器的错误率的两倍
二、低维嵌入
上一节讨论的是基于一个重要假设:任意测试样本
    
     
      
       
        x
       
      
      
       \pmb x
      
     
    xxx附近任意小的
    
     
      
       
        δ
       
      
      
       \delta
      
     
    δ距离范围内总能找到一个训练样本,即训练样本的采样密度足够大,或称为 “密采样”(dense sample)。
 事实上,在高维情况下出现的数据样本稀疏、距离计算困难等问题,是所有机器学习方法共同面临的严重障碍,被称为 “维度灾难”(curse of dimensionality)
 缓解维度灾难的一个重要途径是 降维(dimension reduction),亦称 “维度简约”,即通过某种数学变换将原始高维空间转换为一个低维 “子空间”(subspace)。人们观测或收集到的数据样本虽是高维的,但与学习任务密切相关的也许仅是某个低维分布,即高维空间中的一个低维“嵌入”(embeding)。
  若要求原始空间中样本之间的距离在低维空间中得以保持,即得到 “多维缩放”(Multiple Dimensional Scalling,简称MDS) 这样一种经典的降维方法。
若要求原始空间中样本之间的距离在低维空间中得以保持,即得到 “多维缩放”(Multiple Dimensional Scalling,简称MDS) 这样一种经典的降维方法。
 假定m个样本在原始空间的距离矩阵为
    
     
      
       
        D
       
       
        ∈
       
       
        
         R
        
        
         
          m
         
         
          ×
         
         
          m
         
        
       
      
      
       \pmb D\in \mathbb R^{m\times m}
      
     
    DDD∈Rm×m,其第i行j列的元素
    
     
      
       
        
         dist
        
        
         
        
        
         
          i
         
         
          j
         
        
       
      
      
       \operatorname{dist}_{ij}
      
     
    distij为样本
    
     
      
       
        
         x
        
        
         i
        
       
      
      
       \pmb x_i
      
     
    xxxi到
    
     
      
       
        
         x
        
        
         j
        
       
      
      
       \pmb x_j
      
     
    xxxj的距离。目标是获取样本在d’维空间的表示
    
     
      
       
        Z
       
       
        ∈
       
       
        
         R
        
        
         
          
           d
          
          
           ′
          
         
         
          ×
         
         
          m
         
        
       
       
        ,
       
       
        
         d
        
        
         ′
        
       
       
        ≤
       
       
        d
       
      
      
       \pmb Z\in \mathbb R^{d'\times m},d'\le d
      
     
    ZZZ∈Rd′×m,d′≤d,且任意两个样本在d’维空间中的欧式距离等于原始空间中的距离,即
    
     
      
       
        ∣
       
       
        ∣
       
       
        
         z
        
        
         i
        
       
       
        −
       
       
        
         z
        
        
         j
        
       
       
        ∣
       
       
        ∣
       
       
        =
       
       
        d
       
       
        i
       
       
        s
       
       
        
         t
        
        
         
          i
         
         
          j
         
        
       
      
      
       ||z_i - z_j|| = dist_{ij}
      
     
    ∣∣zi−zj∣∣=distij。
 令
    
     
      
       
        B
       
       
        =
       
       
        
         Z
        
        
         T
        
       
       
        Z
       
       
        ∈
       
       
        
         R
        
        
         
          m
         
         
          ×
         
         
          m
         
        
       
      
      
       \pmb B = \pmb Z^T\pmb Z\in \mathbb R^{m\times m}
      
     
    BBB=ZZZTZZZ∈Rm×m,其中
    
     
      
       
        B
       
      
      
       \pmb B
      
     
    BBB为降维后样本的内积矩阵,
    
     
      
       
        
         b
        
        
         
          i
         
         
          j
         
        
       
       
        =
       
       
        
         z
        
        
         i
        
        
         T
        
       
       
        
         z
        
        
         j
        
       
      
      
       b_{ij} = z_i^Tz_j
      
     
    bij=ziTzj
 
     
      
       
        
         
          
           
            
             d
            
            
             i
            
            
             s
            
            
             
              t
             
             
              
               i
              
              
               j
              
             
             
              2
             
            
           
          
         
         
          
           
            
            
             =
            
            
             ∣
            
            
             ∣
            
            
             
              z
             
             
              i
             
            
            
             ∣
            
            
             
              ∣
             
             
              2
             
            
            
             +
            
            
             ∣
            
            
             ∣
            
            
             
              z
             
             
              j
             
            
            
             ∣
            
            
             
              ∣
             
             
              2
             
            
            
             −
            
            
             2
            
            
             
              z
             
             
              i
             
             
              T
             
            
            
             
              z
             
             
              j
             
            
           
          
         
        
        
         
          
           
          
         
         
          
           
            
            
             =
            
            
             
              b
             
             
              
               i
              
              
               i
              
             
            
            
             +
            
            
             
              b
             
             
              
               j
              
              
               j
              
             
            
            
             −
            
            
             2
            
            
             
              b
             
             
              
               i
              
              
               j
              
             
            
           
          
         
        
       
       
         \begin{aligned} dist^2_{ij} &= ||z_i||^2+ ||z_j||^2-2z_i^Tz_j\\ & = b_{ii} + b_{jj} - 2b_{ij} \end{aligned} 
       
      
     distij2=∣∣zi∣∣2+∣∣zj∣∣2−2ziTzj=bii+bjj−2bij
 为了便于讨论,令降维后的样本
    
     
      
       
        Z
       
      
      
       \pmb Z
      
     
    ZZZ被中心化,即
    
     
      
       
        
         ∑
        
        
         
          i
         
         
          =
         
         
          1
         
        
        
         m
        
       
       
        
         z
        
        
         i
        
       
       
        =
       
       
        0
       
      
      
       \sum_{i=1}^m z_i = 0
      
     
    ∑i=1mzi=0。显然,矩阵
    
     
      
       
        B
       
      
      
       \pmb B
      
     
    BBB的行与列之和均为零,即
    
     
      
       
        
         ∑
        
        
         
          i
         
         
          =
         
         
          1
         
        
        
         m
        
       
       
        
         b
        
        
         
          i
         
         
          j
         
        
       
       
        =
       
       
        
         ∑
        
        
         
          j
         
         
          =
         
         
          1
         
        
        
         m
        
       
       
        
         b
        
        
         
          i
         
         
          j
         
        
       
       
        =
       
       
        0
       
      
      
       \sum_{i=1}^m b_{ij} = \sum_{j=1}^m b_{ij}=0
      
     
    ∑i=1mbij=∑j=1mbij=0
 
     
      
       
        
         
          
           
            
             
              ∑
             
             
              
               i
              
              
               =
              
              
               1
              
             
             
              m
             
            
            
             d
            
            
             i
            
            
             s
            
            
             
              t
             
             
              
               i
              
              
               j
              
             
             
              2
             
            
            
             =
            
            
             t
            
            
             r
            
            
             (
            
            
             B
            
            
             )
            
            
             +
            
            
             m
            
            
             
              b
             
             
              
               j
              
              
               j
              
             
            
            
             ,
            
           
          
         
        
        
         
          
           
            
             
              ∑
             
             
              
               j
              
              
               =
              
              
               1
              
             
             
              m
             
            
            
             d
            
            
             i
            
            
             s
            
            
             
              t
             
             
              
               i
              
              
               j
              
             
             
              2
             
            
            
             =
            
            
             t
            
            
             r
            
            
             (
            
            
             B
            
            
             )
            
            
             +
            
            
             m
            
            
             
              b
             
             
              
               i
              
              
               i
              
             
            
            
             ,
            
           
          
         
        
        
         
          
           
            
             
              ∑
             
             
              
               i
              
              
               =
              
              
               1
              
             
             
              m
             
            
            
             
              ∑
             
             
              
               j
              
              
               =
              
              
               1
              
             
             
              m
             
            
            
             d
            
            
             i
            
            
             s
            
            
             
              t
             
             
              
               i
              
              
               j
              
             
             
              2
             
            
            
             =
            
            
             2
            
            
             m
            
            
             ⋅
            
            
             t
            
            
             r
            
            
             (
            
            
             B
            
            
             )
            
            
             ,
            
           
          
         
        
       
       
         \begin{aligned} \sum_{i=1}^m dist_{ij}^2 = tr(\pmb B) + mb_{jj},\\ \sum_{j=1}^m dist_{ij}^2 = tr(\pmb B) + mb_{ii},\\ \sum_{i=1}^m\sum_{j=1}^m dist_{ij}^2 =2m\cdot tr(\pmb B), \end{aligned} 
       
      
     i=1∑mdistij2=tr(BBB)+mbjj,j=1∑mdistij2=tr(BBB)+mbii,i=1∑mj=1∑mdistij2=2m⋅tr(BBB),
 其中
    
     
      
       
        t
       
       
        r
       
       
        (
       
       
        ⋅
       
       
        )
       
      
      
       tr(\cdot)
      
     
    tr(⋅)表示矩阵的迹(trace),
    
     
      
       
        t
       
       
        r
       
       
        (
       
       
        B
       
       
        )
       
       
        =
       
       
        
         ∑
        
        
         
          i
         
         
          =
         
         
          1
         
        
        
         m
        
       
       
        ∣
       
       
        ∣
       
       
        
         z
        
        
         i
        
       
       
        ∣
       
       
        
         ∣
        
        
         2
        
       
      
      
       tr(\pmb B) = \sum_{i=1}^m ||z_i||^2
      
     
    tr(BBB)=∑i=1m∣∣zi∣∣2。令
 
     
      
       
        
         
          
           
          
         
         
          
           
            
            
             d
            
            
             i
            
            
             s
            
            
             
              t
             
             
              
               i
              
              
               ⋅
              
             
             
              2
             
            
            
             =
            
            
             
              1
             
             
              m
             
            
            
             
              ∑
             
             
              
               j
              
              
               =
              
              
               1
              
             
             
              m
             
            
            
             d
            
            
             i
            
            
             s
            
            
             
              t
             
             
              
               i
              
              
               j
              
             
             
              2
             
            
            
             ,
            
           
          
         
        
        
         
          
           
          
         
         
          
           
            
            
             d
            
            
             i
            
            
             s
            
            
             
              t
             
             
              
               ⋅
              
              
               j
              
             
             
              2
             
            
            
             =
            
            
             
              1
             
             
              m
             
            
            
             
              ∑
             
             
              
               i
              
              
               =
              
              
               1
              
             
             
              m
             
            
            
             d
            
            
             i
            
            
             s
            
            
             
              t
             
             
              
               i
              
              
               j
              
             
             
              2
             
            
            
             ,
            
           
          
         
        
        
         
          
           
          
         
         
          
           
            
            
             d
            
            
             i
            
            
             s
            
            
             
              t
             
             
              
               ⋅
              
              
               ⋅
              
             
             
              2
             
            
            
             =
            
            
             
              1
             
             
              
               m
              
              
               2
              
             
            
            
             
              ∑
             
             
              
               i
              
              
               =
              
              
               1
              
             
             
              m
             
            
            
             
              ∑
             
             
              
               j
              
              
               =
              
              
               1
              
             
             
              m
             
            
            
             d
            
            
             i
            
            
             s
            
            
             
              t
             
             
              
               i
              
              
               j
              
             
             
              2
             
            
            
             ,
            
           
          
         
        
       
       
         \begin{aligned} &dist_{i\cdot}^2 = \frac{1}{m}\sum_{j=1}^m dist_{ij}^2,\\ &dist_{\cdot j}^2 = \frac{1}{m}\sum_{i=1}^m dist_{ij}^2,\\ &dist_{\cdot\cdot}^2 = \frac{1}{m^2}\sum_{i=1}^m\sum_{j=1}^m dist_{ij}^2,\\ \end{aligned} 
       
      
     disti⋅2=m1j=1∑mdistij2,dist⋅j2=m1i=1∑mdistij2,dist⋅⋅2=m21i=1∑mj=1∑mdistij2,
 由上列式子可得
 
     
      
       
        
         
          b
         
         
          
           i
          
          
           j
          
         
        
        
         =
        
        
         −
        
        
         
          1
         
         
          2
         
        
        
         (
        
        
         d
        
        
         i
        
        
         s
        
        
         
          t
         
         
          
           i
          
          
           j
          
         
         
          2
         
        
        
         −
        
        
         d
        
        
         i
        
        
         s
        
        
         
          t
         
         
          
           i
          
          
           ⋅
          
         
         
          2
         
        
        
         −
        
        
         d
        
        
         i
        
        
         s
        
        
         
          t
         
         
          
           ⋅
          
          
           j
          
         
         
          2
         
        
        
         +
        
        
         d
        
        
         i
        
        
         s
        
        
         
          t
         
         
          
           ⋅
          
          
           ⋅
          
         
         
          2
         
        
        
         )
        
       
       
         b_{ij} = -\frac{1}{2}(dist_{ij}^2-dist_{i\cdot}^2-dist_{\cdot j}^2 + dist_{\cdot \cdot}^2) 
       
      
     bij=−21(distij2−disti⋅2−dist⋅j2+dist⋅⋅2)
 由此即可通过降维前后保持不变的距离矩阵
    
     
      
       
        D
       
      
      
       \pmb D
      
     
    DDD求得内积矩阵
    
     
      
       
        B
       
      
      
       \pmb B
      
     
    BBB。
 对矩阵
    
     
      
       
        B
       
      
      
       \pmb B
      
     
    BBB做特征值分解(eigenvalue decomposition),
    
     
      
       
        B
       
       
        =
       
       
        V
       
       
        Λ
       
       
        
         V
        
        
         T
        
       
      
      
       \pmb B = \pmb V \pmb\Lambda\pmb V^T
      
     
    BBB=VVVΛΛΛVVVT,其中
    
     
      
       
        Λ
       
       
        =
       
       
        diag
       
       
        
       
       
        (
       
       
        
         λ
        
        
         1
        
       
       
        ,
       
       
        
         λ
        
        
         2
        
       
       
        ,
       
       
        ⋯
        
       
        ,
       
       
        
         λ
        
        
         d
        
       
       
        )
       
      
      
       \pmb \Lambda = \operatorname{diag}(\lambda_1,\lambda_2,\cdots,\lambda_d)
      
     
    ΛΛΛ=diag(λ1,λ2,⋯,λd)为特征值构成的对角矩阵,
    
     
      
       
        
         λ
        
        
         1
        
       
       
        ≥
       
       
        
         λ
        
        
         2
        
       
       
        ≥
       
       
        ⋯
       
       
        ≥
       
       
        
         λ
        
        
         d
        
       
      
      
       \lambda_1\ge\lambda_2\ge\cdots\ge\lambda_d
      
     
    λ1≥λ2≥⋯≥λd,
    
     
      
       
        V
       
      
      
       \pmb V
      
     
    VVV为特征向量矩阵。假定其中有
    
     
      
       
        
         d
        
        
         ∗
        
       
      
      
       d^*
      
     
    d∗个非零特征值,它们构成对角矩阵
    
     
      
       
        
         Λ
        
        
         ∗
        
       
       
        =
       
       
        diag
       
       
        
       
       
        (
       
       
        
         λ
        
        
         1
        
       
       
        ,
       
       
        
         λ
        
        
         2
        
       
       
        ,
       
       
        ⋯
        
       
        ,
       
       
        
         λ
        
        
         
          d
         
         
          ∗
         
        
       
       
        )
       
      
      
       \pmb \Lambda_* = \operatorname{diag}(\lambda_1,\lambda_2,\cdots,\lambda_{d^*})
      
     
    ΛΛΛ∗=diag(λ1,λ2,⋯,λd∗),令
    
     
      
       
        
         V
        
        
         ∗
        
       
      
      
       \pmb V_*
      
     
    VVV∗表示相应的特征向量矩阵,则
    
     
      
       
        Z
       
      
      
       \pmb Z
      
     
    ZZZ可表达为
 
     
      
       
        
         Z
        
        
         =
        
        
         
          Λ
         
         
          ∗
         
         
          
           1
          
          
           /
          
          
           2
          
         
        
        
         
          V
         
         
          ∗
         
         
          T
         
        
        
         ∈
        
        
         
          R
         
         
          
           
            d
           
           
            ∗
           
          
          
           ×
          
          
           m
          
         
        
       
       
         \pmb Z = \pmb \Lambda_*^{1/2}\pmb V_*^T\in \mathbb R^{d^*\times m} 
       
      
     ZZZ=ΛΛΛ∗1/2VVV∗T∈Rd∗×m
 在现实应用中为了有效降维,往往仅需要降维后的距离与原始空间中的距离尽可能接近,而不必严格相等。此时可取
    
     
      
       
        
         d
        
        
         ′
        
       
       
        ≪
       
       
        d
       
      
      
       d'\ll d
      
     
    d′≪d个最大特征值构成对角矩阵
    
     
      
       
        
         Λ
        
        
         ~
        
       
       
        =
       
       
        diag
       
       
        
       
       
        (
       
       
        
         λ
        
        
         1
        
       
       
        ,
       
       
        
         λ
        
        
         2
        
       
       
        ,
       
       
        ⋯
        
       
        ,
       
       
        
         λ
        
        
         
          d
         
         
          ′
         
        
       
       
        )
       
      
      
       \pmb {\tilde \Lambda} = \operatorname{diag}(\lambda_1,\lambda_2,\cdots,\lambda_{d'})
      
     
    Λ~Λ~Λ~=diag(λ1,λ2,⋯,λd′),则
 
     
      
       
        
         Z
        
        
         =
        
        
         
          
           Λ
          
          
           ~
          
         
         
          
           1
          
          
           /
          
          
           2
          
         
        
        
         
          
           V
          
          
           ~
          
         
         
          T
         
        
        
         ∈
        
        
         
          R
         
         
          
           
            d
           
           
            ′
           
          
          
           ×
          
          
           m
          
         
        
       
       
         \pmb Z = \pmb {\tilde\Lambda}^{1/2}\pmb {\tilde V}^T\in \mathbb R^{d'\times m} 
       
      
     ZZZ=Λ~Λ~Λ~1/2V~V~V~T∈Rd′×m
  一般来说,欲获得低维子空间,最简单的是对原始高维空间进行线性变换。给定d维空间中的样本
    
     
      
       
        X
       
       
        =
       
       
        (
       
       
        
         x
        
        
         1
        
       
       
        ,
       
       
        
         x
        
        
         2
        
       
       
        ,
       
       
        ⋯
        
       
        ,
       
       
        
         x
        
        
         m
        
       
       
        )
       
       
        ∈
       
       
        
         R
        
        
         
          d
         
         
          ×
         
         
          m
         
        
       
      
      
       \pmb X = (\pmb x_1,\pmb x_2,\cdots,\pmb x_m)\in \mathbb R^{d\times m}
      
     
    XXX=(xxx1,xxx2,⋯,xxxm)∈Rd×m,变换之后得到
    
     
      
       
        
         d
        
        
         ′
        
       
       
        ≤
       
       
        d
       
      
      
       d'\le d
      
     
    d′≤d维空间样本
一般来说,欲获得低维子空间,最简单的是对原始高维空间进行线性变换。给定d维空间中的样本
    
     
      
       
        X
       
       
        =
       
       
        (
       
       
        
         x
        
        
         1
        
       
       
        ,
       
       
        
         x
        
        
         2
        
       
       
        ,
       
       
        ⋯
        
       
        ,
       
       
        
         x
        
        
         m
        
       
       
        )
       
       
        ∈
       
       
        
         R
        
        
         
          d
         
         
          ×
         
         
          m
         
        
       
      
      
       \pmb X = (\pmb x_1,\pmb x_2,\cdots,\pmb x_m)\in \mathbb R^{d\times m}
      
     
    XXX=(xxx1,xxx2,⋯,xxxm)∈Rd×m,变换之后得到
    
     
      
       
        
         d
        
        
         ′
        
       
       
        ≤
       
       
        d
       
      
      
       d'\le d
      
     
    d′≤d维空间样本
 
     
      
       
        
         Z
        
        
         =
        
        
         
          W
         
         
          T
         
        
        
         X
        
       
       
         \pmb Z = \pmb W^T \pmb X 
       
      
     ZZZ=WWWTXXX
 其中
    
     
      
       
        W
       
       
        ∈
       
       
        
         R
        
        
         
          d
         
         
          ×
         
         
          
           d
          
          
           ′
          
         
        
       
      
      
       \pmb W \in \mathbb R^{d\times d'}
      
     
    WWW∈Rd×d′是变换矩阵,
    
     
      
       
        Z
       
       
        ∈
       
       
        
         R
        
        
         
          
           d
          
          
           ′
          
         
         
          ×
         
         
          m
         
        
       
      
      
       \pmb Z \in \mathbb R^{d'\times m}
      
     
    ZZZ∈Rd′×m是样本在新空间中的表达
 变换矩阵
    
     
      
       
        W
       
      
      
       \pmb W
      
     
    WWW可视为d’个d维基向量,
    
     
      
       
        
         z
        
        
         i
        
       
       
        =
       
       
        
         W
        
        
         T
        
       
       
        
         x
        
        
         i
        
       
      
      
       z_i = \pmb W^T \pmb x_i
      
     
    zi=WWWTxxxi是第i个样本与这d‘个基向量分别做内积而得到的d’维属性向量。换言之,
    
     
      
       
        
         z
        
        
         i
        
       
      
      
       \pmb z_i
      
     
    zzzi是原属性向量
    
     
      
       
        
         x
        
        
         i
        
       
      
      
       \pmb x_i
      
     
    xxxi在新坐标系
    
     
      
       
        {
       
       
        
         w
        
        
         1
        
       
       
        ,
       
       
        
         w
        
        
         2
        
       
       
        ,
       
       
        ⋯
        
       
        ,
       
       
        
         w
        
        
         
          d
         
         
          ′
         
        
       
       
        }
       
      
      
       \{\pmb w_1,\pmb w_2,\cdots,\pmb w_{d'}\}
      
     
    {www1,www2,⋯,wwwd′}中的坐标向量
- 基于线性变换来进行降维的方法称为 线性降维方法,不同之处是对低维子空间的性质不同的要求,相当于对 W \pmb W WWW施加了不同的约束
三、主成分分析
- 主成分分析(Principal Component Analysis,简称为PCA) 是最常用的一种降维方法
如何用一个超平面(直线的高维推广)对所有样本进行恰当的表达?若存在这样的超平面,那么大概应具有这样的性质:
- 最近重构性:样本点到这个超平面的距离都足够近
- 最大可分性:样本点在这个超平面的投影能尽可能分开
假定样本进行了中心化,即
    
     
      
       
        
         ∑
        
        
         i
        
       
       
        
         x
        
        
         i
        
       
       
        =
       
       
        0
       
      
      
       \sum_{i} \pmb x_i = 0
      
     
    ∑ixxxi=0;再假定投影变换后得到的新的坐标系为
    
     
      
       
        {
       
       
        
         w
        
        
         1
        
       
       
        ,
       
       
        
         w
        
        
         2
        
       
       
        ,
       
       
        ⋯
        
       
        ,
       
       
        
         w
        
        
         
          d
         
         
          ′
         
        
       
       
        }
       
      
      
       \{\pmb w_1,\pmb w_2,\cdots,\pmb w_{d'}\}
      
     
    {www1,www2,⋯,wwwd′},其中
    
     
      
       
        
         w
        
        
         i
        
       
      
      
       \pmb w_i
      
     
    wwwi为标准正交基向量,
    
     
      
       
        ∣
       
       
        ∣
       
       
        
         w
        
        
         i
        
       
       
        ∣
       
       
        
         ∣
        
        
         2
        
       
       
        =
       
       
        1
       
       
        ,
       
       
        
         w
        
        
         i
        
        
         T
        
       
       
        
         w
        
        
         j
        
       
       
        =
       
       
        0
       
       
        (
       
       
        i
       
       
        ≠
       
       
        j
       
       
        )
       
      
      
       ||\pmb w_i||_2 = 1,\pmb w_i^T \pmb w_j = 0(i\ne j)
      
     
    ∣∣wwwi∣∣2=1,wwwiTwwwj=0(i=j)。若丢弃新坐标系中的部门坐标,即将维度降低到
    
     
      
       
        
         d
        
        
         ′
        
       
       
        <
       
       
        d
       
      
      
       d' <d
      
     
    d′<d,则样本点
    
     
      
       
        
         x
        
        
         i
        
       
      
      
       \pmb x_i
      
     
    xxxi在低维坐标系中的投影是
    
     
      
       
        
         z
        
        
         i
        
       
       
        =
       
       
        (
       
       
        
         z
        
        
         
          i
         
         
          1
         
        
       
       
        ;
       
       
        
         z
        
        
         
          i
         
         
          2
         
        
       
       
        ;
       
       
        ⋯
        
       
        ;
       
       
        
         z
        
        
         
          i
         
         
          
           d
          
          
           ′
          
         
        
       
       
        )
       
      
      
       \pmb z_i = (z_{i1};z_{i2};\cdots;z_{id'})
      
     
    zzzi=(zi1;zi2;⋯;zid′),其中
    
     
      
       
        
         z
        
        
         
          i
         
         
          j
         
        
       
       
        =
       
       
        
         w
        
        
         j
        
        
         T
        
       
       
        
         x
        
        
         i
        
       
      
      
       z_{ij} = \pmb w_j^T\pmb x_i
      
     
    zij=wwwjTxxxi是
    
     
      
       
        
         x
        
        
         i
        
       
      
      
       \pmb x_i
      
     
    xxxi在低维坐标系下第j维的坐标。若基于
    
     
      
       
        
         z
        
        
         i
        
       
      
      
       \pmb z_i
      
     
    zzzi来重构
    
     
      
       
        
         x
        
        
         i
        
       
      
      
       \pmb x_i
      
     
    xxxi,则会得到
    
     
      
       
        
         
          x
         
         
          ^
         
        
        
         i
        
       
       
        =
       
       
        
         ∑
        
        
         
          j
         
         
          =
         
         
          1
         
        
        
         
          d
         
         
          ′
         
        
       
       
        
         z
        
        
         
          i
         
         
          j
         
        
       
       
        
         w
        
        
         j
        
       
      
      
       \hat{\pmb x}_i=\sum_{j=1}^{d'}z_{ij}\pmb w_j
      
     
    xxx^i=∑j=1d′zijwwwj
 考虑整个训练集,原样本点
    
     
      
       
        
         x
        
        
         i
        
       
      
      
       \pmb x_i
      
     
    xxxi与基于投影重构的样本点
    
     
      
       
        
         
          x
         
         
          ^
         
        
        
         i
        
       
      
      
       \hat{\pmb x}_i
      
     
    xxx^i之间的距离为
 
     
      
       
        
         
          
           
            
             
              ∑
             
             
              
               i
              
              
               =
              
              
               1
              
             
             
              m
             
            
            
             ∣
            
            
             ∣
            
            
             
              ∑
             
             
              
               j
              
              
               =
              
              
               1
              
             
             
              
               d
              
              
               ′
              
             
            
            
             
              z
             
             
              
               i
              
              
               j
              
             
            
            
             
              w
             
             
              j
             
            
            
             −
            
            
             
              x
             
             
              i
             
            
            
             ∣
            
            
             
              ∣
             
             
              2
             
             
              2
             
            
           
          
         
         
          
           
            
            
             =
            
            
             
              ∑
             
             
              
               i
              
              
               =
              
              
               1
              
             
             
              m
             
            
            
             
              z
             
             
              i
             
             
              T
             
            
            
             
              z
             
             
              i
             
            
            
             −
            
            
             2
            
            
             
              ∑
             
             
              
               i
              
              
               =
              
              
               1
              
             
             
              m
             
            
            
             
              z
             
             
              i
             
             
              T
             
            
            
             
              W
             
             
              T
             
            
            
             
              x
             
             
              i
             
            
            
             +
            
            
             const
            
            
             
            
           
          
         
        
        
         
          
           
          
         
         
          
           
            
            
             ∝
            
            
             −
            
            
             t
            
            
             r
            
            
             (
            
            
             
              W
             
             
              T
             
            
            
             (
            
            
             
              ∑
             
             
              
               i
              
              
               =
              
              
               1
              
             
             
              m
             
            
            
             
              x
             
             
              i
             
            
            
             
              x
             
             
              i
             
             
              T
             
            
            
             )
            
            
             W
            
            
             )
            
           
          
         
        
       
       
         \begin{aligned} \sum_{i=1}^m \Bigg|\Bigg|\sum_{j=1}^{d'}z_{ij}\pmb w_j - \pmb x_i\Bigg|\Bigg|_2^2 &= \sum_{i=1}^m \pmb z_i^T \pmb z_i - 2\sum_{i=1}^m \pmb z_i ^T \pmb W^T \pmb x_i + \operatorname{const}\\ & \propto - tr\Bigg( \pmb W^T\Bigg( \sum_{i=1}^m \pmb x_i \pmb x_i^T\Bigg)\pmb W\Bigg) \end{aligned} 
       
      
     i=1∑m∣∣∣∣∣∣∣∣∣∣j=1∑d′zijwwwj−xxxi∣∣∣∣∣∣∣∣∣∣22=i=1∑mzzziTzzzi−2i=1∑mzzziTWWWTxxxi+const∝−tr(WWWT(i=1∑mxxxixxxiT)WWW)
 根据最近重构性,上式应该被最小化,考虑到
    
     
      
       
        
         w
        
        
         j
        
       
      
      
       \pmb w_j
      
     
    wwwj是标准正交基,
    
     
      
       
        
         ∑
        
        
         i
        
       
       
        
         x
        
        
         i
        
       
       
        
         x
        
        
         i
        
        
         T
        
       
      
      
       \sum_i \pmb x_i \pmb x_i^T
      
     
    ∑ixxxixxxiT是协方差矩阵,有
 
     
      
       
        
         
          
           
          
         
         
          
           
            
            
             
              
               min
              
              
               
              
             
             
              W
             
            
            
             −
            
            
             t
            
            
             r
            
            
             (
            
            
             
              W
             
             
              T
             
            
            
             X
            
            
             
              X
             
             
              T
             
            
            
             W
            
            
             )
            
           
          
         
        
        
         
          
           
          
         
         
          
           
            
            
             s
            
            
             .
            
            
             t
            
            
             .
            
            
            
             
              W
             
             
              T
             
            
            
             W
            
            
             =
            
            
             I
            
            
             .
            
           
          
         
        
       
       
         \begin{aligned} &\underset{W}{\operatorname{min}}- tr( \pmb W^T \pmb X \pmb X^T \pmb W)\\ & s.t. \quad \pmb W^T\pmb W = \pmb I. \end{aligned} 
       
      
     Wmin−tr(WWWTXXXXXXTWWW)s.t.WWWTWWW=III.
 这就是主成分分析的优化目标
 从最大可分性出发,能得到主成分分析的另一种解释。样本点
    
     
      
       
        
         x
        
        
         i
        
       
      
      
       \pmb x_i
      
     
    xxxi在新空间中超平面上的投影是
    
     
      
       
        
         W
        
        
         T
        
       
       
        
         x
        
        
         i
        
       
      
      
       \pmb W^T \pmb x_i
      
     
    WWWTxxxi,若所有样本点的投影能尽可能分开,则应该使投影后样本点的方差最大化
  投影后样本的方差是
    
     
      
       
        
         ∑
        
        
         i
        
       
       
        
         W
        
        
         T
        
       
       
        
         x
        
        
         i
        
       
       
        
         x
        
        
         i
        
        
         T
        
       
       
        W
       
      
      
       \sum_i \pmb W^T \pmb x_i \pmb x_i^T \pmb W
      
     
    ∑iWWWTxxxixxxiTWWW,于是优化目标可写为
投影后样本的方差是
    
     
      
       
        
         ∑
        
        
         i
        
       
       
        
         W
        
        
         T
        
       
       
        
         x
        
        
         i
        
       
       
        
         x
        
        
         i
        
        
         T
        
       
       
        W
       
      
      
       \sum_i \pmb W^T \pmb x_i \pmb x_i^T \pmb W
      
     
    ∑iWWWTxxxixxxiTWWW,于是优化目标可写为
 
     
      
       
        
         
          
           
          
         
         
          
           
            
            
             
              
               max
              
              
               
              
             
             
              W
             
            
            
            
             t
            
            
             r
            
            
             (
            
            
             
              W
             
             
              T
             
            
            
             X
            
            
             
              X
             
             
              T
             
            
            
             W
            
            
             )
            
           
          
         
        
        
         
          
           
          
         
         
          
           
            
            
             s
            
            
             .
            
            
             t
            
            
             .
            
            
            
             
              W
             
             
              T
             
            
            
             W
            
            
             =
            
            
             I
            
            
             .
            
           
          
         
        
       
       
         \begin{aligned} &\underset{W}{\operatorname{max}} \quad tr( \pmb W^T \pmb X \pmb X^T \pmb W)\\ & s.t. \quad \pmb W^T\pmb W = \pmb I. \end{aligned} 
       
      
     Wmaxtr(WWWTXXXXXXTWWW)s.t.WWWTWWW=III.
 使用拉格朗日乘子法可得
 
     
      
       
        
         X
        
        
         
          X
         
         
          T
         
        
        
         W
        
        
         =
        
        
         λ
        
        
         W
        
       
       
         \pmb X\pmb X^T\pmb W = \lambda \pmb W 
       
      
     XXXXXXTWWW=λWWW
 于是对协方差矩阵
    
     
      
       
        X
       
       
        
         X
        
        
         T
        
       
      
      
       \pmb X\pmb X^T
      
     
    XXXXXXT进行特征值分解,将求得的特征值排序:
    
     
      
       
        
         λ
        
        
         1
        
       
       
        ≥
       
       
        
         λ
        
        
         2
        
       
       
        ≥
       
       
        ⋯
       
       
        ≥
       
       
        
         λ
        
        
         d
        
       
      
      
       \lambda_1\ge\lambda_2\ge\cdots\ge\lambda_d
      
     
    λ1≥λ2≥⋯≥λd,再取前d’个特征值对应的特征向量构成
    
     
      
       
        W
       
       
        =
       
       
        (
       
       
        
         w
        
        
         1
        
       
       
        ,
       
       
        
         w
        
        
         2
        
       
       
        ,
       
       
        ⋯
        
       
        ,
       
       
        
         w
        
        
         
          d
         
         
          ′
         
        
       
       
        )
       
      
      
       \pmb W = (\pmb w_1,\pmb w_2,\cdots,\pmb w_{d'})
      
     
    WWW=(www1,www2,⋯,wwwd′)
  降维后的低维空间维数d’通常是由用户事先指定,或通过在d’值不同的低维空间中对k近邻分类器(或其他开销较小的学习器)进行交叉验证来选取较好的d’值。对PCA,还可以从重构的角度设置一个重构阈值,例如t=95%,然后选取使下式成立的最小d’值
降维后的低维空间维数d’通常是由用户事先指定,或通过在d’值不同的低维空间中对k近邻分类器(或其他开销较小的学习器)进行交叉验证来选取较好的d’值。对PCA,还可以从重构的角度设置一个重构阈值,例如t=95%,然后选取使下式成立的最小d’值
 
     
      
       
        
         
          
           s
          
          
           u
          
          
           
            m
           
           
            
             i
            
            
             =
            
            
             1
            
           
           
            
             d
            
            
             ′
            
           
          
          
           
            λ
           
           
            i
           
          
         
         
          
           s
          
          
           u
          
          
           
            m
           
           
            
             i
            
            
             =
            
            
             1
            
           
           
            d
           
          
          
           
            λ
           
           
            i
           
          
         
        
        
         ≥
        
        
         t
        
        
         .
        
       
       
         \frac{sum_{i=1}^{d'}\lambda_i}{sum_{i=1}^{d}\lambda_i}\ge t. 
       
      
     sumi=1dλisumi=1d′λi≥t.
 PCA仅需保留
    
     
      
       
        W
       
      
      
       \pmb W
      
     
    WWW与样本的均值向量即可通过简单的向量减法和矩阵-向量乘法将新样本投影到低维空间。最小的d-d’个特征值向量被舍弃了,但舍弃这部分信息往往是必要的:一方面,舍弃这部门信息之后能使样本的采样密度增大,这正是降维的重要动机;另一方面,当数据收到噪声影响时,最小的特征值所对应的特征向量往往与噪声有关,将他们舍弃能在一定程度上起到去噪的效果
四、核化线性降维
线性降维方法假设从高维空间到低维空间的函数映射是线性的,然而,在现实任务中,可能需要非线性映射才能找到恰当的低维嵌入jiqiao
  为了对“原本采样的”低维空间与降维后的低维空间加以区别,称前者为 “本真”(intrinsic)低维空间
为了对“原本采样的”低维空间与降维后的低维空间加以区别,称前者为 “本真”(intrinsic)低维空间
 非线性降维的一种常用方法,是基于核技巧对线性降维方法进行 “核化”(kernelized),下面以核主成分分析(Kernelized PCA,简称KPCA)为例来进行演示
 假定将在高维特征空间中把数据投影到有
    
     
      
       
        W
       
      
      
       \pmb W
      
     
    WWW确定的超平面上,即PCA欲求解
 
     
      
       
        
         (
        
        
         
          ∑
         
         
          
           i
          
          
           =
          
          
           1
          
         
         
          m
         
        
        
         
          z
         
         
          i
         
        
        
         
          z
         
         
          i
         
         
          T
         
        
        
         )
        
        
         W
        
        
         =
        
        
         λ
        
        
         W
        
       
       
         \bigg(\sum_{i=1}^m z_iz_i^T\bigg)\pmb W = \lambda \pmb W 
       
      
     (i=1∑mziziT)WWW=λWWW
 其中
    
     
      
       
        
         z
        
        
         i
        
       
      
      
       \pmb z_i
      
     
    zzzi是样本点
    
     
      
       
        
         x
        
        
         i
        
       
      
      
       \pmb x_i
      
     
    xxxi在高维特征空间中的像。易知
 
     
      
       
        
         
          
           
            W
           
          
         
         
          
           
            
            
             =
            
            
             
              1
             
             
              λ
             
            
            
             (
            
            
             
              ∑
             
             
              
               i
              
              
               =
              
              
               1
              
             
             
              m
             
            
            
             
              z
             
             
              i
             
            
            
             
              z
             
             
              i
             
             
              T
             
            
            
             )
            
            
             W
            
            
             =
            
            
             
              ∑
             
             
              
               i
              
              
               =
              
              
               1
              
             
             
              m
             
            
            
             
              z
             
             
              i
             
            
            
             
              
               
                z
               
               
                i
               
               
                T
               
              
              
               W
              
             
             
              λ
             
            
           
          
         
        
        
         
          
           
          
         
         
          
           
            
            
             =
            
            
             
              ∑
             
             
              
               i
              
              
               =
              
              
               1
              
             
             
              m
             
            
            
             
              z
             
             
              i
             
            
            
             
              α
             
             
              i
             
            
           
          
         
        
       
       
         \begin{aligned} \pmb W &= \frac{1}{\lambda}\bigg(\sum_{i=1}^m\pmb z_i\pmb z_i^T\bigg)\pmb W = \sum_{i=1}^m\pmb z_i\frac{\pmb z_i^T\pmb W}{\lambda}\\ & = \sum_{i=1}^m \pmb z_i \pmb \alpha_i \end{aligned} 
       
      
     WWW=λ1(i=1∑mzzzizzziT)WWW=i=1∑mzzziλzzziTWWW=i=1∑mzzziαααi
 若空间变换能被显式的表达出来:
 
     
      
       
        
         (
        
        
         
          ∑
         
         
          
           i
          
          
           =
          
          
           1
          
         
         
          m
         
        
        
         ϕ
        
        
         (
        
        
         
          x
         
         
          i
         
        
        
         )
        
        
         ϕ
        
        
         (
        
        
         
          x
         
         
          i
         
        
        
         
          )
         
         
          T
         
        
        
         )
        
        
         W
        
        
         =
        
        
         λ
        
        
         W
        
        
        
         W
        
        
         =
        
        
         
          ∑
         
         
          
           i
          
          
           =
          
          
           1
          
         
         
          m
         
        
        
         ϕ
        
        
         (
        
        
         
          x
         
         
          i
         
        
        
         )
        
        
         
          α
         
         
          i
         
        
       
       
         \bigg(\sum_{i=1}^m \phi(\pmb x_i)\phi(\pmb x_i)^T\bigg)\pmb W = \lambda \pmb W\\ \pmb W = \sum_{i=1}^m \phi(\pmb x_i) \pmb \alpha_i 
       
      
     (i=1∑mϕ(xxxi)ϕ(xxxi)T)WWW=λWWWWWW=i=1∑mϕ(xxxi)αααi
 一般情形下,不清楚
    
     
      
       
        ϕ
       
      
      
       \phi
      
     
    ϕ的具体形式,于是引入核函数
 
     
      
       
        
         κ
        
        
         (
        
        
         
          x
         
         
          i
         
        
        
         ,
        
        
         
          x
         
         
          j
         
        
        
         )
        
        
         =
        
        
         ϕ
        
        
         (
        
        
         
          x
         
         
          i
         
        
        
         
          )
         
         
          T
         
        
        
         ϕ
        
        
         (
        
        
         
          x
         
         
          j
         
        
        
         )
        
        
         .
        
       
       
         \kappa(\pmb x_i, \pmb x_j) = \phi(\pmb x_i)^T\phi(\pmb x_j). 
       
      
     κ(xxxi,xxxj)=ϕ(xxxi)Tϕ(xxxj).
 空间变换可简化为
 
     
      
       
        
         K
        
        
         A
        
        
         =
        
        
         λ
        
        
         A
        
       
       
         \pmb K \pmb A = \lambda \pmb A 
       
      
     KKKAAA=λAAA
 其中
    
     
      
       
        K
       
      
      
       \pmb K
      
     
    KKK为
    
     
      
       
        κ
       
      
      
       \kappa
      
     
    κ对应的核矩阵,
    
     
      
       
        (
       
       
        K
       
       
        
         )
        
        
         
          i
         
         
          j
         
        
       
       
        =
       
       
        κ
       
       
        (
       
       
        
         x
        
        
         i
        
       
       
        ,
       
       
        
         x
        
        
         j
        
       
       
        )
       
       
        ,
       
       
        A
       
       
        =
       
       
        (
       
       
        
         α
        
        
         1
        
       
       
        ;
       
       
        
         α
        
        
         2
        
       
       
        ;
       
       
        ⋯
        
       
        ;
       
       
        
         α
        
        
         m
        
       
       
        )
       
      
      
       \pmb (K)_{ij} = \kappa(\pmb x_i, \pmb x_j),\pmb A = (\pmb \alpha_1;\pmb \alpha_2;\cdots;\pmb \alpha_m)
      
     
    (((K)ij=κ(xxxi,xxxj),AAA=(ααα1;ααα2;⋯;αααm).显然,上式是特征值分解问题,取
    
     
      
       
        K
       
      
      
       \pmb K
      
     
    KKK最大的d’个特征值对应的特征向量即可。
 对新样本
    
     
      
       
        x
       
      
      
       \pmb x
      
     
    xxx,其投影后的第
    
     
      
       
        j
       
       
        (
       
       
        j
       
       
        =
       
       
        1
       
       
        ,
       
       
        2
       
       
        ,
       
       
        ⋯
        
       
        ,
       
       
        
         d
        
        
         ′
        
       
       
        )
       
      
      
       j(j=1,2,\cdots,d')
      
     
    j(j=1,2,⋯,d′)维坐标为
 
     
      
       
        
         
          
           
            
             z
            
            
             j
            
           
          
         
         
          
           
            
            
             =
            
            
             
              w
             
             
              j
             
             
              T
             
            
            
             ϕ
            
            
             (
            
            
             x
            
            
             )
            
            
             =
            
            
             
              ∑
             
             
              
               i
              
              
               =
              
              
               1
              
             
             
              m
             
            
            
             
              α
             
             
              i
             
             
              j
             
            
            
             ϕ
            
            
             (
            
            
             
              x
             
             
              i
             
            
            
             
              )
             
             
              T
             
            
            
             ϕ
            
            
             (
            
            
             x
            
            
             )
            
           
          
         
        
        
         
          
           
          
         
         
          
           
            
            
             =
            
            
             
              ∑
             
             
              
               i
              
              
               =
              
              
               1
              
             
             
              m
             
            
            
             
              α
             
             
              i
             
             
              j
             
            
            
             κ
            
            
             (
            
            
             
              x
             
             
              i
             
            
            
             ,
            
            
             x
            
            
             )
            
           
          
         
        
       
       
         \begin{aligned} z_j &= \pmb w_j^T\phi(\pmb x) = \sum_{i=1}^m\alpha_i^j \phi(\pmb x_i)^T\phi(\pmb x)\\ & =\sum_{i=1}^m \alpha_i^j \kappa(\pmb x_i, \pmb x) \end{aligned} 
       
      
     zj=wwwjTϕ(xxx)=i=1∑mαijϕ(xxxi)Tϕ(xxx)=i=1∑mαijκ(xxxi,xxx)
 为获得投影后的坐标,KPCA需对所有样本求和,因此它的计算开销较大
五、流行学习
- 流行学习(manifold learning) 是一类借鉴了拓扑流行概念的降维方法。“流行”是在局部与欧式空间同胚的空间,换言之,它在局部具有欧式空间的性质,能用欧式距离来进行计算。这给降维方法带来了很大的启发:若低维流行嵌入到高维空间中,则数据样本在高维空间的分布虽然看起来非常复杂,但在局部上仍具有欧式空间的性质,因此,可以容易地在局部建立降维映射关系,然后再设法将局部映射关系推广到全局。当维数降至二维或三维时,能对数据进行可视化展示,因此流行学习可被用于可视化。
1.等度量映射
- 等度量映射(Isometrix Mapping,简称Isomap) 的基本出发点,是认为低维流行嵌入到高维空间之后,直接在高维空间中计算直线距离具有误导性,因为高维空间中的直线距离在低维嵌入流行上是不可达的
  图(a)所示,低维嵌入流形上两点间的距离是 “测地线”(geodesic)距离:想象一只虫子从一点爬到另一点,如果它不能脱离曲面行走,那么图(a)中的红色曲线是距离最短的路径,即S曲面上的测地线,测地点距离是两点之间的本真距离。显然,直接在高维空间中计算直线距离是不恰当的 图(a)所示,低维嵌入流形上两点间的距离是 “测地线”(geodesic)距离:想象一只虫子从一点爬到另一点,如果它不能脱离曲面行走,那么图(a)中的红色曲线是距离最短的路径,即S曲面上的测地线,测地点距离是两点之间的本真距离。显然,直接在高维空间中计算直线距离是不恰当的
 那么,如何计算测地线距离呢?可利用流行在局部上与欧式距离同胚这个性质,对每个点基于欧式距离找出其相邻点,然后就建立一个近邻连接图,图中近邻点之间存在连续,而非近邻点之间不存在连续,于是,计算两个点之间测地线距离的问题,就转变为计算近邻连接图上两点之间的最短路径的图
 在近邻连接图上计算两点之间最短路径,可采用著名的Dijkstra算法Floyd算法,在得到任意两点的距离之后,就可通过介绍的MDS方法获得样本点在低维空间中的坐标
  需要注意的是,Isomap仅是得到了训练样本在低维空间的坐标,对于新样本,如何将其映射到低维空间呢?常用的解决方案,是将训练样本的高维空间坐标作为输入、低维空间作为输出,训练一个回归学习器来对新样本的低维空间坐标进行预测。这显然仅是权宜之计,但目前似乎并没有更好的办法 需要注意的是,Isomap仅是得到了训练样本在低维空间的坐标,对于新样本,如何将其映射到低维空间呢?常用的解决方案,是将训练样本的高维空间坐标作为输入、低维空间作为输出,训练一个回归学习器来对新样本的低维空间坐标进行预测。这显然仅是权宜之计,但目前似乎并没有更好的办法
 对近邻图的构建通常有两种做法,一种是指定近邻点点数,例如欧式距离最近的k个点为近邻点,这样的到的近邻图称为k近邻图;另一种是指定距离阈值 ϵ \epsilon ϵ,距离小于 ϵ \epsilon ϵ的点被认为是近邻点,这样得到的近邻图称为 ϵ \epsilon ϵ近邻图
2.局部线性嵌入
与Isomap试图保持近邻样本之间的距离不同,局部线性嵌入(Locally Linear Embedding,简称LLE) 试图保持领域内样本之间的线性关系,如图所示,假定样本点
    
     
      
       
        
         x
        
        
         i
        
       
      
      
       \pmb x_i
      
     
    xxxi的坐标能通过它的领域样本
    
     
      
       
        
         x
        
        
         j
        
       
       
        ,
       
       
        
         x
        
        
         k
        
       
       
        ,
       
       
        
         x
        
        
         l
        
       
      
      
       \pmb x_j,\pmb x_k,\pmb x_l
      
     
    xxxj,xxxk,xxxl的坐标通过线性组合而重构出来,即
  x
         
         
          i
         
        
        
         =
        
        
         
          w
         
         
          
           i
          
          
           j
          
         
        
        
         
          x
         
         
          j
         
        
        
         +
        
        
         
          w
         
         
          
           i
          
          
           k
          
         
        
        
         
          x
         
         
          k
         
        
        
         +
        
        
         
          w
         
         
          
           i
          
          
           l
          
         
        
        
         
          x
         
         
          l
         
        
       
       
         \pmb x_i = w_{ij}\pmb x_j + w_{ik}\pmb x_k + w_{il}\pmb x_l 
       
      
     xxxi=wijxxxj+wikxxxk+wilxxxl
     
      
       
        
         
          x
         
         
          i
         
        
        
         =
        
        
         
          w
         
         
          
           i
          
          
           j
          
         
        
        
         
          x
         
         
          j
         
        
        
         +
        
        
         
          w
         
         
          
           i
          
          
           k
          
         
        
        
         
          x
         
         
          k
         
        
        
         +
        
        
         
          w
         
         
          
           i
          
          
           l
          
         
        
        
         
          x
         
         
          l
         
        
       
       
         \pmb x_i = w_{ij}\pmb x_j + w_{ik}\pmb x_k + w_{il}\pmb x_l 
       
      
     xxxi=wijxxxj+wikxxxk+wilxxxl
 LLE希望上式得关系在低维空间中得以保持
 LLE先为每个样本
    
     
      
       
        
         x
        
        
         i
        
       
      
      
       \pmb x_i
      
     
    xxxi找到其近邻下标集合
    
     
      
       
        
         Q
        
        
         i
        
       
      
      
       \pmb Q_i
      
     
    QQQi,然后计算出基于
    
     
      
       
        
         Q
        
        
         i
        
       
      
      
       \pmb Q_i
      
     
    QQQi中的样本点对
    
     
      
       
        
         x
        
        
         i
        
       
      
      
       \pmb x_i
      
     
    xxxi进行线性重构的系数
    
     
      
       
        
         w
        
        
         i
        
       
      
      
       \pmb w_i
      
     
    wwwi:
 
     
      
       
        
         
          
           min
          
          
           
          
         
         
          
           
            w
           
           
            1
           
          
          
           ,
          
          
           
            w
           
           
            2
           
          
          
           ,
          
          
           ⋯
           
          
           ,
          
          
           
            w
           
           
            m
           
          
         
        
        
         
          ∑
         
         
          
           i
          
          
           =
          
          
           1
          
         
         
          m
         
        
        
         ∣
        
        
         ∣
        
        
         
          x
         
         
          i
         
        
        
         −
        
        
         
          ∑
         
         
          
           j
          
          
           ∈
          
          
           
            Q
           
           
            i
           
          
         
        
        
         
          w
         
         
          
           i
          
          
           j
          
         
        
        
         
          x
         
         
          j
         
        
        
         ∣
        
        
         
          ∣
         
         
          2
         
         
          2
         
        
        
        
         s
        
        
         .
        
        
         t
        
        
         .
        
        
        
         
          ∑
         
         
          
           j
          
          
           ∈
          
          
           
            Q
           
           
            i
           
          
         
        
        
         
          w
         
         
          
           i
          
          
           j
          
         
        
        
         =
        
        
         1
        
        
         ,
        
       
       
         \underset{w_1,w_2,\cdots,w_m}{\operatorname{min}} \sum_{i=1}^m \Bigg|\Bigg|\pmb x_i - \sum_{j\in Q_i}w_{ij}\pmb x_j\Bigg|\Bigg|_2^2\\ s.t. \quad \sum_{j\in Q_i}w_{ij} = 1, 
       
      
     w1,w2,⋯,wmmini=1∑m∣∣∣∣∣∣∣∣∣∣xxxi−j∈Qi∑wijxxxj∣∣∣∣∣∣∣∣∣∣22s.t.j∈Qi∑wij=1,
 其中
    
     
      
       
        
         x
        
        
         i
        
       
      
      
       \pmb x_i
      
     
    xxxi和
    
     
      
       
        
         x
        
        
         j
        
       
      
      
       \pmb x_j
      
     
    xxxj均为已知,令
    
     
      
       
        
         C
        
        
         
          j
         
         
          k
         
        
       
       
        =
       
       
        (
       
       
        
         x
        
        
         i
        
       
       
        −
       
       
        
         x
        
        
         j
        
       
       
        
         )
        
        
         T
        
       
       
        (
       
       
        
         x
        
        
         i
        
       
       
        −
       
       
        
         x
        
        
         j
        
       
       
        )
       
      
      
       C_{jk} = (\pmb x_i - \pmb x_j)^T(\pmb x_i - \pmb x_j)
      
     
    Cjk=(xxxi−xxxj)T(xxxi−xxxj),
    
     
      
       
        
         w
        
        
         
          i
         
         
          j
         
        
       
      
      
       w_{ij}
      
     
    wij有闭式解
 
     
      
       
        
         
          w
         
         
          
           i
          
          
           j
          
         
        
        
         =
        
        
         
          
           
            ∑
           
           
            
             k
            
            
             ∈
            
            
             
              Q
             
             
              i
             
            
           
          
          
           
            C
           
           
            
             j
            
            
             k
            
           
           
            
             −
            
            
             1
            
           
          
         
         
          
           
            ∑
           
           
            
             l
            
            
             ,
            
            
             s
            
            
             ∈
            
            
             
              Q
             
             
              i
             
            
           
          
          
           
            C
           
           
            
             l
            
            
             s
            
           
           
            
             −
            
            
             1
            
           
          
         
        
       
       
         w_{ij} = \frac{\sum_{k\in Q_i}C_{jk}^{-1}}{\sum_{l,s\in Q_i}C_{ls}^{-1}} 
       
      
     wij=∑l,s∈QiCls−1∑k∈QiCjk−1
 LLE在低维空间中保持
    
     
      
       
        
         w
        
        
         i
        
       
      
      
       \pmb w_i
      
     
    wwwi不变,于是
    
     
      
       
        
         x
        
        
         i
        
       
      
      
       \pmb x_i
      
     
    xxxi对应的低维空间坐标
    
     
      
       
        
         z
        
        
         i
        
       
      
      
       \pmb z_i
      
     
    zzzi可通过下式求解:
 
     
      
       
        
         
          
           min
          
          
           
          
         
         
          
           
            z
           
           
            1
           
          
          
           ,
          
          
           
            z
           
           
            2
           
          
          
           ,
          
          
           ⋯
           
          
           ,
          
          
           
            z
           
           
            m
           
          
         
        
        
         
          ∑
         
         
          
           i
          
          
           =
          
          
           1
          
         
         
          m
         
        
        
         ∣
        
        
         ∣
        
        
         
          z
         
         
          i
         
        
        
         −
        
        
         
          ∑
         
         
          
           j
          
          
           ∈
          
          
           
            Q
           
           
            i
           
          
         
        
        
         
          w
         
         
          
           i
          
          
           j
          
         
        
        
         
          z
         
         
          j
         
        
        
         ∣
        
        
         
          ∣
         
         
          2
         
         
          2
         
        
        
       
       
         \underset{z_1,z_2,\cdots,z_m}{\operatorname{min}} \sum_{i=1}^m \Bigg|\Bigg|\pmb z_i - \sum_{j\in Q_i}w_{ij}\pmb z_j\Bigg|\Bigg|_2^2\\ 
       
      
     z1,z2,⋯,zmmini=1∑m∣∣∣∣∣∣∣∣∣∣zzzi−j∈Qi∑wijzzzj∣∣∣∣∣∣∣∣∣∣22
 令
    
     
      
       
        Z
       
       
        =
       
       
        (
       
       
        
         z
        
        
         1
        
       
       
        ,
       
       
        
         z
        
        
         2
        
       
       
        ,
       
       
        ⋯
        
       
        ,
       
       
        
         z
        
        
         m
        
       
       
        )
       
       
        ∈
       
       
        
         R
        
        
         
          
           d
          
          
           ′
          
         
         
          ×
         
         
          m
         
        
       
       
        ,
       
       
        (
       
       
        W
       
       
        
         )
        
        
         
          i
         
         
          j
         
        
       
       
        =
       
       
        
         w
        
        
         
          i
         
         
          j
         
        
       
      
      
       \pmb Z = (\pmb z_1,\pmb z_2,\cdots,\pmb z_m) \in \mathbb R^{d'\times m},(\pmb W)_{ij} = w_{ij}
      
     
    ZZZ=(zzz1,zzz2,⋯,zzzm)∈Rd′×m,(WWW)ij=wij,
 
     
      
       
        
         M
        
        
         =
        
        
         (
        
        
         I
        
        
         −
        
        
         W
        
        
         
          )
         
         
          T
         
        
        
         (
        
        
         I
        
        
         −
        
        
         W
        
        
         )
        
       
       
         \pmb M = (\pmb I - \pmb W) ^T(\pmb I - \pmb W) 
       
      
     MMM=(III−WWW)T(III−WWW)
 上求解式可重写为
 
     
      
       
        
         
          
           min
          
          
           
          
         
         
          Z
         
        
        
          
        
        
         t
        
        
         r
        
        
         (
        
        
         Z
        
        
         M
        
        
         
          Z
         
         
          T
         
        
        
         )
        
        
         ,
        
        
        
         s
        
        
         .
        
        
         t
        
        
         .
        
        
          
        
        
         Z
        
        
         
          Z
         
         
          T
         
        
        
         =
        
        
         I
        
       
       
         \underset{Z} {\operatorname{min}} \ tr(\pmb Z \pmb M \pmb Z^T),\\ s.t.\ \pmb Z\pmb Z^T = \pmb I 
       
      
     Zmin tr(ZZZMMMZZZT),s.t. ZZZZZZT=III
 上式可通过特征值分解求解:
    
     
      
       
        M
       
      
      
       \pmb M
      
     
    MMM最小的d’个特征值对应的特征向量组成的矩阵即为
    
     
      
       
        
         Z
        
        
         T
        
       
      
      
       \pmb Z^T
      
     
    ZZZT
 
六、度量学习
在机器学习中,对高维数据进行降维的主要目的是希望找到一个适合的低维空间,在此空间中进行学习能比原始空间性能更好。事实上,每个空间对应了在样本属性上定义的一个距离度量,而寻找合适的空间,实质上就是寻找一个合适的距离度量,那么,为何不直接尝试“学习”出一个合适的距离度量呢?这就是度量学习(metric learning) 的基本动机
 对两个d维样本
    
     
      
       
        
         x
        
        
         i
        
       
      
      
       \pmb x_i
      
     
    xxxi和
    
     
      
       
        
         x
        
        
         j
        
       
      
      
       \pmb x_j
      
     
    xxxj,它们之间的平方欧式距离可写为
 
     
      
       
        
         d
        
        
         i
        
        
         s
        
        
         
          t
         
         
          
           e
          
          
           d
          
         
         
          2
         
        
        
         (
        
        
         
          x
         
         
          i
         
        
        
         ,
        
        
         
          x
         
         
          j
         
        
        
         )
        
        
         =
        
        
         ∣
        
        
         ∣
        
        
         
          x
         
         
          i
         
        
        
         −
        
        
         
          x
         
         
          j
         
        
        
         ∣
        
        
         
          ∣
         
         
          2
         
         
          2
         
        
        
         =
        
        
         d
        
        
         i
        
        
         s
        
        
         
          t
         
         
          
           i
          
          
           j
          
          
           ,
          
          
           1
          
         
         
          2
         
        
        
         +
        
        
         d
        
        
         i
        
        
         s
        
        
         
          t
         
         
          
           i
          
          
           j
          
          
           ,
          
          
           2
          
         
         
          2
         
        
        
         +
        
        
         ⋯
        
        
         +
        
        
         d
        
        
         i
        
        
         s
        
        
         
          t
         
         
          
           i
          
          
           j
          
          
           ,
          
          
           d
          
         
         
          2
         
        
        
         ,
        
       
       
         dist_{ed}^2(\pmb x_i,\pmb x_j) = ||\pmb x_i - \pmb x_j||_2^2 = dist_{ij,1}^2 +dist_{ij,2}^2+\cdots+dist_{ij,d}^2, 
       
      
     disted2(xxxi,xxxj)=∣∣xxxi−xxxj∣∣22=distij,12+distij,22+⋯+distij,d2,
 其中
    
     
      
       
        d
       
       
        i
       
       
        s
       
       
        
         t
        
        
         
          i
         
         
          j
         
         
          ,
         
         
          k
         
        
       
      
      
       dist_{ij,k}
      
     
    distij,k表示
    
     
      
       
        
         x
        
        
         i
        
       
      
      
       \pmb x_i
      
     
    xxxi与
    
     
      
       
        
         x
        
        
         j
        
       
      
      
       \pmb x_j
      
     
    xxxj在第k维上的距离。若假定不同属性的重要性不同,则可引入属性权重
    
     
      
       
        w
       
      
      
       \pmb w
      
     
    www,得到
 
     
      
       
        
         
          
           
            
             d
            
            
             i
            
            
             s
            
            
             
              t
             
             
              
               w
              
              
               e
              
              
               d
              
             
             
              2
             
            
            
             (
            
            
             
              x
             
             
              i
             
            
            
             ,
            
            
             
              x
             
             
              j
             
            
            
             )
            
           
          
         
         
          
           
            
            
             =
            
            
             ∣
            
            
             ∣
            
            
             
              x
             
             
              i
             
            
            
             −
            
            
             
              x
             
             
              j
             
            
            
             ∣
            
            
             
              ∣
             
             
              2
             
             
              2
             
            
            
             =
            
            
             
              w
             
             
              1
             
            
            
             ⋅
            
            
             d
            
            
             i
            
            
             s
            
            
             
              t
             
             
              
               i
              
              
               j
              
              
               ,
              
              
               1
              
             
             
              2
             
            
            
             +
            
            
             
              w
             
             
              2
             
            
            
             ⋅
            
            
             d
            
            
             i
            
            
             s
            
            
             
              t
             
             
              
               i
              
              
               j
              
              
               ,
              
              
               2
              
             
             
              2
             
            
            
             +
            
            
             ⋯
            
            
             +
            
            
             
              w
             
             
              d
             
            
            
             ⋅
            
            
             d
            
            
             i
            
            
             s
            
            
             
              t
             
             
              
               i
              
              
               j
              
              
               ,
              
              
               d
              
             
             
              2
             
            
           
          
         
        
        
         
          
           
          
         
         
          
           
            
            
             =
            
            
             (
            
            
             
              x
             
             
              i
             
            
            
             −
            
            
             
              x
             
             
              j
             
            
            
             
              )
             
             
              T
             
            
            
             W
            
            
             (
            
            
             
              x
             
             
              i
             
            
            
             −
            
            
             
              x
             
             
              j
             
            
            
             )
            
           
          
         
        
       
       
         \begin{aligned} dist_{wed}^2(\pmb x_i,\pmb x_j) &= ||\pmb x_i - \pmb x_j||_2^2 = w_1\cdot dist_{ij,1}^2 +w_2\cdot dist_{ij,2}^2+\cdots+w_d\cdot dist_{ij,d}^2\\ & = (\pmb x_i - \pmb x_j)^T \pmb W(\pmb x_i - \pmb x_j) \end{aligned} 
       
      
     distwed2(xxxi,xxxj)=∣∣xxxi−xxxj∣∣22=w1⋅distij,12+w2⋅distij,22+⋯+wd⋅distij,d2=(xxxi−xxxj)TWWW(xxxi−xxxj)
 其中
    
     
      
       
        
         w
        
        
         i
        
       
       
        ≥
       
       
        0
       
       
        ,
       
       
        W
       
       
        =
       
       
        diag
       
       
        
       
       
        (
       
       
        w
       
       
        )
       
      
      
       w_i\ge 0, \pmb W = \operatorname{diag}(\pmb w)
      
     
    wi≥0,WWW=diag(www)是一个对角矩阵,
    
     
      
       
        (
       
       
        W
       
       
        
         )
        
        
         
          i
         
         
          i
         
        
       
       
        =
       
       
        
         w
        
        
         i
        
       
      
      
       (\pmb W)_{ii} = w_i
      
     
    (WWW)ii=wi
 上式中的
    
     
      
       
        W
       
      
      
       \pmb W
      
     
    WWW可通过学习确定,但还能再往前一步:
    
     
      
       
        W
       
      
      
       \pmb W
      
     
    WWW的非对角元素均为零,这意味着坐标轴正交的,即属性之间无关;但现实问题中往往不是这样,为此,将上式中的
    
     
      
       
        W
       
      
      
       \pmb W
      
     
    WWW替换为一个普通的半正定对称矩阵
    
     
      
       
        M
       
      
      
       \pmb M
      
     
    MMM,于是就得到了马氏距离(Mahalanobis distance)
 
     
      
       
        
         d
        
        
         i
        
        
         s
        
        
         
          t
         
         
          
           m
          
          
           a
          
          
           h
          
         
         
          2
         
        
        
         (
        
        
         
          x
         
         
          i
         
        
        
         ,
        
        
         
          x
         
         
          j
         
        
        
         )
        
        
         =
        
        
         (
        
        
         
          x
         
         
          i
         
        
        
         −
        
        
         
          x
         
         
          j
         
        
        
         
          )
         
         
          T
         
        
        
         M
        
        
         (
        
        
         
          x
         
         
          i
         
        
        
         −
        
        
         
          x
         
         
          j
         
        
        
         )
        
        
         =
        
        
         ∣
        
        
         ∣
        
        
         
          x
         
         
          i
         
        
        
         −
        
        
         
          x
         
         
          j
         
        
        
         ∣
        
        
         
          ∣
         
         
          M
         
         
          2
         
        
       
       
         dist_{mah}^2(\pmb x_i,\pmb x_j) = (\pmb x_i - \pmb x_j)^T \pmb M(\pmb x_i - \pmb x_j) = ||\pmb x_i - \pmb x_j||_M^2 
       
      
     distmah2(xxxi,xxxj)=(xxxi−xxxj)TMMM(xxxi−xxxj)=∣∣xxxi−xxxj∣∣M2
 其中的
    
     
      
       
        M
       
      
      
       \pmb M
      
     
    MMM亦称“度量矩阵”,而度量学习则是对
    
     
      
       
        M
       
      
      
       \pmb M
      
     
    MMM进行学习。注意到为了保持距离非负且对称,
    
     
      
       
        M
       
      
      
       \pmb M
      
     
    MMM必须是(半)正定对称矩阵,即必有正交基
    
     
      
       
        P
       
      
      
       \pmb P
      
     
    PPP使得
    
     
      
       
        M
       
      
      
       \pmb M
      
     
    MMM能重写为
    
     
      
       
        M
       
       
        =
       
       
        P
       
       
        
         P
        
        
         T
        
       
      
      
       \pmb M =\pmb P \pmb P^T
      
     
    MMM=PPPPPPT
 对
    
     
      
       
        M
       
      
      
       \pmb M
      
     
    MMM进行学习当然要设置一个目标。假定我们是希望提高近邻分类器的性能,则可将
    
     
      
       
        M
       
      
      
       \pmb M
      
     
    MMM直接嵌入到近邻分类器的评价指标中去,通过优化该性能指标相应地求得
    
     
      
       
        M
       
      
      
       \pmb M
      
     
    MMM。下面以近邻成分分析(Neighborhood Component Analysis,简称NCA) 为例进行讨论
 近邻分类器在进行判别时通常使用多数投票法,邻域中的每个样本投1票,领域外的样本投0票。不妨将其替换为概率投票法。对于任意样本
    
     
      
       
        
         x
        
        
         j
        
       
      
      
       \pmb x_j
      
     
    xxxj,它对
    
     
      
       
        
         x
        
        
         i
        
       
      
      
       \pmb x_i
      
     
    xxxi分类结果影响的概率为
 
     
      
       
        
         
          p
         
         
          
           i
          
          
           j
          
         
        
        
         =
        
        
         
          
           exp
          
          
           
          
          
           (
          
          
           −
          
          
           ∣
          
          
           ∣
          
          
           
            x
           
           
            i
           
          
          
           −
          
          
           
            x
           
           
            j
           
          
          
           ∣
          
          
           
            ∣
           
           
            M
           
           
            2
           
          
          
           )
          
         
         
          
           
            ∑
           
           
            l
           
          
          
           exp
          
          
           
          
          
           (
          
          
           −
          
          
           ∣
          
          
           ∣
          
          
           
            x
           
           
            i
           
          
          
           −
          
          
           
            x
           
           
            l
           
          
          
           ∣
          
          
           
            ∣
           
           
            M
           
           
            2
           
          
          
           )
          
         
        
       
       
         p_{ij} = \frac{\operatorname{exp}\bigg(-||\pmb x_i - \pmb x_j||_M^2\bigg)}{\sum_l\operatorname{exp}\bigg(-||\pmb x_i - \pmb x_l||_M^2\bigg)} 
       
      
     pij=∑lexp(−∣∣xxxi−xxxl∣∣M2)exp(−∣∣xxxi−xxxj∣∣M2)
 当
    
     
      
       
        i
       
       
        =
       
       
        j
       
      
      
       i=j
      
     
    i=j时,
    
     
      
       
        
         p
        
        
         
          i
         
         
          j
         
        
       
      
      
       p_{ij}
      
     
    pij最大。显然,
    
     
      
       
        
         x
        
        
         j
        
       
      
      
       \pmb x_j
      
     
    xxxj对
    
     
      
       
        
         x
        
        
         i
        
       
      
      
       \pmb x_i
      
     
    xxxi的影响随着它们之间距离的增大而减小。若以留一法(LOO)正确率的最大化为目标,则可计算
    
     
      
       
        
         x
        
        
         i
        
       
      
      
       \pmb x_i
      
     
    xxxi的留一法正确率,即它被自身之外的所有样本正确分类的概率为
 
     
      
       
        
         
          p
         
         
          i
         
        
        
         =
        
        
         
          ∑
         
         
          
           j
          
          
           ∈
          
          
           
            Ω
           
           
            i
           
          
         
        
        
         
          p
         
         
          
           i
          
          
           j
          
         
        
       
       
         p_i = \sum_{j\in \Omega_i}p_{ij} 
       
      
     pi=j∈Ωi∑pij
 其中
    
     
      
       
        
         Ω
        
        
         i
        
       
      
      
       \Omega_i
      
     
    Ωi表示与
    
     
      
       
        
         x
        
        
         i
        
       
      
      
       \pmb x_i
      
     
    xxxi属于相同类别的样本的下标集合。于是,整个样本集上的留一法的正确率为
 
     
      
       
        
         
          ∑
         
         
          
           i
          
          
           =
          
          
           1
          
         
         
          m
         
        
        
         
          p
         
         
          i
         
        
        
         =
        
        
         
          ∑
         
         
          
           i
          
          
           =
          
          
           1
          
         
         
          m
         
        
        
         
          ∑
         
         
          
           j
          
          
           ∈
          
          
           
            Ω
           
           
            i
           
          
         
        
        
         
          p
         
         
          
           i
          
          
           j
          
         
        
       
       
         \sum_{i=1}^mp_i = \sum_{i=1}^m\sum_{j\in \Omega_i}p_{ij} 
       
      
     i=1∑mpi=i=1∑mj∈Ωi∑pij
 再考虑到
    
     
      
       
        M
       
       
        =
       
       
        P
       
       
        
         P
        
        
         T
        
       
      
      
       \pmb M =\pmb P \pmb P^T
      
     
    MMM=PPPPPPT,则NCA的优化目标为
 
     
      
       
        
         
          
           min
          
          
           
          
         
         
          P
         
        
        
          
        
        
         1
        
        
         −
        
        
         
          ∑
         
         
          
           i
          
          
           =
          
          
           1
          
         
         
          m
         
        
        
         
          ∑
         
         
          
           j
          
          
           ∈
          
          
           
            Ω
           
           
            i
           
          
         
        
        
         
          
           exp
          
          
           
          
          
           (
          
          
           −
          
          
           ∣
          
          
           ∣
          
          
           
            P
           
           
            T
           
          
          
           
            x
           
           
            i
           
          
          
           −
          
          
           
            P
           
           
            T
           
          
          
           
            x
           
           
            j
           
          
          
           ∣
          
          
           
            ∣
           
           
            2
           
           
            2
           
          
          
           )
          
         
         
          
           
            ∑
           
           
            l
           
          
          
           exp
          
          
           
          
          
           (
          
          
           −
          
          
           ∣
          
          
           ∣
          
          
           
            P
           
           
            T
           
          
          
           
            x
           
           
            i
           
          
          
           −
          
          
           
            P
           
           
            T
           
          
          
           
            x
           
           
            l
           
          
          
           ∣
          
          
           
            ∣
           
           
            2
           
           
            2
           
          
          
           )
          
         
        
       
       
         \underset{P}{\operatorname{min}}\ 1- \sum_{i=1}^m\sum_{j\in \Omega_i}\frac{\operatorname{exp}\bigg(-||\pmb P^T\pmb x_i - \pmb P^T\pmb x_j||_2^2\bigg)}{\sum_l\operatorname{exp}\bigg(-||\pmb P^T\pmb x_i -\pmb P^T \pmb x_l||_2^2\bigg)} 
       
      
     Pmin 1−i=1∑mj∈Ωi∑∑lexp(−∣∣PPPTxxxi−PPPTxxxl∣∣22)exp(−∣∣PPPTxxxi−PPPTxxxj∣∣22)
 求解上式即可得到最大化近邻分类器LOO正确率的度量矩阵
    
     
      
       
        M
       
      
      
       \pmb M
      
     
    MMM
 实际上,不仅能把错误率这样的监督学习目的作为度量学习优化的目标,还能在度量学习中引入领域知识。例如,若已知某些样本相似、某些样本不相似,则可定义“必连”(must-link)约束集合
    
     
      
       
        M
       
      
      
       \mathcal M
      
     
    M与“勿连”(cannot-link)约束集合
    
     
      
       
        C
       
      
      
       \mathcal C
      
     
    C,
    
     
      
       
        (
       
       
        
         x
        
        
         i
        
       
       
        ,
       
       
        
         x
        
        
         j
        
       
       
        )
       
       
        ∈
       
       
        M
       
      
      
       (\pmb x_i,\pmb x_j)\in \mathcal M
      
     
    (xxxi,xxxj)∈M表示两者相似,
    
     
      
       
        (
       
       
        
         x
        
        
         i
        
       
       
        ,
       
       
        
         x
        
        
         j
        
       
       
        )
       
       
        ∈
       
       
        C
       
      
      
       (\pmb x_i,\pmb x_j)\in \mathcal C
      
     
    (xxxi,xxxj)∈C表示两者不相似。显然我们希望相似的样本之间距离较小,不相似的样本之间距离较大,于是可通过求解下面这个凸优化问题获得适当的度量矩阵
 
     
      
       
        
         
          
           
            
           
          
          
           
            
             
             
              
               
                min
               
               
                
               
              
              
               M
              
             
             
              
               ∑
              
              
               
                (
               
               
                
                 x
                
                
                 i
                
               
               
                ,
               
               
                
                 x
                
                
                 j
                
               
               
                )
               
               
                ∈
               
               
                M
               
              
             
             
              ∣
             
             
              ∣
             
             
              
               x
              
              
               i
              
             
             
              −
             
             
              
               x
              
              
               j
              
             
             
              ∣
             
             
              
               ∣
              
              
               M
              
              
               2
              
             
            
           
          
         
         
          
           
            
           
          
          
           
            
             
             
              s
             
             
              .
             
             
              t
             
             
              .
             
             
               
             
             
              
               ∑
              
              
               
                (
               
               
                
                 x
                
                
                 i
                
               
               
                ,
               
               
                
                 x
                
                
                 k
                
               
               
                k
               
               
                i
               
               
                n
               
               
                C
               
              
             
             
              ∣
             
             
              ∣
             
             
              
               x
              
              
               i
              
             
             
              −
             
             
              
               x
              
              
               k
              
             
             
              ∣
             
             
              
               ∣
              
              
               M
              
              
               2
              
             
             
              ≥
             
             
              1
             
             
              ,
             
            
           
          
         
        
        
        
         M
        
        
         ⪰
        
        
         0
        
        
         ,
        
       
       
         \begin{aligned} & \underset{M}{\operatorname{min}} \sum_{(x_i,x_j)\in \mathcal M}||\pmb x_i - \pmb x_j||_M^2\\ & s.t. \ \sum_{(x_i,x_kkin \mathcal C}||\pmb x_i - \pmb x_k||_M^2 \ge 1,\\ \end{aligned}\\ \pmb M \succeq 0, 
       
      
     Mmin(xi,xj)∈M∑∣∣xxxi−xxxj∣∣M2s.t. (xi,xkkinC∑∣∣xxxi−xxxk∣∣M2≥1,MMM⪰0,
 其中约束
    
     
      
       
        M
       
       
        ⪰
       
       
        0
       
      
      
       \pmb M \succeq 0
      
     
    MMM⪰0表明
    
     
      
       
        M
       
      
      
       \pmb M
      
     
    MMM必须是半正定的
 不同的度量学习方法针对不同目标获得“好”的半正定对称距离度量矩阵
    
     
      
       
        M
       
      
      
       \pmb M
      
     
    MMM,若
    
     
      
       
        M
       
      
      
       \pmb M
      
     
    MMM是一个低秩矩阵,则通过对
    
     
      
       
        M
       
      
      
       \pmb M
      
     
    MMM进行特征值分解,总能找到一组正交基,其正交基数目为矩阵
    
     
      
       
        M
       
      
      
       \pmb M
      
     
    MMM的秩
    
     
      
       
        rank
       
       
        
       
       
        (
       
       
        M
       
       
        )
       
      
      
       \operatorname{rank}(\pmb M)
      
     
    rank(MMM),小于原属性数d。于是,度量学习学得的结果可衍生出一个降维矩阵
    
     
      
       
        P
       
       
        ∈
       
       
        
         R
        
        
         
          d
         
         
          ×
         
         
          rank
         
         
          
         
         
          (
         
         
          M
         
         
          )
         
        
       
      
      
       \pmb P\in \mathbb R^{d\times \operatorname{rank}(M)}
      
     
    PPP∈Rd×rank(M),能用于降维之目的
总结
二刷精简










