[学习笔记] 扩散模型 Diffusion

news2024/9/20 18:51:16

前置知识-从深度生成模型、隐变量、VAE开始

 

机器学习是人工智能的一种,它是一种通过利用数据,训练出模型,然后使用模型预测的一种方法。

机器学习分为监督学习、无监督学习和强化学习,这是根据数据训练方式分类的,通俗来说,监督学习是基于已知结果的数据集进行训练,而无监督学习的数据集没有明确的已知结果,无监督学习没有真值标签,学习的是数据的统计规律、潜在结构。

概率模型是为了求得数据的后验概率P(Y|X)或者联合概率P(X,Y)


先验概率(Prior Probability)是指在未观测到任何新信息或证据的情况下,对事件发生概率的主观或经验性判断。先验概率通常基于以往的经验或领域知识,而不考虑当前的具体条件。先验概率通常表示为P(A),其中A是某个事件。

联合概率(Joint Probability)是指两个或多个事件同时发生的概率。假设有两个事件A和B,它们的联合概率可以表示为P(A∩B),即事件A和事件B同时发生的概率。

后验概率(Posterior Probability)是在考虑到先验概率的基础上,根据新的观测或证据来更新对事件发生概率的推断。后验概率通常表示为P(A|B),其中B是已经观测到的事件,表示在事件B发生的条件下,事件A发生的概率。

【概率论】先验概率、联合概率、条件概率、后验概率、全概率、贝叶斯公式_Mr_health的博客-CSDN博客

朴素贝叶斯(Naive Bayes),联合概率,条件概率,先验概率,后验概率_前概率条件概率联合概率后概率_贾世林jiashilin的博客-CSDN博客


对于监督学习而言,判别模型主要是求后验概率,也就是根据输入的特征X去确定确定标签信息Y。生成模型主要是为了求得联合概率,对于X,求出X与不同标记之间的联合概率分布,取其中大的。

红色小三角是我们需要分类的对象,对于判别模型来说,判别模型训练出来的是这条决策边界,根据这个红色小三角离决策边界的距离判定红色小三角属于什么类别。

而对于生成模型来说,学习到的是概率分布,在图示案例中,有两个类,我们分别求红色小三角与这两个类的联合概率分布,红色小三角属于联合概率分布大的那个类。通过贝叶斯公式,由生成式模型可以得到判别式模型。

 链接:生成模型(1)-无监督生成模型 - 知乎 (zhihu.com)

生成模型意味着对输入特征和标签信息的联合分布进行建模,无监督学习意味着不存在标签信息,那么在无监督生成模型中,是对输入特征的概率密度函数建模。训练得到的概率模型应接近于输入特征的概率密度函数,我们可以从概率模型中采样来“生成“样本。

对于无监督生成模型来说,如何进行概率密度估计,训练出概率模型,如何采样生成样本,是需要解决的两个难点。


二、Diffusion Model 概述


参考链接:

由浅入深了解Diffusion Model - 知乎 (zhihu.com)

Diffusion模型详解_difusion_鬼道2022的博客-CSDN博客 

扩散模型(Diffusion Model)——由浅入深的理解_WSLGN的博客-CSDN博客

 扩散模型/Diffusion Model原理讲解_哔哩哔哩_bilibili

54、Probabilistic Diffusion Model概率扩散模型理论与完整PyTorch代码详细解读_哔哩哔哩_bilibili 


事实上,公式的推理部分我依然没能全部看懂,因此这里只是了解了相关工作流程

2.1 前向扩散过程

diffusion在实现和推导过程中要用到的两个重要特性:

 那么即可进行推导。

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

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

相关文章

leetcode 100. 相同的树

2023.7.6 这题类似于树的对称性这道题,下面给出递归和迭代两种解法: 递归法: class Solution { public:bool isSameTree(TreeNode* p, TreeNode* q) {if(pnullptr && qnullptr) return true;if(pnullptr && q!nullptr || p…

python实现文本转语音音频

文章目录 文本转语音音频第一步:讯飞平台的注册第二步:导入程序所需要的依赖库第二步:websocket对象类的初始化第三步:websocket建立连接后的函数第四步:websocket数据返回结果的处理函数第五步:pcm音频转换…

VALSE 20200415 | 机器学习 vs 压缩感知:核磁共振成像与重建

【Talk】VALSE 20200415 | 机器学习 vs 压缩感知:核磁共振成像与重建 文章目录 【Talk】VALSE 20200415 | 机器学习 vs 压缩感知:核磁共振成像与重建Deep learning for MR imaging and analysis - Shanshan WangMachine Learning for CS MRI: From Model…

Spring Boot 中的视图解析器是什么,如何使用

Spring Boot 中的视图解析器是什么,如何使用 在 Spring Boot 中,视图解析器是将视图名称解析为具体视图对象的组件。视图对象可以是 JSP、FreeMarker、Thymeleaf 等模板引擎生成的 HTML 页面,也可以是 JSON、XML 等格式的数据响应。Spring B…

基于Javaweb实现ATM机系统开发实战(三)用户查询功能实现

首先通过我们查看前端界面发现,先要实现前端用户查询功能,主要就是要把list1和list2所需的数据传递给前端,由前端进行展示。 首先我们需要写一个servlet处理收到的请求: ps:Servlet是什么? Java Servlet 是…

FreeRTOS ~(五)队列的常规使用 ~ (1/5)队列解决同步缺陷

前情提要 FreeRTOS ~(四)同步互斥与通信 ~ (1/3)同步的缺陷 举例子说明:利用队列解决前述的"同步的缺陷"问题 static int sum 0; /* sum存放计算的结果 */ static volatile int flagCalcEnd 0; /* 标…

哪款3D虚拟人物建模软件好用?

3D虚拟人物建模软件一直以来受到许多人的关注和追捧。现在,随着智能手机的普及,3D虚拟人物手机建模软件也开始走进大家的视野。那么,市面上3D虚拟人物建模软件这么多,究竟哪款3D虚拟人物建模软件是好用的呢? 首先&…

【聚类算法】OPTICS基于密度聚类

every blog every motto: You can do more than you think. https://blog.csdn.net/weixin_39190382?typeblog 0. 前言 对DBSCAN的补充,OPTICS聚类 1. 正文 1.0 DBSCAN的存在问题 前面我们介绍了DBSCAN,其能根据密度进行聚类。 但其存在这样一个问…

cv2 安装问题, opencv

解决安装了opencv-python,但 import cv2 报错。 需要安装: pip install opencv-python-headless

VS 2022 修改应用程序选择目标框架为4.8

一、设置访问项目属性为True 打开工具菜单---选项---适用于Unity的工具 将这个访问项目属性一栏设置为True。之后要解决方案再重新打开即可生效。 二、设置应用程序选择目标框架 点击项目-->属性-->应用程序选择目标框架为.netfromwork4.8

Java入门程序——运算符

文章目录 赋值运算符算术运算符自增运算符自减运算符 比较(关系)运算符逻辑运算符逻辑运算符——快速运算(短路运算) 复合赋值运算符条件运算符字符串连接运算符三元运算符总结 赋值运算符 • 格式:变量名表达式&…

1.7 用户注册_判断用户是否存在和自定义响应数据结构

步骤1&#xff1a;在顶级pom.xml添加常用工具依赖。 <!-- apache 工具类 --> <dependency><groupId>commons-codec</groupId><artifactId>commons-codec</artifactId><version>1.11</version> </dependency> <depen…

实现TCP通信(socket套接字)

一、TCP通信实现的过程 服务器端 socket函数 与 通信域 #include <sys/types.h> #include <sys/socket.h> int socket(int domain, int type, int protocol); -domain: 指定通信域&#xff08;通信地址族&#xff09;; -type: 指定套接字类型; -protocol: 指定协…

大象机器人myCobot 280 2023版全新功能展示

引言 机械臂是一种可编程的、自动化的机械系统&#xff0c;它可以模拟人类的动作&#xff0c;完成各种任务&#xff0c;例如装配、喷涂、包装、搬运、焊接、研磨等。由于其高度灵活性和多功能性&#xff0c;机械臂在现代社会中已经得到了广泛的应用。 myCobot 280 M5Stack 202…

项目需求管理

项目需求管理的五大过程 一、需求获取 编写项目视图 范围文档 用户群分类 选择用户代表 建立核心队伍 确定使用实例 召开联合会议 分析用户工作流程、 确定质量属性、 检查问题报告 需求重用 二、需求分析 1、绘制关联图&#xff0c;用于定义系统与系统外部实体间的边界和接口的…

多个六轴机械臂联合作业搬运仿真(机器人工具箱)

1、建立三个六轴机械臂、工作平台与货物 clear clc close all % theta d a alpha sigma L1Link([0 0 0 pi/2 0 ]);%连杆1参数 L2Link([0 -0.1455 0.4375 0 0 ]);L2.offsetpi/2;%连杆2参数 L3Link(…

Playwright自动化测试工具 java版本

Playwright 第一个程序 public static void main(String[] args) {Playwright playwright Playwright.create(); // Browser browser playwright.chromium().launch(new BrowserType.LaunchOptions().setHeadless(false));BrowserType.LaunchOptions launchOptions …

nginx+lua(openresty) lua-mongodb 安装及使用(四)

前言 前章已经讲述 ua-protobuf 安装及使用 这章主要讲述 openresty 环境下 lua-mongodb 安装及使用 1:环境 ubuntu16(18) mongodb 3.6 2:安装mongodb 3.6 sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 2930ADAE8CAF5059EE73BB4B58712A2291FA4AD5 #创…

MySQL的初步认识——【初识MySQL】第一节

MySQL的初步认识——【初识MySQL】第一节 文章目录 MySQL的初步认识——【初识MySQL】第一节MySQL简介简介版本MySQL 5.5MySQL 5.6MySQL 5.7MySQL 8.0 安装建议 MySQL的卸载补充操作详情 小技巧 MySQL5.7.17的下载教训 MySQL简介 简介 MySQL是一个开源的关系型数据库管理系统…

【MongoDB】

目录 MongoDB基本简介 MongoDB基本概念 MongoDB和关系数据库的对比 MongoDB数据类型 MongoDB元素命名规则 MongoDB安装部署 MongoDB配置管理 MongoDB服务管理 MongoDB 多实例配置 基本操作 集合 数据备份与恢复 MongoDB复制集集群部署及管理 MongoDB复制集ReplSe…