线性因子模型 - 独立分量分析(ICA)篇

2024-09-09 07:36

本文主要是介绍线性因子模型 - 独立分量分析(ICA)篇,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

序言

线性因子模型是数据分析与机器学习中的一类重要模型,它们通过引入潜变量( latent variables \text{latent variables} latent variables)来更好地表征数据。其中,独立分量分析( ICA \text{ICA} ICA)作为线性因子模型的一种,以其独特的视角和广泛的应用领域而备受关注。 ICA \text{ICA} ICA旨在将观察到的复杂信号分解成多个独立信号,这些独立信号通过缩放和叠加能够恢复成原始数据。这种方法不仅有助于理解数据的内在结构,还能在信号处理、语音识别、图像分析等多个领域发挥重要作用。

独立分量分析(ICA)

  • 独立分量分析 ( independent component analysis, ICA \text{independent component analysis, ICA} independent component analysis, ICA) 是最古老的表示学习算法之一。
    • Herault and Ans, 1984 \text{Herault and Ans, 1984} Herault and Ans, 1984;
    • Jutten and Herault, 1991 \text{Jutten and Herault, 1991} Jutten and Herault, 1991;
    • Comon, 1994; Hyv a ¨ rinen,1999 \text{Comon, 1994; Hyvärinen,1999} Comon, 1994; Hyva¨rinen,1999;
    • Hyv a ¨ rinen et al., 2001 \text{Hyvärinen et al., 2001} Hyva¨rinen et al., 2001;
    • Hinton et al., 2001; Teh et al., 2003 \text{Hinton et al., 2001; Teh et al., 2003} Hinton et al., 2001; Teh et al., 2003
  • 它是一种建模线性因子的方法,旨在将观察到的信号分离成许多潜在信号,这些潜在信号通过伸缩并叠加可以恢复成观察数据。这些信号是完全独立的,而不是仅仅彼此不相关。
  • 许多不同的具体方法被称为 ICA \text{ICA} ICA
    • 与我们描述的其他生成模型最相似的 ICA \text{ICA} ICA变种 ( Pham et al., 1992 \text{Pham et al., 1992} Pham et al., 1992) 训练了完全参数化的生成模型。
    • 潜在因子 h \boldsymbol{h} h 的先验 p ( h ) p(\boldsymbol{h}) p(h),必须由用户提前给出并固定。
    • 接着模型确定性地生成 x = W h \boldsymbol{x}=\boldsymbol{Wh} x=Wh
    • 我们可以通过非线性变化(使用公式1)来确定 p ( x ) p(\boldsymbol{x}) p(x)
    • 然后通过一般的方法比如最大化似然进行学习。
      p x ( x ) = p y ( g ( x ) ) ∣ det ⁡ ( ∂ g ( x ) ∂ x ) ∣ p_x(\boldsymbol{x})=p_y(g(\boldsymbol{x}))\left|\det\left(\displaystyle\frac{\partial g(\boldsymbol{x})}{\partial \boldsymbol{x}}\right)\right| px(x)=py(g(x)) det(xg(x)) — 公式1 \quad\textbf{---\footnotesize{公式1}} 公式1
  • 这种方法的动机是,通过选择一个独立的 p ( h ) p(\boldsymbol{h}) p(h),我们可以尽可能恢复接近独立的潜在因子。
    • 这是一种常用的方法,它并不是用来捕捉高级别的抽象因果因子,而是恢复已经混合在一起的低级别信号。
    • 在该设置中,每个训练样本对应一个时刻,每个 x i x_i xi 是一个传感器对混合信号的观察值,并且每个 h i h_i hi 是单个原始信号的一个估计。
    • 例如,我们可能有 n n n 个人同时说话。
      • 如果我们具有放置在不同位置的 n n n 个不同的麦克风,则 ICA \text{ICA} ICA可以检测每个麦克风的音量变化,并且分离信号,使得每个 h i h_i hi 仅包含一个人清楚地说话。
      • 这通常用于脑电图的神经科学,一种用于记录源自大脑的电信号的技术。
      • 放置在对象的头部上的许多电极传感器用于测量来自身体的许多电信号。
      • 实验者通常仅对来自大脑的信号感兴趣,但是来自受试者的心脏和眼睛的信号强到足以混淆在受试者的头皮处进行的测量。
      • 信号到达电极,并且混合在一起,因此为了分离源于心脏与源于大脑的信号,并且将不同脑区域中的信号彼此分离 ICA \text{ICA} ICA是必要的。
  • 如前所述, ICA \text{ICA} ICA存在许多变种。
    • 一些版本在 x \boldsymbol{x} x 的生成中添加一些噪声,而不是使用确定性的解码器。
    • 大多数方法不使用最大似然准则,而是旨在使 h = W − 1 x \boldsymbol{h}=\boldsymbol{W}^{-1}\boldsymbol{x} h=W1x 的元素彼此独立。
    • 许多准则能够达成这个目标。
    • 公式1需要用到 W \boldsymbol{W} W 的行列式,这可能是昂贵且数值不稳定的操作。
    • ICA \text{ICA} ICA的一些变种通过将 W \boldsymbol{W} W 约束为正交来避免这个有问题的操作。
  • ICA \text{ICA} ICA的所有变种要求 p ( h ) p(\boldsymbol{h}) p(h) 是非高斯的。
    • 这是因为如果 p ( h ) p(\boldsymbol{h}) p(h) 是具有高斯分量的独立先验,则 W \boldsymbol{W} W 是不可识别的。
    • 对于许多 W \boldsymbol{W} W 值,我们可以在 p ( x ) p(\boldsymbol{x}) p(x) 上获得相同的分布。
    • 这与其他线性因子模型有很大的区别,例如概率 PCA \text{PCA} PCA和因子分析通常要求 p ( h ) p(\boldsymbol{h}) p(h) 是高斯的,以便使模型上的许多操作具有闭式解。
    • 在用户明确指定分布的最大似然方法中,一个典型的选择是使用 p ( h i ) = d d h i σ ( h i ) p(h_i)=\displaystyle\frac{d}{dh_i}\sigma(h_i) p(hi)=dhidσ(hi)
    • 这些非高斯分布的典型选择在 0 0 0 附近具有比高斯分布更高的峰值,因此我们也可以看到独立分量分析经常在学习稀疏特征时使用。
  • 按照我们对生成模型这个术语的定义 ICA \text{ICA} ICA的许多变种不是生成模型。
    • 在本篇中,生成模型可以直接表示 p ( x ) p(\boldsymbol{x}) p(x),也可以认为是从 p ( x ) p(\boldsymbol{x}) p(x) 中抽取样本。
    • ICA \text{ICA} ICA的许多变种仅知道如何在 x \boldsymbol{x} x h \boldsymbol{h} h 之间变换,但没有任何表示 p ( h ) p(\boldsymbol{h}) p(h) 的方式,因此也无法确定 p(x)。
    • 例如,许多 ICA \text{ICA} ICA变量旨在增加 h = W − 1 x \boldsymbol{h}=\boldsymbol{W}^{-1}\boldsymbol{x} h=W1x 的样本峰度,因为高峰度说明了 p ( h ) p(\boldsymbol{h}) p(h) 是非高斯的,但这是在没有显式表示 p ( h ) p(\boldsymbol{h}) p(h) 的情况下完成的。
    • 这是为什么 ICA \text{ICA} ICA更多用作分离信号的分析工具,而不是用于生成数据或估计其密度。
  • 正如 PCA \text{PCA} PCA可以推广到后续:自编码器系列篇中描述的非线性自编码器, ICA \text{ICA} ICA可以推广到非线性生成模型,其中我们使用非线性函数 f f f 来生成观测数据。
    • 关于非线性 ICA \text{ICA} ICA最初的工作可以参考 Hyv a ¨ rinen and Pajunen (1999) \text{Hyvärinen and Pajunen (1999)} Hyva¨rinen and Pajunen (1999),它和集成学习的成功结合可以参见 Roberts and Everson (2001); Lappalainen et al. (2000) \text{Roberts and Everson (2001); Lappalainen et al. (2000)} Roberts and Everson (2001); Lappalainen et al. (2000)
    • ICA \text{ICA} ICA的另一个非线性扩展是非线性独立分量估计 ( nonlinear independent components estimation, NICE \text{nonlinear independent components estimation, NICE} nonlinear independent components estimation, NICE) 方法( Dinh et al., 2014 \text{Dinh et al., 2014} Dinh et al., 2014),这个方法堆叠了一系列可逆变换(在编码器阶段),从而能够高效地计算每个变换的 Jacobian ‾ \underline{\text{Jacobian}} Jacobian行列式。
    • 这使得我们能够精确地计算似然,并且像 ICA \text{ICA} ICA一样, NICE \text{NICE} NICE尝试将数据变换到具有可分解边缘分布的空间。
    • 由于非线性编码器的使用,这种方法更可能成功。
    • 因为编码器和一个与其( 编码器)完美逆作用的解码器相关联,所以可以直接从模型生成样本(通过首先从 p ( h ) p(\boldsymbol{h}) p(h) 采样,然后使用解码器)。
  • ICA \text{ICA} ICA的另一个推广是通过在组内鼓励统计依赖关系在组之间抑制依赖关系来学
    习特征组。
    • 当相关单元的组被选为不重叠时,这被称为独立子空间分析 ( independent subspace analysis \text{independent subspace analysis} independent subspace analysis)。
    • 还可以向每个隐藏单元分配空间坐标,并且空间上相邻的单元组形成一定程度的重叠。
    • 这能够鼓励相邻的单元学习类似的特征。
    • 当应用于自然图像时,这种地质 ICA \textbf{ICA} ICA ( topographic ICA \text{topographic ICA} topographic ICA) 方法学习 Gabor ‾ \underline{\text{Gabor}} Gabor 滤波器,从而使得相邻特征具有相似的定向、位置或频率。
    • 在每个区域内出现类似 Gabor \text{Gabor} Gabor 函数的许多不同相位存在抵消作用,使得在小区域上的池化产生了平移不变性。

总结

  • 独立分量分析通过寻找数据中的独立成分,实现了对复杂信号的有效分解。与主成分分析( PCA \text{PCA} PCA)不同, ICA \text{ICA} ICA不仅要求成分间不相关,更强调成分的独立性。这种特性使得 ICA \text{ICA} ICA在处理非高斯分布的数据时具有显著优势。
  • ICA \text{ICA} ICA的应用广泛,包括语音信号分离、特征提取、盲源信号分离等多个方面。通过 ICA \text{ICA} ICA,我们可以从混合信号中分离出独立的声源,提取出有用的特征信息,进而为后续的数据处理和分析提供有力支持。
  • 因此,理解和掌握独立分量分析的基本原理和应用方法,对于从事数据分析与机器学习工作的人员来说至关重要。

往期重要内容回顾

应用数学与机器学习基础 - 概率与信息论篇

这篇关于线性因子模型 - 独立分量分析(ICA)篇的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1150548

相关文章

大模型研发全揭秘:客服工单数据标注的完整攻略

在人工智能(AI)领域,数据标注是模型训练过程中至关重要的一步。无论你是新手还是有经验的从业者,掌握数据标注的技术细节和常见问题的解决方案都能为你的AI项目增添不少价值。在电信运营商的客服系统中,工单数据是客户问题和解决方案的重要记录。通过对这些工单数据进行有效标注,不仅能够帮助提升客服自动化系统的智能化水平,还能优化客户服务流程,提高客户满意度。本文将详细介绍如何在电信运营商客服工单的背景下进行

性能分析之MySQL索引实战案例

文章目录 一、前言二、准备三、MySQL索引优化四、MySQL 索引知识回顾五、总结 一、前言 在上一讲性能工具之 JProfiler 简单登录案例分析实战中已经发现SQL没有建立索引问题,本文将一起从代码层去分析为什么没有建立索引? 开源ERP项目地址:https://gitee.com/jishenghua/JSH_ERP 二、准备 打开IDEA找到登录请求资源路径位置

Andrej Karpathy最新采访:认知核心模型10亿参数就够了,AI会打破教育不公的僵局

夕小瑶科技说 原创  作者 | 海野 AI圈子的红人,AI大神Andrej Karpathy,曾是OpenAI联合创始人之一,特斯拉AI总监。上一次的动态是官宣创办一家名为 Eureka Labs 的人工智能+教育公司 ,宣布将长期致力于AI原生教育。 近日,Andrej Karpathy接受了No Priors(投资博客)的采访,与硅谷知名投资人 Sara Guo 和 Elad G

Retrieval-based-Voice-Conversion-WebUI模型构建指南

一、模型介绍 Retrieval-based-Voice-Conversion-WebUI(简称 RVC)模型是一个基于 VITS(Variational Inference with adversarial learning for end-to-end Text-to-Speech)的简单易用的语音转换框架。 具有以下特点 简单易用:RVC 模型通过简单易用的网页界面,使得用户无需深入了

透彻!驯服大型语言模型(LLMs)的五种方法,及具体方法选择思路

引言 随着时间的发展,大型语言模型不再停留在演示阶段而是逐步面向生产系统的应用,随着人们期望的不断增加,目标也发生了巨大的变化。在短短的几个月的时间里,人们对大模型的认识已经从对其zero-shot能力感到惊讶,转变为考虑改进模型质量、提高模型可用性。 「大语言模型(LLMs)其实就是利用高容量的模型架构(例如Transformer)对海量的、多种多样的数据分布进行建模得到,它包含了大量的先验

图神经网络模型介绍(1)

我们将图神经网络分为基于谱域的模型和基于空域的模型,并按照发展顺序详解每个类别中的重要模型。 1.1基于谱域的图神经网络         谱域上的图卷积在图学习迈向深度学习的发展历程中起到了关键的作用。本节主要介绍三个具有代表性的谱域图神经网络:谱图卷积网络、切比雪夫网络和图卷积网络。 (1)谱图卷积网络 卷积定理:函数卷积的傅里叶变换是函数傅里叶变换的乘积,即F{f*g}

秋招最新大模型算法面试,熬夜都要肝完它

💥大家在面试大模型LLM这个板块的时候,不知道面试完会不会复盘、总结,做笔记的习惯,这份大模型算法岗面试八股笔记也帮助不少人拿到过offer ✨对于面试大模型算法工程师会有一定的帮助,都附有完整答案,熬夜也要看完,祝大家一臂之力 这份《大模型算法工程师面试题》已经上传CSDN,还有完整版的大模型 AI 学习资料,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

【生成模型系列(初级)】嵌入(Embedding)方程——自然语言处理的数学灵魂【通俗理解】

【通俗理解】嵌入(Embedding)方程——自然语言处理的数学灵魂 关键词提炼 #嵌入方程 #自然语言处理 #词向量 #机器学习 #神经网络 #向量空间模型 #Siri #Google翻译 #AlexNet 第一节:嵌入方程的类比与核心概念【尽可能通俗】 嵌入方程可以被看作是自然语言处理中的“翻译机”,它将文本中的单词或短语转换成计算机能够理解的数学形式,即向量。 正如翻译机将一种语言

AI Toolkit + H100 GPU,一小时内微调最新热门文生图模型 FLUX

上个月,FLUX 席卷了互联网,这并非没有原因。他们声称优于 DALLE 3、Ideogram 和 Stable Diffusion 3 等模型,而这一点已被证明是有依据的。随着越来越多的流行图像生成工具(如 Stable Diffusion Web UI Forge 和 ComyUI)开始支持这些模型,FLUX 在 Stable Diffusion 领域的扩展将会持续下去。 自 FLU

poj 2594 二分图最大独立集

题意: 求一张图的最大独立集,这题不同的地方在于,间接相邻的点也可以有一条边,所以用floyd来把间接相邻的边也连起来。 代码: #include <iostream>#include <cstdio>#include <cstdlib>#include <algorithm>#include <cstring>#include <cmath>#include <sta