class sklearn.mixture.BayesianGaussianMixture(n_components=1, covariance_type=’full’, tol=0.001, reg_covar=1e-06, max_iter=100, n_init=1, init_params=’kmeans’, weight_concentration_prior_type=’dirichlet_process’, weight_concentration_prior=None, mean_precision_prior=None, mean_prior=None, degrees_of_freedom_prior=None, covariance_prior=None, random_state=None, warm_start=False, verbose=0, verbose_interval=10) [source]
Variational Bayesian estimation of a Gaussian mixture.
This class allows to infer an approximate posterior distribution over the parameters of a Gaussian mixture distribution. The effective number of components can be inferred from the data.
This class implements two types of prior for the weights distribution: a finite mixture model with Dirichlet distribution and an infinite mixture model with the Dirichlet Process. In practice Dirichlet Process inference algorithm is approximated and uses a truncated distribution with a fixed maximum number of components (called the Stick-breaking representation). The number of components actually used almost always depends on the data.
New in version 0.18.
Read more in the User Guide.
| Parameters: |
|
|---|---|
| Attributes: |
|
See also
GaussianMixture
| [1] | Bishop, Christopher M. (2006). “Pattern recognition and machine learning”. Vol. 4 No. 4. New York: Springer. |
| [2] | Hagai Attias. (2000). “A Variational Bayesian Framework for Graphical Models”. In Advances in Neural Information Processing Systems 12. |
| [3] | Blei, David M. and Michael I. Jordan. (2006). “Variational inference for Dirichlet process mixtures”. Bayesian analysis 1.1 |
fit(X[, y]) | Estimate model parameters with the EM algorithm. |
fit_predict(X[, y]) | Estimate model parameters using X and predict the labels for X. |
get_params([deep]) | Get parameters for this estimator. |
predict(X) | Predict the labels for the data samples in X using trained model. |
predict_proba(X) | Predict posterior probability of each component given the data. |
sample([n_samples]) | Generate random samples from the fitted Gaussian distribution. |
score(X[, y]) | Compute the per-sample average log-likelihood of the given data X. |
score_samples(X) | Compute the weighted log probabilities for each sample. |
set_params(**params) | Set the parameters of this estimator. |
__init__(n_components=1, covariance_type=’full’, tol=0.001, reg_covar=1e-06, max_iter=100, n_init=1, init_params=’kmeans’, weight_concentration_prior_type=’dirichlet_process’, weight_concentration_prior=None, mean_precision_prior=None, mean_prior=None, degrees_of_freedom_prior=None, covariance_prior=None, random_state=None, warm_start=False, verbose=0, verbose_interval=10) [source]
fit(X, y=None) [source]
Estimate model parameters with the EM algorithm.
The method fits the model n_init times and sets the parameters with which the model has the largest likelihood or lower bound. Within each trial, the method iterates between E-step and M-step for max_iter times until the change of likelihood or lower bound is less than tol, otherwise, a ConvergenceWarning is raised. If warm_start is True, then n_init is ignored and a single initialization is performed upon the first call. Upon consecutive calls, training starts where it left off.
| Parameters: |
|
|---|---|
| Returns: |
|
fit_predict(X, y=None) [source]
Estimate model parameters using X and predict the labels for X.
The method fits the model n_init times and sets the parameters with which the model has the largest likelihood or lower bound. Within each trial, the method iterates between E-step and M-step for max_iter times until the change of likelihood or lower bound is less than tol, otherwise, a ConvergenceWarning is raised. After fitting, it predicts the most probable label for the input data points.
New in version 0.20.
| Parameters: |
|
|---|---|
| Returns: |
|
get_params(deep=True) [source]
Get parameters for this estimator.
| Parameters: |
|
|---|---|
| Returns: |
|
predict(X) [source]
Predict the labels for the data samples in X using trained model.
| Parameters: |
|
|---|---|
| Returns: |
|
predict_proba(X) [source]
Predict posterior probability of each component given the data.
| Parameters: |
|
|---|---|
| Returns: |
|
sample(n_samples=1) [source]
Generate random samples from the fitted Gaussian distribution.
| Parameters: |
|
|---|---|
| Returns: |
|
score(X, y=None) [source]
Compute the per-sample average log-likelihood of the given data X.
| Parameters: |
|
|---|---|
| Returns: |
|
score_samples(X) [source]
Compute the weighted log probabilities for each sample.
| Parameters: |
|
|---|---|
| Returns: |
|
set_params(**params) [source]
Set the parameters of this estimator.
The method works on simple estimators as well as on nested objects (such as pipelines). The latter have parameters of the form <component>__<parameter> so that it’s possible to update each component of a nested object.
| Returns: |
|
|---|
sklearn.mixture.BayesianGaussianMixture
© 2007–2018 The scikit-learn developers
Licensed under the 3-clause BSD License.
http://scikit-learn.org/stable/modules/generated/sklearn.mixture.BayesianGaussianMixture.html