重读生成概率模型1----基础概念

1 KL 散度

KL 散度的作为是描述两个分布的差异的,首先是度量一个分布,用熵来度量。

1.1 熵

在介绍熵之间,首先要度量单个事件的信息量
I(x)=−logP(x)I(x)=-logP(x)I(x)=logP(x)
整体的信息量
H(P)=Ex P[−logP(x)]=−∑P(x)logP(x) \begin{aligned} H(P) &=E_{x~P}[-logP(x)] \\ & = -\sum P(x)logP(x) \end{aligned} H(P)=Ex P[logP(x)]=P(x)logP(x)

1.2 KL 散度

原本数据真实的分布应该是p(x),但是现在搞错了,搞成q(x)
本来一个信息应该用-logP(x)描述,现在变成了-logq(x),
DKL(P∣∣Q)=Ex p[logP(x)Q(x)]=∑xP(x)logP(x)Q(x) \begin{aligned} D_{KL}(P||Q)=E_{x~p}[log\frac{P(x)}{Q(x)}]=\sum_xP(x)log\frac{P(x)}{Q(x)} \end{aligned} DKL(P∣∣Q)=Ex p[logQ(x)P(x)]=xP(x)logQ(x)P(x)

1.3 应用

  • softmax分类问题的KL散度
    对于每个样本来说,正确的类别
    P(xk)=1,Q(xk)=exkex1+ex2+...+exnDKL(P∣∣Q)=−logQ(xk)=−logexkex1+ex2+...+exn \begin{aligned} P(x_k)=1,Q(x_k)=\frac{e^{x_k}}{e^{x_1}+e^{x_2}+...+e^{x_n}} \\ D_{KL}(P||Q)=-logQ(x_k) =-log\frac{e^{x_k}}{e^{x_1}+e^{x_2}+...+e^{x_n}} \end{aligned} P(xk)=1,Q(xk)=ex1+ex2+...+exnexkDKL(P∣∣Q)=logQ(xk)=logex1+ex2+...+exnexk
  • 高斯分布问题的KL 散度
    P(x)=12πe−x22logP(x)=−12log(2π)−x22Q(x)=12πσe−(x−μ)22σ2logQ(x)=−12log(2π)−(x−μ)22σ2−log(σ)DKL(P∣∣Q)=Ep[logP(x)−logQ(x)]=Ep[logσ+(x−μ)22σ2−x22]DKL(P∣∣Q)=log(σ)+12σ2Ep[(x−μ)2]−12Ep(x2)DKL(P∣∣Q)=log(σ)+1+μ22σ2−12 \begin{aligned} P(x)=\frac{1}{\sqrt{2\pi}} e^{\frac{-x^2}{2}} \\ logP(x)=-\frac{1}{2}log(2\pi)-\frac{x^2}{2} \\ Q(x)=\frac{1}{\sqrt{2\pi}\sigma} e^{\frac{-(x-\mu)^2}{2\sigma^2}} \\ logQ(x)=-\frac{1}{2}log(2\pi)-\frac{(x-\mu)^2}{2\sigma^2}-log(\sigma) \\ D_{KL}(P||Q)=E_p[logP(x)-logQ(x)]=E_p[log_{\sigma}+\frac{(x-\mu)^2}{2\sigma^2}-\frac{x^2}{2} ]\\ D_{KL}(P||Q)=log(\sigma)+\frac{1}{2\sigma^2}E_p[(x-\mu)^2]-\frac{1}{2}E_p(x^2) \\ D_{KL}(P||Q)=log(\sigma)+\frac{1+\mu^2}{2\sigma^2}-\frac{1}{2} \end{aligned} P(x)=2π1e2x2logP(x)=21log(2π)2x2Q(x)=2πσ1e2σ2(xμ)2logQ(x)=21log(2π)2σ2(xμ)2log(σ)DKL(P∣∣Q)=Ep[logP(x)logQ(x)]=Ep[logσ+2σ2(xμ)22x2]DKL(P∣∣Q)=log(σ)+2σ21Ep[(xμ)2]21Ep(x2)DKL(P∣∣Q)=log(σ)+2σ21+μ221

其中,直觉的理解是总平方距离=抖动平方+偏移的平方
Ep[(x−μ)2]=Ep[(x−E(x)+E(x)−μ)2]=Ep[(x−E(x)2)]+2Ep[x−E(x)][E(x)−μ]+Ep[(E(x)−μ)2]=var(x)+μ2 \begin{aligned} E_p[(x-\mu)^2] &=E_p[(x-E(x)+E(x)-\mu)^2] \\ & = E_p[(x-E(x)^2)]+2E_p[x-E(x)][E(x)-\mu]+E_p[(E(x)-\mu)^2] \\ & = var(x)+\mu^2 \end{aligned} Ep[(xμ)2]=Ep[(xE(x)+E(x)μ)2]=Ep[(xE(x)2)]+2Ep[xE(x)][E(x)μ]+Ep[(E(x)μ)2]=var(x)+μ2

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

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

相关文章

排查解决磁盘占用高问题(容器挂载的磁盘)

最近遇到磁盘占用高的告警,记录一下解决的思路。 首先是系统触发告警,通知我们某台机器磁盘占用高。(或其他途径得知) 通过XShell登录该机器。 执行df-h命令查看挂载占用情况找到真正占用高的挂载点挂载点/home目录占用高&#xf…

流体(1)

流体 Minecraft 中的流体(Fluid),也常被称为液体(Liquid),是一类能够自由流动、形成河流、瀑布或湖泊的特殊方块。它们的行为基于简化的流体力学,是游戏世界中动态环境的重要组成部分。 💧 流体是什么? 在 Minecraft 中,流体核心特点包括: 源方块与流动:每个流…

机器学习-卷积神经网络(CNN)

全连接层->卷积层 用有一个隐藏层的MLP训练ImageNet数据集(300*300的图像,有1000个类别),要有10000个输出 会有10亿个可学习的参数,量太大 全连接:一个输出是根据所有输入加权得到在图片中识别物体&…

Ubuntu 磁盘扩容与扩容失败问题解决( df -h 与 GParted 显示空间不一致的问题 -LVM)

在管理 Linux 磁盘时,你是否遇到过这样的困惑:正常扩容之后,发现GParted 显示某个分区还有几十 GiB 可用,但 df -h 却提示该分区已接近满额?这种 “空间幻觉” 背后是系统存储管理的分层设计,本文将从原理到…

PyQt5中QLineEdit控件数值显示与小数位数控制

在PyQt5应用程序开发中,QLineEdit控件常用于显示和编辑文本内容。当需要用它来显示数值并控制小数位数时,开发者需要掌握一些特定的技巧。本文将深入探讨几种实现方法,每种方法都附带完整独立的代码示例。 数值格式化基础 在Python中&#xf…

LangChain使用方法以OpenAI 的聊天模型GPT-4o为例

以使用 OpenAI 的聊天模型(如 GPT-4)为例,从设置环境、初始化模型、调用模型到处理响应的各个方面进行介绍: 1. 环境设置 安装 langchain-openai 包。设置环境变量 OPENAI_API_KEY,用于认证(以linux为例&am…

Oracle为数据大表创建索引方案

在日常业务中,避免不了为数据量大表补充创建索引的情况,如果快速、有效地创建索引成了一个至关重要的问题(注意:虽然提供有ONLINE在线执行的方式,理想状态下不会阻塞DML操作,但ONLINE在开始、结束的两个时刻…

网站服务相关问题

目录 HTTP常见的状态码 http和https的区别以及使用的端口号 http处理请求的过程 https认证过程 正向代理和反向代理的区别 HTTP常见的状态码 HTTP(超文本传输协议)定义了一系列的状态码,用于表示客户端请求的处理结果。以下是一些常见的…

Go并发编程实战:深入理解Goroutine与Channel

Go并发编程实战:深入理解Goroutine与ChannelGo并发编程实战:深入理解Goroutine与Channel概述1. 为什么是Go的并发?从“线程”与“协程”说起2. Goroutine:如何使用?3. Channel:Goroutine间的安全通信创建与…

2025服贸会“海淀之夜”,点亮“科技”与“服务”底色

2025年9月12日傍晚,北京颐和园,十七孔桥旁,2025年中国国际服务贸易交易会“海淀之夜”如约而至。在“海淀之夜”,科技机构、金融机构、咨询服务机构、出海服务企业以及跨国企业和国际友人等,将目光聚焦于此。被第三方机…

qt使用camke时,采用vcpkg工具链设置VTK的qt模块QVTKOpenGLNativeWidget

下载:QVTKOpenGLNativeWidget嵌入qt应用中资源-CSDN下载 1.通过vcpkg安装VTK,目前的VTK里面默认为qt6,如果需要安装qt5,需要将端口配置进行修改 笔者的vcpkg的vtk端口路径:D:\vcpkg\ports\vtk portfile.cmake 修改点: #第一处 #file(READ "${CURRENT_INSTALLED_DIR}/sh…

Axios在鸿蒙应用开发中的使用

目录一、简介二、安装与配置三、axios用法1.axios泛型参数(1).第三个泛型参数-约束data请求参数的类型(2).第二个泛型参数-决定后台返回数据的类型2.axios拦截器3.请求工具封装统一处理业务状态码错误统一处理401或404错误一、简介 Axios 是一个基于 Promise 的网络请求库&…

第九周文件上传

文件上传漏洞 不同的网站要不同的webshell。我们使用是php开发的网站。 一服务器白名单绕过 服务端白名单(Whitelist)是⼀种安全机制,它只允许预定义的合法元素通过(只有有限的元素进入),其他所有内容默认被拒绝。相比黑名单&am…

计算机视觉必读论文:从经典到前沿

计算机视觉必读论文:从经典到前沿 一、前言 二、经典论文解读​ 2.1 图像分类​ 2.1.1 《ImageNet Classification with Deep Convolutional Neural Networks》(AlexNet)​ 2.1.2 《Very Deep Convolutional Networks for Large-Scale Image Recognition》(VGGNet)​ 2.1.…

对比PowerBI的字段参数,QuickBI的已选字段还有改进的空间

对比PowerBI的字段参数,QuickBI的已选字段还有改进的空间 之前分享过QuickBI的已选字段 vs PowerBI的字段参数,QuickBI可以在表格中实现PowerBI的字段参数效果,甚至比PowerBI实现的过程和使用方式更丝滑。 但如果应用到图形中会怎么样呢&am…

飞算JavaAI:Java开发新时代的破晓之光

免责声明:此文章的所有内容皆是本人实验测评,并非广告推广,并非抄袭。如有侵权,请联系,谢谢!【#飞算JavaAl炫技赛】 【#Java开发】摘要:飞算JavaAI作为全球首款聚焦Java的智能开发助手&#xff…

vulntarget-c靶场内网渗透

1. 环境搭建 2.对ubuntu20的渗透 对其进行端口扫描 访问80端口 发现是laravel框架。版本是v8.78.1 使用 kaili 自带的msf 进行渗透 search laravel use exploit/multi/php/ignition_laravel_debug_rce执行利用完成检测 上传木马 先将木马进行base64编码 <?php eval($_P…

基于大模型多模态的人体体型评估:从“尺码测量”到“视觉-感受”范式

基于大模型多模态的人体体型评估&#xff1a;从“尺码测量”到“视觉-感受”范式摘要&#xff1a;传统体型识别依赖CV骨架/关键点与像素量尺&#xff0c;容易受衣物、发型、姿态、光照影响&#xff0c;且“厘米级数值”与穿衣体验、审美感受之间存在鸿沟。本文提出一种基于大模…

【docker】——docker国内可用的源

不知道哪里来的&#xff0c;但是可以用。1. 解决方案打开配置文件&#xff08;若文件不存在&#xff0c;会自动创建&#xff09; sudo vim /etc/docker/daemon.json将以下内容粘贴进去{"builder": {"gc": {"defaultKeepStorage": "20GB&quo…

【Windows端口管理】快速查看和释放被系统保留的TCP端口

问题描述在Windows系统开发时&#xff0c;经常遇到端口无法使用的问题。系统会自动保留一系列TCP/UDP端口范围&#xff0c;导致应用程序无法绑定这些端口。查看所有被保留的端口范围查看TCP保留端口# 查看所有TCP端口排除范围 netsh interface ipv4 show excludedportrange pro…