7.1 API:GaussianMixture
文章目录
- 引言
- GaussianMixture
引言
GaussianMixture是EM算法在高斯混合分布的实现
sklearn-GaussianMixture
GaussianMixture
from sklearn.mixture import GaussianMixturesklearn.mixture.GaussianMixture(n_components=1, *, covariance_type='full', tol=0.001, reg_covar=1e-06,
max_iter=100,n_init=1, init_params='kmeans', weights_init=None, means_init=None,
precisions_init=None, random_state=None,warm_start=False, verbose=0, verbose_interval=10)
描述
该API表示一个高斯混合模型概率分布,并且允许估计高斯混合分布的参数
参数
n_components : int, default=1
混合高斯模型个数,默认为1
covariance_type : {‘full’, ‘tied’, ‘diag’, ‘spherical’}, default=’full’
描述协方差的类型;默认‘full’ ,完全协方差矩阵full 指完全协方差矩阵(元素都不为零)
tied 指相同的完全协方差矩阵(HMM-主题模型中会用到)
diag 指对角协方差矩阵(非对角为零,对角不为零)
spherical 指球面协方差矩阵(非对角为零,对角完全相同,球面特性)
tol : float, default=1e-3
EM迭代停止阈值,默认为1e-3.
reg_covar : float, default=1e-6
:协方差对角非负正则化,保证协方差矩阵均为正,默认为0
max_iter : int, default=100
最大迭代次数,默认100
n_init : int, default=1
初始化次数,用于产生最佳初始参数,默认为1
init_params : {‘kmeans’, ‘random’}, default=’kmeans’
初始化参数实现方式,默认用kmeans实现,也可以选择随机产生
weights_init : array-like of shape (n_components, ), default=None
权重初始化,可以自己设,如果为None,则使用init_params方法初始化权值。
means_init : array-like of shape (n_components, n_features), default=None
初始化均值;如果为None,则使用init_params方法初始化。
precisions_init : array-like, default=None
初始化精度(协方差矩阵的逆)。
如果为None,则使用’ init_params ‘方法初始化精度。形状依赖于’ covariance_type ’(n_components,) if ‘spherical’,
(n_features, n_features) if ‘tied’,
(n_components, n_features) if ‘diag’,
(n_components, n_features, n_features) if ‘full’
random_state : int, RandomState instance or None, default=None
随机数种子,用于重复输出
warm_start : bool, default=False
如果’ warm_start ‘为True,则使用最后一次拟合的解作为下一次调用fit()的初始化参数,适合相同问题多次fit的情况,能加速收敛,默认为False。在这种情况下,’ n_init '被忽略,在第一次调用时只有一个初始化发生
verbose : int, default=0
是否冗余输出
如果为1,则打印当前的初始化和每个迭代步骤。
如果大于1,则还将打印对数概率和每个步骤所需的时间。
verbose_interval : int, default=10
在下一次打印之前完成的迭代次数,控制verbose的输出频率
属性
weights_ : array-like of shape (n_components,)
每个混合模型的权重
means_ : array-like of shape (n_components, n_features)
每个混合模型的均值
covariances_ : array-like
每个混合模型的协方差。矩阵大小取决于covariance_type定义的协方差矩阵类型(n_components,) if ‘spherical’,
(n_features, n_features) if ‘tied’,
(n_components, n_features) if ‘diag’,
(n_components, n_features, n_features) if ‘full’
precisions_ : array-like
混合模型中每个模型的精度矩阵,精度矩阵是协方差矩阵的逆
形状依赖于covariance_type:(n_components,) if ‘spherical’,
(n_features, n_features) if ‘tied’,
(n_components, n_features) if ‘diag’,
(n_components, n_features, n_features) if ‘full’
precisions_ cholesky_ : array-like
The cholesky decomposition of the precision matrices of each mixture component
每一个混合模型的精度矩阵的cholesky decomposition
形状依赖于covariance_type:(n_components,) if ‘spherical’,
(n_features, n_features) if ‘tied’,
(n_components, n_features) if ‘diag’,
(n_components, n_features, n_features) if ‘full’
converged_ : bool
当fit()达到收敛时为True,否则为False
n_iter_ : int
EM达到收敛时迭代次数
lower_bound_ : float
EM达到收敛时,对数似然的下界值
方法
aic(X)
返回当前模型的aic(Akaike information criterion)
bic(X)
返回当前模型的bic(Bayesian information criterion)
fit(X, y=None)
用EM算法估计模型参数
该方法拟合模型n_init次,该方法都会在E步和M步之间迭代max_iter次,直到下界的变化小于tol为止,否则将引发ConvergenceWarning。
如果warm_start为True,则将忽略n_init,并在第一次调用时执行一次初始化。
fit_predict(X, y=None)
使用X估算模型参数并预测X的标签,返回标签
get_params(deep=True)
if deep = True,那么返回这个估计器的参数
返回字典形式的参数映射
predict(X)
使用训练模型预测 X 中数据样本的标签,返回标签
predict_proba(X)
预测给定数据的每个组分的后验概率
sample(n_samples=1)
从拟合的高斯分布生成随机样本
score(X, y=None)
计算给定数据X的每样本平均对数似然
score_samples(X)
计算每个样本的加权对数概率
set_params(**params)
设置该估计器的参数,**params :dict
返回估计实例
官方案例
7.1 API:GaussianMixture相关推荐
- node.js入门 - 9.api:http
node一个重要任务是用来创建web服务,接下来我们就学习与此相关的一个重要的api -- http.我们使用http.createServer()创建一个http服务的实例,用来处理来自客户的请求. ...
- Netflix Play API:我们为什么构建了一个演进式架构?
在QCon SF大会上,Suudhan Rangarajan做了题为"Netflix Play API:我们为什么构建了一个演进式架构"的演讲.他演讲的要点包括:具有单一标识/职责 ...
- CV之API:利用Face++的人体识别接口,实现摄像头实时手势识别
CV之API:利用Face++的人体识别接口,实现摄像头实时手势识别 目录 测试图片 实现代码(部分) 测试图片 实现代码(部分) #利用Face++的人体识别接口,实现摄像头实时手势识别 impor ...
- TF学习——TF之API:TensorFlow的高级机器学习API—tf.contrib.learn的简介、使用方法、案例应用之详细攻略
TF学习--TF之API:TensorFlow的高级机器学习API-tf.contrib.learn的简介.使用方法.案例应用之详细攻略 目录 tf.contrib.learn的简介 tf.contr ...
- ML之API:国内外各大人工智能平台(百度云/华为云/阿里云/Face++等)及其API的简介、使用方法之详细攻略
ML之API:国内外各大人工智能平台(百度云/华为云/阿里云/Face++等)及其API的简介.使用方法之详细攻略 目录 一.百度云api 1.api之CV 二.旷视科技(face++)api 1.a ...
- OpenCV 高级API:TextDetectionModel和TextRecognitionModel
高级API:TextDetectionModel和TextRecognitionModel TextDetectionModel和TextRecognitionModel 介绍 预训练模型 测试图像 ...
- api如何使用_记录API:技术作家和工程师指南
在这门有关编写REST API文档的课程中,我不只是在谈论抽象概念,而是通过直接的动手方法将REST API关联起来.首先,您将通过使用简单的天气API在站点上放置天气预报来了解API文档. 使用AP ...
- WEB API:语音识别
2019独角兽企业重金招聘Python工程师标准>>> x-webkit-speech 语音输入功能: http://www.iinterest.net/2012/01/07/x-w ...
- Google API:如何访问Google Analytics(分析)数据?
在深入研究Google Analytics(分析)API之前,了解一些Google Analytics(分析)术语及其关系总是很有用的. Google帐户:要访问Google Analytics(分析 ...
- Java Persistence API:快速入门
各位读者好! 在我的一些朋友提出无数请求之后,我决定写一篇关于Java Persistence API的简短文章. 面向对象的编程范式是当今最流行和使用最广泛的模型,它具有无缝建模现实生活实体的能 ...
最新文章
- 安卓应用程序插件化开发框架 -AAP Framework
- 信息系统项目管理知识--项目质量管理
- UNITY Destroy()和DestroyImadiate()的区别
- Loadrunner性能测试结果分析
- Javascript 对象二(Number、String、Boolean、Array、Date、Math、RegExp)
- webhooks_在本地开发时如何测试Webhooks
- 512抗击震灾捐款背后的思考
- 第九:Pytest进阶之xunit fixture
- 3Dshader之膨胀与收缩
- ScrollView和listview的冲突问题,关于宽度,和滑动
- 190728每日一句 不经一番寒彻骨 怎得梅花扑鼻香,一个人怎样保持激情去奋斗?
- stata 空间杜宾模型_利用STATA创建空间权重矩阵及空间杜宾模型计算----命令
- Google Earth Engine——使用climata和Python从USGS获取流数据
- 驾驶员理论考试系统的设计与实现(论文+源码)_kaic
- 华为 M5680t对HGU ONU配置指导
- 阿里云centos6.9搭建ngrok服务器
- Mac通过命令行搜索文件
- 2008中国无线互联网细分领域排行榜
- 差分放大电路在信号传输的作用及设计原理
- 论文阅读 (78):FlowNet: Learning Optical Flow with Convolutional Networks