EM算法与GMM的训练应用

高斯混合模型(GMM)和EM算法详解 小白一枚,接触到GMM和EM,现将学习到的整理出来,如有错误,欢迎指正,希望大家多多交流,共同进步。接下来将按照思路一步一步进行介绍。 1. 单高斯模型GSM(一维) 单高斯模型很简单,大家也很清楚,这里不做过多的解释,如不明白可自行百度。如图 概率密度函数为: 2.单高斯模型(多维,以二维为例) 二维高斯分布图像如下 ... 阅读详情
注:本文主要参考Andrew Ng的Lecture notes 8,并结合自己的理解和扩展完成。本文有的数学推导过程并不是那么的严密,主要原因是本文的目的在于理解原理,若数学推导过于严密则文章会过于冗长。

GMM简介

GMM(Gaussian mixture model) 混合高斯模型在机器学习、计算机视觉等领域有着广泛的应用。其典型的应用有概率密度估计、背景建模、聚类等。

GMM用于聚类

图1 GMM用于聚类

GMM用于概率密度估计

图2 GMM用于概率密度估计

GMM用于背景建模

图3 GMM用于背景建模
我们以聚类为例子进行简单讨论。如图1所示,假设我们有m个样本点,其坐标数据为{ x(1),x(2),x(3),…,x(m)}(注:x(i)为向量)。假设m个数据分别属于k个类别(图1中k=2),且不知道每个样本点x(i)属于哪一个类。假设每个类的分布函数都是高斯分布,那我们该如何求得每个点所属的类别?以及每个高斯分量的参数?我们先尝试最大似然估计。
回顾最大似然估计(MLE)的思想:已经出现的样本,应该是出现概率最大的样本。有似然函数:
L(θ)=∏i=1mp(x(i),z(i);u,Σ,ϕ)
L(θ)就是当前m个样本出现个概率,我们使其最大化就得到了θ的估计值θ^;p(x(i),z(i);u,Σ,ϕ)是样本x(i)出现的概率;z(i)是指第i属于z类;u是高斯分布的均值;Σ是高斯分布的方差;ϕ为其他参数。为计算方便,对上式两边取对数,得到对数似然函数。
l(θ)=log(L(θ))=log(∏i=1mp(x(i),z(i);u,Σ,ϕ))=∑i=1mlog(p(x(i),z(i);u,Σ,ϕ))
上说道,GMM的表达式为k个高斯分布的叠加,所以有
p(x(i),z(i);u,Σ,ϕ)=∑z(i)=1mp(x(i)|z(i);uz(i),Σz(i))p(z(i);ϕ)
p(z(i);ϕ)为p(z(i))为z(i)的先验概率。上式中x和z为自变量;u,Σ,ϕ为需要估计的参数。p(x(i)|z(i);uz(i),Σz(i))为高斯分布我们可以写出解析式,但是p(z(i);ϕ)的形式是未知的。所以不能直接对l(θ)求偏导取极值。考虑到z(i)不能直接由观测得到,称其为隐藏变量(latent variable)。此时的参数估计问题可以写为下式
argmaxl(θ)=argmax∑i=1mlog(∑z(i)=1mp(x(i)|z(i);uz(i),Σz(i))p(z(i);ϕ))
为了求解上式,引入EM算法(Expectation-Maximization Algorithm)。我们从Jensen不等式开始讨论EM算法。

Jensen不等式

若实函数f(x)存在二阶导f′′(x)且有f′′(x)≥0,则f(x)为凸函数(convex function 注:此处的定义可能与国内教材不同)。f(x)的值域为I,则对于
a,b∈I,0≤λ≤1
有以下不等式成立:
f(λa+(1−λ)b
高斯混合模型(GMM)及其EM算法的理解 一个例子高斯混合模型(Gaussian Mixed Model)指的是多个高斯分布函数的线性组合,理论上GMM可以拟合出任意类型的分布,通常用于解决同一集合下的数据包含多个不同的分布的情况(或者是同一类分布但参数不一样,或者是不同类型的分布,比如正态分布和伯努利分布)。如图1,图中的点在我们看来明显分成两个聚类。这两个聚类中的点分别通过两个不同的正态分布随机生成而来。但是如果没有GMM,那么只能用一 阅读详情

相关推荐

【Learning Notes】KMeans GMM 模型 及 EM 训练

kmeans 和 GMM 的简单实现及基于 EM 的训练。 jupyter notebook 版本见 repo。 首先,导入相关的模块。 from __future__ import print_function import numpy as np import matplotlib import matplotlib.pyplot as plt %matplotlib inl...

丁丁的博客 1134

Kaldi单音素GMM学习笔记

Kaldi单音素GMM学习笔记。从原理、脚本、程序和类四个方面介绍单音素GMM和Kaldi代码。

许开拓的专栏 1万+

高斯混合模型GMM

高斯混合模型理解。

qq_24946843的博客 5505

聚类算法:高斯混合模型与EM算法

高斯混合模型是一种概率模型,用于表示由多个高斯分布组成的混合分布。在聚类中,GMM假设数据来自多个不同的高斯分布,每个分布代表一个簇。GMM可以处理数据的不确定性,因为它不仅考虑了数据点的分布,还考虑了数据点属于不同簇的概率。EM算法是一种强大的统计学习工具,尤其在处理含有隐变量的模型时表现出色。通过理解和掌握EM算法的步骤、收敛性以及优缺点,可以更有效地将其应用于实际的聚类分析和模型拟合问题中。

kkchenjj的博客 1512

MATLAB实现EM算法及其在高斯混合模型中的应用

高斯混合模型(Gaussian Mixture Model, GMM)是一种广泛应用的概率模型,用于表示具有多种分布形式的群体数据。它假定数据由若干个高斯分布的混合而成,每一个高斯分布代表一类数据的特征。在数学上,可以将GMM表示为多个高斯分布的加权和:其中,( \mathcal{N}(x | \mu_i, \Sigma_i) ) 代表第i个高斯分布的密度函数,( \mu_i ) 和 ( \Sigma_i ) 分别是该分布的均值向量和协方差矩阵;

weixin_30356433的博客 1202

深入理解GMM在点云聚类中的应用

点云数据是由大量点的集合构成,这些点通常位于三维空间中,代表物体表面的采样点。这种数据类型广泛应用于计算机图形学、机器人视觉、地理信息系统等领域。点云数据的特点可归纳为以下几点:不规则性:点云数据点通常是在物体表面任意位置采集得到,因此其分布是不规则的,不像图像像素那样有固定的网格排列。大小不一:由于采集设备和技术的不同,点云数据的密度可以大相径庭,有的区域密布着大量点,有的区域则相对稀疏。维度高:除了三维位置坐标,点云数据还可以包含颜色、法向量、反射率等信息,形成多维度特征。

weixin_42430341的博客 1213

GMM与EM算法实现的2分类实践项目

对于一个高斯分布,其概率密度函数(PDF)由以下公式定义:其中x是观测数据点,μ是高斯分布的均值向量,Σ是协方差矩阵,d是数据的维度,|Σ|表示协方差矩阵的行列式。一个GMM由K个这样的高斯分布组成,每个分布都对应一个混合系数π_i。GMM的EM算法实现可以分为几个主要部分:数据准备、模型初始化、E步、M步、迭代终止判断和模型评估。下面是一个简化的代码框架:# 数据准备# 假设数据已经被加载到变量data中,类型为numpy数组# 模型初始化# 训练模型# 模型评估(可选)

weixin_42124497的博客 969

很详细的EM算法,GMM,HMM训练用

详细介绍了训练hmm和gmm的EM算法,以及其应用,对利用这些模型的朋友,想了解此算法的最好的资料。

虚拟机ubuntu22.04.3中安装vitis2024.1注意事项

虚拟机ubuntu安装vitis2024.1

qq_52033578的博客 2495

从IR Drop到EM分析:数字IC电源规划中那些没人明说的细节(以MTCMOS配置为例)

本文深入探讨数字IC后端设计中电源规划的关键细节,特别关注MTCMOS配置、电源网络电阻最小化和level shifter供电等实战技巧。通过分析IR Drop和EM问题,提供优化floorplan和powerplan的具体策略,帮助工程师避免常见陷阱,提升芯片设计的稳定性和可靠性。

q9w8e7r6t5的博客 511

同花顺【红绿趋势】幅图指标 源码分析

a10:IF(差值<=0 ,0 ,差值*0.2 ,4 ,0),STICK,linethick5,colorred;a7:IF(差值<=0 ,0 ,差值*0.8 ,4 ,0),STICK,linethick5,colorred;a8:IF(差值<=0 ,0 ,差值*0.6 ,4 ,0),STICK,linethick5,colorred;a6:IF(差值<=0 ,0 ,差值*1 ,4 , 0),STICK,linethick5,colorred;DRAWICON(先锋<0,-25,1);

zhibiaogong的博客 4058

阿里云百炼平台创建智能体-上传文档

阿里云百炼智能体-上传文档文件

weixin_43930851的博客 1356

【系统分析师】核心考点:100个高频知识点汇总

本文系统梳理了系统分析师考试的11大领域高频考点,重点解析了计算机硬件与体系结构的7个核心知识点:计算机五大部件(CPU/存储器/总线等)、校验码类型(奇偶/海明/CRC)、CISC与RISC指令系统对比、总线分类与特性、RAID磁盘阵列级别、流水线技术原理及Flynn系统分类法。内容涵盖硬件组成、数据校验、指令架构、存储技术等关键概念,通过表格对比和公式说明,为考生提供结构化的知识框架与备考重点。

数据知道的博客 5569

【YOLO26实战全攻略】10——YOLO26+SAM3实战:从检测到像素级分割的全流程指南(含PCB缺陷检测案例)

本文聚焦YOLO26与SAM3的融合应用,系统讲解“检测+分割”的三种核心模式:YOLO26原生分割(轻量高效)、YOLO26检测+SAM3精细分割(精度极致)、SAM3自动标注+YOLO26蒸馏(低成本冷启动)。从环境搭建、数据集准备、模型训练、性能优化到边缘部署,提供 step-by-step 实操教程,配套完整可运行代码与执行结果。结合虚拟PCB缺陷检测案例,展示像素级缺陷识别与几何参数测量的工业级应用流程。本文兼顾新手入门与进阶提升,注重实用价值,读者可直接参考搭建自己的分割系统。

专注于人工智能、软件开发、工控自动化、工厂数字化及智能化等领域,希望和大家共同进步! 624

基于Jeecgboot3.9.0的flowable7.2.0流程增加一个OA请假单功能例子(二)

基于Jeecgboot3.9.0的flowable7.2.0流程增加一个OA请假单功能例子(二)

宁波阿成的博客 198

【数字IC刷题】华为海思数字IC笔试题(1)详细解析版

【数字IC刷题】华为海思数字IC笔试题(1)详细解析版

MoorePlus的博客 4219

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

上一篇: 博客开篇
Eric-He
博客等级 码龄18年 3粉丝 2原创
评论 3
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值