高斯拟合 vc++代码_使用python+sklearn实现高斯混合模型的正弦曲线拟合

此示例说明了高斯混合模型能够在高斯随机变量的混合中对采样的数据进行拟合。数据集是由沿着有噪声的正弦曲线松散分布的100个点组成,因此,对于高斯分量的数量,是没有有用的价值的。 第一个模型是经典的高斯混合模型,该模型是用期望最大化(Expectation-Maximization)算法拟合出的具有10个分量的模型。 第二个模型是贝叶斯高斯混合模型,该模型是用变分推断拟合出具有先验狄利克雷(Dirichlet)过程的模型。先验浓度的较低的值使模型倾向于使用较少数量的活性分量。该模型会把建模能力集中在数据集结构的整体上:由非对角协方差矩阵形成的具有交替方向的一组样本点,这些交替方向可以大致捕获到原始正弦信号的交替性质。 第三个模型也是具有先验狄利克雷(Dirichlet)过程的贝叶斯高斯混合模型,但是不同的是,其先验浓度的值较高,这给模型提供了更大的自由度来对数据的细粒度结构进行建模。其结果是一个混合了具有大量有效分量的模型。 哪个模型最好?这是一个主观判断的问题:我们是要偏爱那些只捕捉大图以概括和解释大部分数据结构,而忽略细节的模型?还是更喜欢那些严格遵循信号高密度区域的模型? 最后两个图显示了,如何从后两个模型中采样。所得样本分布看起来与原始数据分布不完全相同,差异主要源于我们使用模型的近似误差,该模型假定数据是由有限数量的高斯分量而不是连续噪声正弦曲线生成的。
ab996d890bde47cefd57eba5cbe21153.png
sphx_glr_plot_gmm_sin_001
import itertools

import numpy as np
from scipy import linalg
import matplotlib.pyplot as plt
import matplotlib as mpl

from sklearn import mixture

pr
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值