Representing the Class Conditional Density

1. 表示先验 p ( y ) p(y) p(y)

表示每个类别的先验概率 p ( y ) p(y) p(y) 是相对简单的。我们可以通过计算每个类别的频率来估计先验概率,例如:

p ( y = C k ) = 类别  C k  中的样本数 总样本数 p(y = C_k) = \frac{\text{类别 } C_k \text{ 中的样本数}}{\text{总样本数}} p(y=Ck)=总样本数类别 Ck 中的样本数

这样可以得出随机选择一个样本属于某一类别 C k C_k Ck 的概率。


2. 为条件密度 p ( x ∣ y ) p(x|y) p(xy) 选择概率模型

在监督学习中,给定类别 y y y 后,我们需要为输入特征 x x x 建立条件概率分布模型。

多元高斯分布

对于多元连续数据(即 x ∈ R D \mathbf{x} \in \mathbb{R}^D xRD),一种常用的模型是多元高斯分布。类别条件密度可以表示为:

p ( x ∣ y = C k ) = 1 ( 2 π ) D / 2 ∣ Σ k ∣ 1 / 2 exp ⁡ ( − 1 2 ( x − μ k ) ⊤ Σ k − 1 ( x − μ k ) ) p(\mathbf{x} | y = C_k) = \frac{1}{(2\pi)^{D/2} |\Sigma_k|^{1/2}} \exp\left( -\frac{1}{2} (\mathbf{x} - \mu_k)^\top \Sigma_k^{-1} (\mathbf{x} - \mu_k) \right) p(xy=Ck)=(2π)D/2Σk1/21exp(21(xμk)Σk1(xμk))

其中:

  • μ k \mu_k μk 是类别 C k C_k Ck 的均值向量,
  • Σ k \Sigma_k Σk 是类别 C k C_k Ck 的协方差矩阵,表示类别中不同特征之间的关系。
为什么使用多元高斯分布?

多元高斯分布在分类问题中被广泛使用,原因如下:

  • 具有良好的数学可处理性。
  • 对于接近正态分布的数据表现良好。
  • 可以通过协方差矩阵建模特征之间的复杂关系。

3. 协方差矩阵的估计挑战

使用多元高斯模型的主要挑战在于为每个类别的协方差矩阵 Σ k \Sigma_k Σk 估计参数的数量,特别是在高维数据中。

估计 D ( D + 1 ) / 2 D(D+1)/2 D(D+1)/2 个参数

对于每个类别 C k C_k Ck,我们需要估计一个协方差矩阵 Σ k \Sigma_k Σk,它是对称的 D × D D \times D D×D 矩阵。由于矩阵是对称的,因此只需要估计 D ( D + 1 ) 2 \frac{D(D+1)}{2} 2D(D+1) 个独立参数(不是 D 2 D^2 D2,因为矩阵的一半是镜像对称的)。

  • 例如,如果 D = 100 D = 100 D=100(即 100 个特征),则需要估计 100 ( 100 + 1 ) 2 = 5050 \frac{100(100 + 1)}{2} = 5050 2100(100+1)=5050 个参数,才能得到每个类别的协方差矩阵。如果有多个类别,参数的数量会线性增长。
为什么这会成为问题?

当特征数 D D D 很大时,参数的数量以平方关系增长 D ( D + 1 ) / 2 D(D + 1)/2 D(D+1)/2。如果数据集不够大,估计这么多参数就会变得困难。这可能导致以下几个问题:

  • 过拟合:当参数数量相对于数据点过多时,模型可能过于贴合训练数据,导致在新数据上的泛化能力较差。
  • 计算复杂度:估计和求逆大规模的协方差矩阵会非常耗时。
  • 数值不稳定:在高维情况下,协方差矩阵 Σ k \Sigma_k Σk 可能会变得病态(ill-conditioned),导致求逆困难,数值计算不稳定。

4. 解决高维问题的可能方案

为了应对估计高维协方差矩阵中参数过多的问题,有几种常见的解决方法:

1. 对角协方差矩阵假设(Cov是0)

假设特征是独立的,只对角线上元素(每个特征的方差)进行建模。此时协方差矩阵简化为:

Σ k = diag ( σ 1 2 , σ 2 2 , … , σ D 2 ) \Sigma_k = \text{diag}(\sigma_1^2, \sigma_2^2, \dots, \sigma_D^2) Σk=diag(σ12,σ22,,σD2)

这将每个类别的参数数量从 D ( D + 1 ) 2 \frac{D(D + 1)}{2} 2D(D+1) 降低到 D D D,但代价是假设特征之间没有相关性。

2. 共用协方差矩阵(LDA 假设)

另一种方法是假设所有类别共用同一个协方差矩阵,即 Σ k = Σ \Sigma_k = \Sigma Σk=Σ,这就是线性判别分析(LDA) 中使用的假设。这种方法的好处是,只需要为所有类别估计一个协方差矩阵,参数的数量为 D ( D + 1 ) 2 \frac{D(D + 1)}{2} 2D(D+1),显著减少了模型复杂性。

3. 正则化(收缩)

可以使用正则化技术防止在估计协方差矩阵时过拟合。常见的一个方法是收缩,将估计的协方差矩阵 “收缩” 到更简单的矩阵(如单位矩阵)上,以提高估计的稳健性:

Σ k = ( 1 − λ ) Σ ^ k + λ I \Sigma_k = (1 - \lambda) \hat{\Sigma}_k + \lambda I Σk=(1λ)Σ^k+λI

其中 λ \lambda λ 是一个正则化参数,用于控制估计的协方差矩阵 Σ ^ k \hat{\Sigma}_k Σ^k 和单位矩阵 I I I 之间的平衡。

4. 降维

在估计协方差矩阵之前,你可以使用像主成分分析(PCA)线性判别分析(LDA) 这样的技术对数据进行降维处理。这些方法可以将数据投影到低维子空间,从而减少特征数量 D D D,进而减少需要估计的参数数量。


总结

  • 多元高斯分布通常用于建模分类问题中的类别条件密度,适合处理连续数据。
  • 在高维数据中,估计协方差矩阵是一个挑战,因为每个类别的协方差矩阵涉及 D ( D + 1 ) / 2 D(D + 1)/2 D(D+1)/2 个参数。
  • 为了解决这个问题,可以采取以下措施:
    • 假设对角协方差矩阵(特征独立假设),
    • 使用所有类别共用的协方差矩阵(LDA),
    • 应用正则化技术(如收缩),
    • 对数据进行降维处理(如 PCA 或 LDA)。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值