本文簡要介紹python語言中 sklearn.mixture.GaussianMixture
的用法。
用法:
class sklearn.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)
高斯混合。
高斯混合模型概率分布的表示。此類允許估計高斯混合分布的參數。
在用戶指南中閱讀更多信息。
- n_components:整數,默認=1
混合物成分的數量。
- covariance_type:{‘full’, ‘tied’, ‘diag’, ‘spherical’},默認='滿'
說明要使用的協方差參數類型的字符串。必須是以下之一:
- ‘full’:每個分量都有自己的通用協方差矩陣。
- ‘tied’:所有組件共享相同的通用協方差矩陣。
- ‘diag’:每個分量都有自己的對角協方差矩陣。
- ‘spherical’:每個組件都有自己的單一方差。
- tol:浮點數,默認=1e-3
收斂閾值。當下限平均增益低於此閾值時,EM 迭代將停止。
- reg_covar:浮點數,默認=1e-6
添加到協方差對角線上的非負正則化。允許確保協方差矩陣都是正數。
- max_iter:整數,默認=100
要執行的 EM 迭代次數。
- n_init:整數,默認=1
要執行的初始化次數。保持最佳結果。
- init_params:{‘kmeans’, ‘random’},默認='kmeans'
用於初始化權重、均值和精度的方法。必須是以下之一:
'kmeans' : responsibilities are initialized using kmeans. 'random' : responsibilities are initialized randomly.
- weights_init:形狀類似數組 (n_components, ),默認=None
用戶提供的初始權重。如果為 None,則使用
init_params
方法初始化權重。- means_init:形狀類似數組 (n_components, n_features),默認=None
用戶提供的初始均值,如果為無,則使用
init_params
方法初始化均值。- precisions_init:類似數組,默認=無
用戶提供的初始精度(協方差矩陣的倒數)。如果為 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 實例或無,默認=無
控製為初始化參數而選擇的方法提供的隨機種子(請參閱
init_params
)。此外,它還控製從擬合分布中生成隨機樣本(請參閱方法sample
)。傳遞 int 以在多個函數調用之間實現可重現的輸出。請參閱術語表。- warm_start:布爾,默認=假
如果‘warm_start’ 為True,則最後一次擬合的解將用作fit() 的下一次調用的初始化。當在類似問題上多次調用 fit 時,這可以加快收斂速度。在這種情況下,‘n_init’ 將被忽略,並且在第一次調用時隻發生一次初始化。請參閱詞匯表。
- verbose:整數,默認=0
啟用詳細輸出。如果為 1,則打印當前初始化和每個迭代步驟。如果大於 1,那麽它還會打印對數概率和每一步所需的時間。
- verbose_interval:整數,默認=10
下一次打印之前完成的迭代次數。
- weights_:形狀類似數組 (n_components,)
每個混合物組分的重量。
- means_:形狀類似數組 (n_components, n_features)
每個混合成分的平均值。
- covariances_:類數組
每個混合成分的協方差。形狀取決於
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_:類數組
混合物中每種成分的精度矩陣。精度矩陣是協方差矩陣的逆矩陣。協方差矩陣是對稱正定的,因此高斯混合矩陣可以等效地由精度矩陣參數化。存儲精度矩陣而不是協方差矩陣可以更有效地計算測試時新樣本的對數似然。形狀取決於
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_:類數組
每個混合分量的精度矩陣的喬列斯基分解。精度矩陣是協方差矩陣的逆矩陣。協方差矩陣是對稱正定的,因此高斯混合矩陣可以等效地由精度矩陣參數化。存儲精度矩陣而不是協方差矩陣可以更有效地計算測試時新樣本的對數似然。形狀取決於
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() 達到收斂時為真,否則為假。
- n_iter_:int
EM 的最佳擬合達到收斂所使用的步數。
- lower_bound_:浮點數
EM 最佳擬合的對數似然(相對於模型的訓練數據)的下界值。
- n_features_in_:int
擬合期間看到的特征數。
- feature_names_in_:ndarray 形狀(
n_features_in_
,) 擬合期間看到的特征名稱。僅當
X
具有全為字符串的函數名稱時才定義。
參數:
屬性:
例子:
>>> import numpy as np >>> from sklearn.mixture import GaussianMixture >>> X = np.array([[1, 2], [1, 4], [1, 0], [10, 2], [10, 4], [10, 0]]) >>> gm = GaussianMixture(n_components=2, random_state=0).fit(X) >>> gm.means_ array([[10., 2.], [ 1., 2.]]) >>> gm.predict([[0, 0], [12, 3]]) array([1, 0])
相關用法
- Python sklearn GaussianProcessClassifier用法及代碼示例
- Python sklearn GaussianNB用法及代碼示例
- Python sklearn GaussianRandomProjection用法及代碼示例
- Python sklearn GaussianProcessRegressor用法及代碼示例
- Python sklearn GammaRegressor用法及代碼示例
- Python sklearn GradientBoostingRegressor用法及代碼示例
- Python sklearn GridSearchCV用法及代碼示例
- Python sklearn GroupShuffleSplit用法及代碼示例
- Python sklearn GraphicalLassoCV用法及代碼示例
- Python sklearn GroupKFold用法及代碼示例
- Python sklearn GradientBoostingClassifier用法及代碼示例
- Python sklearn GenericUnivariateSelect用法及代碼示例
- Python sklearn GraphicalLasso用法及代碼示例
- Python sklearn jaccard_score用法及代碼示例
- Python sklearn WhiteKernel用法及代碼示例
- Python sklearn CalibrationDisplay.from_predictions用法及代碼示例
- Python sklearn VotingRegressor用法及代碼示例
- Python sklearn gen_batches用法及代碼示例
- Python sklearn ExpSineSquared用法及代碼示例
- Python sklearn MDS用法及代碼示例
- Python sklearn adjusted_rand_score用法及代碼示例
- Python sklearn MLPClassifier用法及代碼示例
- Python sklearn train_test_split用法及代碼示例
- Python sklearn RandomTreesEmbedding用法及代碼示例
- Python sklearn log_loss用法及代碼示例
注:本文由純淨天空篩選整理自scikit-learn.org大神的英文原創作品 sklearn.mixture.GaussianMixture。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。