从统计到生成建模的多变量分布采样

news2026/4/8 10:35:35
原文towardsdatascience.com/sampling-from-multivariate-distributions-from-statistical-to-generative-modeling-0177e55a9061https://github.com/OpenDocCN/towardsdatascience-blog-zh-2024/raw/master/docs/img/37181833a50332ce6287a8359b435e89.png来源Ideogram.背景从多变量分布中采样合成数据对于理解相互依赖关系、促进统计推断以及量化数据分析中的不确定性至关重要。它在金融、工程、医学、环境科学和社会科学中得到广泛应用。这个过程涉及使用数学模型来拟合数据的结构并根据拟合的分布生成新的样本。在统计学领域建模联合多变量分布有着悠久的历史。在简单情况下可以使用具有明确数学描述的预定义统计分布来建模数据例如多变量高斯分布和 Copula 函数——两种经典统计方法。然而随着数据维度和依赖性的增加传统方法显得不足。同时现代生成 AI 技术如生成对抗网络 (GAN) 和扩散模型已经显示出其潜力。https://github.com/OpenDocCN/towardsdatascience-blog-zh-2024/raw/master/docs/img/43be209536829a1a458353217f80f657.png图 1. 多变量采样技术演变。来源作者。本文回顾了以下方法的基本思想核密度估计Copula变分自编码器生成对抗网络扩散模型我们还通过在简单和复杂合成数据上的实验来探索它们的应用为传统和前沿的多变量采样技术提供一瞥——无需涉及疯狂数学多变量采样方法1. 核密度估计 (KDE)核密度估计 (KDE) 是一种在 1950 年代 [1] 介绍的经典统计方法用于推导概率密度函数 (PDF)。应用核密度估计的过程类似于平滑地毯上的凸起使用核函数表示每个数据点的密度然后将 k 维空间中的所有密度值相加以创建一个平滑的全局密度如图 2 所示。密度值高的区域反映了高样本概率。https://github.com/OpenDocCN/towardsdatascience-blog-zh-2024/raw/master/docs/img/aabb0db205cb08028fb3ae83030e3c70.png图 2. KDE 方法可视化。来源en.wikipedia.org/wiki/Multivariate_kernel_density_estimation。版权©DrleftCC BY-SA 4.0 许可证。联合概率密度函数可以表示为https://github.com/OpenDocCN/towardsdatascience-blog-zh-2024/raw/master/docs/img/ec0ff0d6fbcb8392b8aefcfcda5e192f.png其中K是核函数它由协方差矩阵H和数据点xi参数化。函数K决定了点 wise 概率平滑的方式。由于 KDE 假设任何变量都没有特定的形式它可以捕捉复杂的关系。图 3 展示了在 1 维视图下常用的核形状。https://github.com/OpenDocCN/towardsdatascience-blog-zh-2024/raw/master/docs/img/70c07832d9c2eb6fde1eb3b42c1a36eb.png图 3. KDE 的核函数。来源scikit-learn.org/stable/modules/density.html#kernel-density。版权©scikit-learn 开发者BSD 3-Clause 许可证。在推导出联合概率密度后可以从每个 bin 都有数据点定位概率的空间中抽取新的样本其中每个 bin 都有一个概率。2. CopulaCopula 是另一种经典的统计方法用于建模多元依赖关系可以追溯到 1959 年[2]。Copula 背后的思想是建模所有边缘累积概率函数CDFs之间的依赖关系而不是概率密度函数PDFshttps://github.com/OpenDocCN/towardsdatascience-blog-zh-2024/raw/master/docs/img/cf9dfca3eaa5dbe07fb95a1f958e85e4.png在上述方程中F是累积概率函数U是从F(X)转换而来的均匀分布的随机变量。Copula 函数C是所有Ui的联合多元累积函数。变量的依赖关系嵌入在 Copula 函数中。图 4 描绘了在二元情况下四种常用 Copula 家族的依赖形式https://github.com/OpenDocCN/towardsdatascience-blog-zh-2024/raw/master/docs/img/0a4efcdafacc3b2eb58f79e8b7531b1e.png图 4. Copula 家族的说明。来源en.wikipedia.org/wiki/Copula_(probability_theory)。公有领域图像。以二元高斯 Copula 为例。二元正态分布中变量的协方差表示了依赖结构https://github.com/OpenDocCN/towardsdatascience-blog-zh-2024/raw/master/docs/img/2c73a9c455174d2df7a9dec206ce2464.png由于 Copula 完全基于经典统计理论可以从拟合的联合分布中轻松生成新的样本就像其他已知的统计分布一样。3. 变分自编码器VAE从本节开始我们将进入生成式 AI 的领域。第一种方法是 VAE这是一种在 2013 年[3]首次提出的无监督人工神经网络架构。VAE 由两个组件组成一个编码器它将原始数据点映射到一个概率潜在空间一个解码器它从潜在空间重建它。这两个组件都是用户定义的人工神经网络。概率潜在空间z通常表示为多元高斯分布这意味着输入数据点被编码成分布的均值和方差向量。https://github.com/OpenDocCN/towardsdatascience-blog-zh-2024/raw/master/docs/img/60f6328d600b280f2a94b1fada86c822.png图 5. VAE 方法可视化。来源introtodeeplearning.com/slides/6S191_MIT_DeepLearning_L4.pdf。版权所有 © MIT 深度学习导论根据 MIT 许可证授权。训练 VAE 的目标是在尽可能准确地重建数据点的同时避免通过记忆数据点来作弊。因此损失函数由重建误差和正则化项组成后者最小化了推断的潜在分布与先验潜在分布之间的差异https://github.com/OpenDocCN/towardsdatascience-blog-zh-2024/raw/master/docs/img/854b06301a56ed7539813294afe019f5.png给定训练好的 VAE数据生成是解码随机高斯噪声的过程这是从潜在空间映射回输入空间的过程。https://github.com/OpenDocCN/towardsdatascience-blog-zh-2024/raw/master/docs/img/c00e439c111854d0faebbf5732c7eb67.png图 6. VAE 的样本生成过程。来源introtodeeplearning.com/slides/6S191_MIT_DeepLearning_L6.pdf。版权所有 © MIT 深度学习导论根据 MIT 许可证授权。4. 生成对抗网络GANGAN 是另一种自 2014 年[4]以来广为人知的生成式 AI 技术。它是一个无监督训练框架而不是一种特定的网络架构在图像生成、艺术融合、照片修复等方面有成功的应用。GAN 包括一个生成器来生成假样本和一个判别器来识别真实和假样本。生成器和判别器在网络架构上对不同的应用任务都很灵活。https://github.com/OpenDocCN/towardsdatascience-blog-zh-2024/raw/master/docs/img/da3f9a9c6bc8b3e2aef439a150fe37cf.png图 7. GAN 方法可视化。来源introtodeeplearning.com/slides/6S191_MIT_DeepLearning_L4.pdf。版权所有 © MIT 深度学习导论许可协议为 MIT 许可证。GAN 的目标是同时在零和游戏中训练一个强大的生成器和判别器。因此损失函数是从经典的二元分类交叉熵方案导出的它具有对抗形式其中判别器试图最大化它而生成器则相反https://github.com/OpenDocCN/towardsdatascience-blog-zh-2024/raw/master/docs/img/a6b9e74a26ef90fac03b09bbdb16cb89.png训练完成后采样过程仅使用生成器将随机噪声转换为位于原始训练数据分布中的样本。https://github.com/OpenDocCN/towardsdatascience-blog-zh-2024/raw/master/docs/img/6bffd292a47ea67aa99347fdaf262d1a.png图 8. GAN 的样本生成。来源introtodeeplearning.com/slides/6S191_MIT_DeepLearning_L4.pdf。版权所有 © MIT 深度学习导论许可协议为 MIT 许可证。5. 扩散模型扩散模型是几种最新流行图像生成技术的核心例如 DALL-E 和 Stable Diffusion。自 2015 年发表以来 [5]它由于 GAN 的训练困难而成为了一个很好的替代品。受热力学的启发扩散模型逐渐破坏数据样本的结构就像热力学扩散过程一样然后通过反向过程重建样本。具体来说正向扩散过程在T步中迭代地向样本添加随机高斯噪声反向过程使用人工神经网络预测在任意步骤的噪声。…/Images/e263806ffdbe9a849090a830a68be367.png图 9. 扩散模型可视化。来源arxiv.org/pdf/2006.11239[6]。在扩散模型的改进版本中即去噪扩散概率模型DDPM[6]可以通过从原始样本的一步扩散来简化训练。训练损失是预测噪声与实际噪声之间的差异。至于采样我们可以从一个高斯噪声开始并预测逐步反转的噪声以生成一个新的样本。…/Images/460c7a6282cb19a863844656bc4c93e3.png图 10. DDPM 算法。来源arxiv.org/abs/2006.11239[6]。数据实验本文的这一部分通过一个数据实验来快速了解上述五种方法的性能。因此我们关注结果而不是实现和模型调整的细节。实验使用这些模型来拟合合成数据集的分布然后生成新的样本与原始样本进行比较。合成数据设计了两个合成数据集。第一个包含来自 3 维联合高斯分布的样本这是一个“标准”的多变量分布具有简单的边缘分布和依赖关系https://github.com/OpenDocCN/towardsdatascience-blog-zh-2024/raw/master/docs/img/ff2da6ebbb0f5f6d25714c68a1820028.png第二个包含来自自定义高度非线性方程的样本这些样本代表一个“非标准”的多变量分布具有复杂的边缘分布和依赖关系https://github.com/OpenDocCN/towardsdatascience-blog-zh-2024/raw/master/docs/img/113d78c7d8250183321a28e2195f915c.png其中Beta() 是贝塔分布N() 是正态分布。评估合成数据集被分为训练集和测试集。下面的成对散点图显示了测试集中原始样本和生成样本的边缘和二元分布。KDE这里我们使用高斯 KDE 模型鉴于生成样本的边缘概率密度函数在形状上比原始样本更平坦似乎有点欠拟合。此外对于非标准分布x0 和 x1 之间的高度非线性依赖关系没有得到很好的捕捉。https://github.com/OpenDocCN/towardsdatascience-blog-zh-2024/raw/master/docs/img/21fe5b7410481dc7554d6b297d1392d4.png图 11. KDE 的数据实验。来源作者。Copula在实验中应用了高斯 Copula 模型。Copula 模型表现良好除了对于非标准分布中 x0 和 x1 之间的依赖关系外。https://github.com/OpenDocCN/towardsdatascience-blog-zh-2024/raw/master/docs/img/a50733f23e16bcae6d4fef16a2843e22.png图 12. Copula 的数据实验。来源作者。VAE这里的 VAE 使用 2 层隐藏层全连接神经网络作为编码器和解码器。它们通常能很好地模拟数据。https://github.com/OpenDocCN/towardsdatascience-blog-zh-2024/raw/master/docs/img/ba639502a70c51320c688ba3b1eeda6f.png图 13. VAE 的数据实验。来源作者。GAN对于 GAN生成器和判别器使用 3 层隐藏层全连接神经网络。GAN 与 VAE 具有相似的性能。https://github.com/OpenDocCN/towardsdatascience-blog-zh-2024/raw/master/docs/img/0b98e6f3739dad46f8afd30dff7702cc.png图 14. GAN 的数据实验。来源作者。扩散模型扩散模型实现了用于噪声反向过程的 3 层隐藏层全连接神经网络。尽管捕捉了所有依赖关系但扩散模型产生的样本比原始样本的多样性更少这表明可能需要进一步调整模型。https://github.com/OpenDocCN/towardsdatascience-blog-zh-2024/raw/master/docs/img/92dd6bc9cb13c2d714621175c635de5f.png图 15. 扩散模型的数据实验。来源作者。摘要从任意多元分布中进行采样是许多领域中的基本任务尤其是在数据有限的情况下进行推理时。数据的日益复杂需要各种候选方法从统计模型到生成式 AI 模型。本文简要介绍了五种流行方法的理念。为了更深入地探讨这个主题请跟随我在Medium上的更新获取关于未来文章的更多信息好拟合度评估的指标。一个 Python 库用于自动化上述所有方法的用法。我期待您的评论和反馈参考文献[1]. 罗森布拉特M. (1956). 关于密度函数的一些非参数估计的评论。《数学统计年刊》832–837。[2]. 斯克拉尔M. (1959). n 维分布函数及其边缘。在ISUP 年鉴第 8 卷第 3 期第 229–231 页。[3]. 金卡D. P.韦林M. (2013). 自动编码变分贝叶斯。arXiv 预印本 arXiv:1312.6114。[4]. 古德费洛I.普热格-阿巴迪J.米尔扎M.徐B.沃德-法雷尔D.奥齐尔S.… 本吉奥Y. (2014). 生成对抗网络。神经信息处理系统进展27。[5]. 索尔-迪克斯坦J.韦斯E.马赫斯瓦兰塔纳N.甘古利S. (2015 年 6 月)。使用非平衡热力学进行深度无监督学习。在机器学习国际会议第 2256–2265 页。PMLR。[6]. 何J.贾因A.阿贝尔P. (2020). 去噪扩散概率模型。神经信息处理系统进展336840–6851。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2484329.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

SpringBoot-17-MyBatis动态SQL标签之常用标签

文章目录 1 代码1.1 实体User.java1.2 接口UserMapper.java1.3 映射UserMapper.xml1.3.1 标签if1.3.2 标签if和where1.3.3 标签choose和when和otherwise1.4 UserController.java2 常用动态SQL标签2.1 标签set2.1.1 UserMapper.java2.1.2 UserMapper.xml2.1.3 UserController.ja…

wordpress后台更新后 前端没变化的解决方法

使用siteground主机的wordpress网站,会出现更新了网站内容和修改了php模板文件、js文件、css文件、图片文件后,网站没有变化的情况。 不熟悉siteground主机的新手,遇到这个问题,就很抓狂,明明是哪都没操作错误&#x…

网络编程(Modbus进阶)

思维导图 Modbus RTU(先学一点理论) 概念 Modbus RTU 是工业自动化领域 最广泛应用的串行通信协议,由 Modicon 公司(现施耐德电气)于 1979 年推出。它以 高效率、强健性、易实现的特点成为工业控制系统的通信标准。 包…

UE5 学习系列(二)用户操作界面及介绍

这篇博客是 UE5 学习系列博客的第二篇,在第一篇的基础上展开这篇内容。博客参考的 B 站视频资料和第一篇的链接如下: 【Note】:如果你已经完成安装等操作,可以只执行第一篇博客中 2. 新建一个空白游戏项目 章节操作,重…

IDEA运行Tomcat出现乱码问题解决汇总

最近正值期末周,有很多同学在写期末Java web作业时,运行tomcat出现乱码问题,经过多次解决与研究,我做了如下整理: 原因: IDEA本身编码与tomcat的编码与Windows编码不同导致,Windows 系统控制台…

利用最小二乘法找圆心和半径

#include <iostream> #include <vector> #include <cmath> #include <Eigen/Dense> // 需安装Eigen库用于矩阵运算 // 定义点结构 struct Point { double x, y; Point(double x_, double y_) : x(x_), y(y_) {} }; // 最小二乘法求圆心和半径 …

使用docker在3台服务器上搭建基于redis 6.x的一主两从三台均是哨兵模式

一、环境及版本说明 如果服务器已经安装了docker,则忽略此步骤,如果没有安装,则可以按照一下方式安装: 1. 在线安装(有互联网环境): 请看我这篇文章 传送阵>> 点我查看 2. 离线安装(内网环境):请看我这篇文章 传送阵>> 点我查看 说明&#xff1a;假设每台服务器已…

XML Group端口详解

在XML数据映射过程中&#xff0c;经常需要对数据进行分组聚合操作。例如&#xff0c;当处理包含多个物料明细的XML文件时&#xff0c;可能需要将相同物料号的明细归为一组&#xff0c;或对相同物料号的数量进行求和计算。传统实现方式通常需要编写脚本代码&#xff0c;增加了开…

LBE-LEX系列工业语音播放器|预警播报器|喇叭蜂鸣器的上位机配置操作说明

LBE-LEX系列工业语音播放器|预警播报器|喇叭蜂鸣器专为工业环境精心打造&#xff0c;完美适配AGV和无人叉车。同时&#xff0c;集成以太网与语音合成技术&#xff0c;为各类高级系统&#xff08;如MES、调度系统、库位管理、立库等&#xff09;提供高效便捷的语音交互体验。 L…

(LeetCode 每日一题) 3442. 奇偶频次间的最大差值 I (哈希、字符串)

题目&#xff1a;3442. 奇偶频次间的最大差值 I 思路 &#xff1a;哈希&#xff0c;时间复杂度0(n)。 用哈希表来记录每个字符串中字符的分布情况&#xff0c;哈希表这里用数组即可实现。 C版本&#xff1a; class Solution { public:int maxDifference(string s) {int a[26]…

【大模型RAG】拍照搜题技术架构速览:三层管道、两级检索、兜底大模型

摘要 拍照搜题系统采用“三层管道&#xff08;多模态 OCR → 语义检索 → 答案渲染&#xff09;、两级检索&#xff08;倒排 BM25 向量 HNSW&#xff09;并以大语言模型兜底”的整体框架&#xff1a; 多模态 OCR 层 将题目图片经过超分、去噪、倾斜校正后&#xff0c;分别用…

【Axure高保真原型】引导弹窗

今天和大家中分享引导弹窗的原型模板&#xff0c;载入页面后&#xff0c;会显示引导弹窗&#xff0c;适用于引导用户使用页面&#xff0c;点击完成后&#xff0c;会显示下一个引导弹窗&#xff0c;直至最后一个引导弹窗完成后进入首页。具体效果可以点击下方视频观看或打开下方…

接口测试中缓存处理策略

在接口测试中&#xff0c;缓存处理策略是一个关键环节&#xff0c;直接影响测试结果的准确性和可靠性。合理的缓存处理策略能够确保测试环境的一致性&#xff0c;避免因缓存数据导致的测试偏差。以下是接口测试中常见的缓存处理策略及其详细说明&#xff1a; 一、缓存处理的核…

龙虎榜——20250610

上证指数放量收阴线&#xff0c;个股多数下跌&#xff0c;盘中受消息影响大幅波动。 深证指数放量收阴线形成顶分型&#xff0c;指数短线有调整的需求&#xff0c;大概需要一两天。 2025年6月10日龙虎榜行业方向分析 1. 金融科技 代表标的&#xff1a;御银股份、雄帝科技 驱动…

观成科技:隐蔽隧道工具Ligolo-ng加密流量分析

1.工具介绍 Ligolo-ng是一款由go编写的高效隧道工具&#xff0c;该工具基于TUN接口实现其功能&#xff0c;利用反向TCP/TLS连接建立一条隐蔽的通信信道&#xff0c;支持使用Let’s Encrypt自动生成证书。Ligolo-ng的通信隐蔽性体现在其支持多种连接方式&#xff0c;适应复杂网…

铭豹扩展坞 USB转网口 突然无法识别解决方法

当 USB 转网口扩展坞在一台笔记本上无法识别,但在其他电脑上正常工作时,问题通常出在笔记本自身或其与扩展坞的兼容性上。以下是系统化的定位思路和排查步骤,帮助你快速找到故障原因: 背景: 一个M-pard(铭豹)扩展坞的网卡突然无法识别了,扩展出来的三个USB接口正常。…

未来机器人的大脑:如何用神经网络模拟器实现更智能的决策?

编辑&#xff1a;陈萍萍的公主一点人工一点智能 未来机器人的大脑&#xff1a;如何用神经网络模拟器实现更智能的决策&#xff1f;RWM通过双自回归机制有效解决了复合误差、部分可观测性和随机动力学等关键挑战&#xff0c;在不依赖领域特定归纳偏见的条件下实现了卓越的预测准…

Linux应用开发之网络套接字编程(实例篇)

服务端与客户端单连接 服务端代码 #include <sys/socket.h> #include <sys/types.h> #include <netinet/in.h> #include <stdio.h> #include <stdlib.h> #include <string.h> #include <arpa/inet.h> #include <pthread.h> …

华为云AI开发平台ModelArts

华为云ModelArts&#xff1a;重塑AI开发流程的“智能引擎”与“创新加速器”&#xff01; 在人工智能浪潮席卷全球的2025年&#xff0c;企业拥抱AI的意愿空前高涨&#xff0c;但技术门槛高、流程复杂、资源投入巨大的现实&#xff0c;却让许多创新构想止步于实验室。数据科学家…

深度学习在微纳光子学中的应用

深度学习在微纳光子学中的主要应用方向 深度学习与微纳光子学的结合主要集中在以下几个方向&#xff1a; 逆向设计 通过神经网络快速预测微纳结构的光学响应&#xff0c;替代传统耗时的数值模拟方法。例如设计超表面、光子晶体等结构。 特征提取与优化 从复杂的光学数据中自…