首页 > 其他分享 >线性因子模型 - 概率PCA和因子分析篇

线性因子模型 - 概率PCA和因子分析篇

时间:2024-09-08 18:51:06浏览次数:12  
标签:text boldsymbol pPCA 因子分析 线性 PCA sigma

序言

在探索数据科学与机器学习的浩瀚领域中,深度学习作为一股不可小觑的力量,正以前所未有的方式重塑着我们对数据处理与知识发现的理解。在这一宏大的框架下,概率主成分分析( Probabilistic PCA, pPCA \text{Probabilistic PCA, pPCA} Probabilistic PCA, pPCA)与因子分析作为经典与现代的交汇点,不仅承载着统计学的深厚底蕴,也融合了深度学习的先进理念,成为理解复杂数据结构的重要工具。 pPCA \text{pPCA} pPCA与因子分析均旨在通过降维技术揭示数据中的隐藏结构,前者是传统 PCA \text{PCA} PCA的概率化延伸,赋予了数据点以概率分布的形式存在,后者则更侧重于从协方差结构中提取潜在的共同因子,两者虽路径不同,却殊途同归,共同为数据分析师和科学家提供了深入理解数据本质的强大武器。

概率PCA和因子分析

  • 概率 PCA \text{PCA} PCA ( probabilistic PCA \text{probabilistic PCA} probabilistic PCA), 因子分析和其他线性因子模型是等式(线性因子模型引言篇 - 公式1, 线性因子模型引言篇 - 公式2)的特殊情况,并且仅在对观测到 x \boldsymbol{x} x 之前的噪声分布和潜变量 h \boldsymbol{h} h先验的选择上有所不同。
  • 因子分析 ( factor analysis \text{factor analysis} factor analysis) ( Bartholomew, 1987; Basilevsky, 1994 \text{Bartholomew, 1987; Basilevsky, 1994} Bartholomew, 1987; Basilevsky, 1994) 中,潜变量的先验是一个方差为单位矩阵的高斯分布:
    h ∼ N ( h ; 0 , I ) \boldsymbol{h}\sim \mathcal{N}(\boldsymbol{h};\boldsymbol{0},\boldsymbol{I}) h∼N(h;0,I) — 公式1 \quad\textbf{---\footnotesize{公式1}} —公式1
  • 同时,假定观察值 x i x_i xi​ 在给定 h \boldsymbol{h} h 的条件下是条件独立 ( conditionally independent \text{conditionally independent} conditionally independent) 的。具体的说,噪声可以被假设为是从对角协方差矩阵的高斯分布中抽出的, 协方差矩阵为 ψ = diag ( σ 2 ) \boldsymbol{\psi}=\text{diag}(\boldsymbol{\sigma^2}) ψ=diag(σ2),其中 σ 2 = [ σ 1 2 , σ 2 2 , … , σ n 2 ] ⊤ \boldsymbol{\sigma^2}=[\sigma_1^2,\sigma_2^2,\dots,\sigma_n^2]^\top σ2=[σ12​,σ22​,…,σn2​]⊤ 表示一个向量,每个元素表示一个变量的方差。
  • 因此, 潜变量的作用是捕获不同观测变量 x i x_i xi​ 之间的依赖关系。实际上,可以容易地看出 x \boldsymbol{x} x 服从多维正态分布,并满足: x ∼ N ( x ; b , W W ⊤ + ψ ) \text{x}\sim\mathcal{N}(\boldsymbol{x};\boldsymbol{b},\boldsymbol{WW}^\top+\boldsymbol{\psi}) x∼N(x;b,WW⊤+ψ) — 公式2 \quad\textbf{---\footnotesize{公式2}} —公式2
  • 为了将 PCA \text{PCA} PCA引入到概率框架中,我们可以对因子分析模型进行轻微修改,使条件方差 σ i 2 \sigma_i^2 σi2​ 等于同一个值。
    • 在这种情况下, x \boldsymbol{x} x 的协方差简化为 W W ⊤ + σ 2 I \boldsymbol{WW}^\top+\boldsymbol{\sigma}^2\boldsymbol{I} WW⊤+σ2I,这里的 σ 2 \sigma^2 σ2是一个标量。
    • 由此可以得到条件分布,如下: x ∼ N ( x ; b , W W ⊤ + σ 2 I ) \text{x}\sim\mathcal{N}(\boldsymbol{x};\boldsymbol{b},\boldsymbol{WW}^\top+\sigma^2\boldsymbol{I}) x∼N(x;b,WW⊤+σ2I) — 公式3 \quad\textbf{---\footnotesize{公式3}} —公式3
    • 或者等价于: x = W h + b + σ z \text{x}=\boldsymbol{Wh}+\boldsymbol{b}+\sigma\textbf{z} x=Wh+b+σz — 公式4 \quad\textbf{---\footnotesize{公式4}} —公式4
      • 其中 z ∼ N ( z ; 0 , I ) \textbf{z}\sim\mathcal{N}(\boldsymbol{z};\boldsymbol{0},\boldsymbol{I}) z∼N(z;0,I)是高斯噪音。
      • 之后 Tipping and Bishop (1999) \text{Tipping and Bishop (1999)} Tipping and Bishop (1999) 提出了一种迭代的 EM \text{EM} EM算法来估计参数 W \boldsymbol{W} W 和 σ 2 \sigma^2 σ2。
  • 这个概率 PCA \text{PCA} PCA ( probabilistic PCA \text{probabilistic PCA} probabilistic PCA) 模型利用了这样一种观察到的现象:除了一些小且剩余的至多为 σ 2 \sigma^2 σ2 的重构误差 ( reconstruction error \text{reconstruction error} reconstruction error) ,数据中的大多数变化可以由潜变量 h \boldsymbol{h} h 描述。
    • 通过 Tipping and Bishop (1999) \text{Tipping and Bishop (1999)} Tipping and Bishop (1999) 的研究可以发现,当 σ → 0 \sigma\to 0 σ→0的时候, 概率 PCA \text{PCA} PCA退化为 PCA \text{PCA} PCA。
    • 在这种情况下,给定 x \boldsymbol{x} x 情况下 h \boldsymbol{h} h 的条件期望等于将 x − x \boldsymbol{x} − \boldsymbol{x} x−x 投影到 W \boldsymbol{W} W 的 d d d 列的生成空间,与 PCA \text{PCA} PCA一样。
  • 当 σ → 0 \sigma\to 0 σ→0 时, 概率 PCA所定义的密度函数在 W \boldsymbol{W} W 的 d d d 维列生成空间周围非常尖锐。这导致模型会为没有在一个超空间附近聚集的数据分配非常低的概率

总结

回顾深度学习视角下的概率 PCA \text{PCA} PCA与因子分析,它们不仅是统计学习的经典应用,更是连接传统统计学与现代机器学习技术的桥梁。 pPCA \text{pPCA} pPCA通过引入概率模型,增强了 PCA \text{PCA} PCA对数据不确定性的处理能力,使其在高噪声、不完整数据环境下依然能有效工作。而因子分析,凭借其从数据中抽取隐藏因子的能力,为探索数据间的内在联系、构建预测模型提供了宝贵的视角。两者相互补充,共同丰富了我们对数据结构的认知,推动了深度学习在复杂系统建模、推荐系统、图像与信号处理等众多领域的深入应用。随着研究的不断深入,我们有理由相信, pPCA \text{pPCA} pPCA与因子分析将在未来数据科学与机器学习的舞台上绽放更加耀眼的光芒。

往期内容回顾

线性因子模型 - 引言篇
应用数学与机器学习基础 - 概率与信息论篇

标签:text,boldsymbol,pPCA,因子分析,线性,PCA,sigma
From: https://blog.csdn.net/benny_zhou2004/article/details/141872590

相关文章

  • 20240911_220441 公共基础 线性链表
    什么是线性链表单向线性链表双向线性链表带链的栈带链队列线性链表的运算循环链表考点小结习题c习题a习题b习题c......
  • 数据结构基础讲解(三)——线性表之循环链表专项练习
    本文数据结构讲解参考书目:通过网盘分享的文件:数据结构 C语言版.pdf链接: https://pan.baidu.com/s/159y_QTbXqpMhNCNP_Fls9g?pwd=ze8e 提取码:ze8e数据结构基础讲解(二)——线性表之单链表专项练习-CSDN博客 个人主页:樱娆π-CSDN博客目录循环链表双向链表......
  • 秋招校招,在线性格测评应该如何应对
    秋招校招,如果遇到在线测评,如何应对?这里写个总结稿,希望对大家有些帮助。在线测评是企业深入了解求职人的渠道,如果是性格测试,会要求测试者能够快速答出,以便于反应实际情况(时间限制)。性格测试主要是为了找出岗位和性格的匹配关系,这方面比较知名和成熟的测评也挺多的,比如MBTI职业......
  • 【退化Degeneracy】线性规划中的退化问题
    I.什么是激活/绑定(active/binding)考虑一个多面体P⊂ℜnP\subset\Re^n......
  • 数据结构基础讲解(二)——线性表之单链表专项练习
    本文数据结构讲解参考书目:通过网盘分享的文件:数据结构 C语言版.pdf链接: https://pan.baidu.com/s/159y_QTbXqpMhNCNP_Fls9g?pwd=ze8e 提取码:ze8e 上一节我讲了线性表中顺序表的定义以及常用的算法,那么这节我将继续讲解顺序表中的链式结构以及常见的算法。数据......
  • 数据结构基础讲解(一)——线性表之顺序表专项练习
     本文数据结构讲解参考书目:通过网盘分享的文件:数据结构 C语言版.pdf链接:https://pan.baidu.com/s/159y_QTbXqpMhNCNP_Fls9g?pwd=ze8e提取码:ze8e目录前言一.线性表的定义二.线性表的基本操作三.线性表的顺序存储和表示四.顺序表中基本操作的实现1.顺序表......
  • 配置PHP的Session存储到Mysql / Redis / memcache 以及使用opcache以及apc缓存清除工
    一、配置PHP的Session存储到Mysql,Redis以及memcache等        PHP的会话默认是以文件的形式存在的,可以通过简单的配置到将Session存储到NoSQL中,即提高了访问速度,又能很好地实现会话共享!1.默认配置:session.save_handler=filessession.save_path=/tmp/2.配......
  • 20240911_170441 公共基础 线性表
    什么是线性表线性表的基本特征线性表的示例graphLR3-->1-->2-->4......
  • python科学计算:NumPy 线性代数与矩阵操作
    1NumPy中的矩阵与数组在NumPy中,矩阵实际上是一种特殊的二维数组,因此几乎所有数组的操作都可以应用到矩阵上。不过,矩阵运算与一般的数组运算存在一定的区别,尤其是在点积、乘法等操作中。1.1创建矩阵矩阵可以通过NumPy的array()函数创建。矩阵的形状可以通过shap......
  • 2.C_数据结构_线性表
    线性表的描述线性表就是若干数据的一个线性序列。数学表达式:L:表名a0~an-1:数据元素n:表长,n>0是为非空表二元描述形式:D:数据元素D用ai表示,这个i范围是0~n-1R:关系用R表示,这个关系是<ai,ai+1>,表示ai为ai+1的直接前驱,ai+1为ai的直接后继。<xxx1,xxx2>:这符号称为有序对......