用法:
class cuml.naive_bayes.MultinomialNB(*, alpha=1.0, fit_prior=True, class_prior=None, output_type=None, handle=None, verbose=False)
多項模型的樸素貝葉斯分類器
多項式樸素貝葉斯分類器適用於具有離散特征的分類(例如,文本分類的字數)。
多項分布通常需要整數特征計數。但是,在實踐中,tf-idf 等小數計數也可能有效。
- alpha:浮點數
Additive (Laplace/Lidstone) 平滑參數(0 表示無平滑)。
- fit_prior:布爾值
是否學習類先驗概率。如果為 false,將使用統一的先驗。
- class_prior:array-like,大小(n_classes)
類的先驗概率。如果指定,則不會根據數據調整先驗。
- output_type:{‘input’, ‘cudf’, ‘cupy’, ‘numpy’, ‘numba’},默認=無
用於控製估計器的結果和屬性的輸出類型的變量。如果為 None,它將繼承在模塊級別設置的輸出類型
cuml.global_settings.output_type
。有關詳細信息,請參閱輸出數據類型配置。- handle:cuml.Handle
指定 cuml.handle 保存用於此模型中計算的內部 CUDA 狀態。最重要的是,這指定了將用於模型計算的 CUDA 流,因此用戶可以通過在多個流中創建句柄在不同的流中同時運行不同的模型。如果為 None,則創建一個新的。
- verbose:int 或布爾值,默認=False
設置日誌記錄級別。它必須是
cuml.common.logger.level_*
之一。有關詳細信息,請參閱詳細級別。
參數:
例子:
從 Scikit-learn 加載 20 個新聞組數據集並訓練一個樸素貝葉斯分類器。
import cupy as cp from sklearn.datasets import fetch_20newsgroups from sklearn.feature_extraction.text import CountVectorizer from cuml.naive_bayes import MultinomialNB # Load corpus twenty_train = fetch_20newsgroups(subset='train', shuffle=True, random_state=42) # Turn documents into term frequency vectors count_vect = CountVectorizer() features = count_vect.fit_transform(twenty_train.data) # Put feature vectors and labels on the GPU X = cupyx.scipy.sparse.csr_matrix(features.tocsr(), dtype=cp.float32) y = cp.asarray(twenty_train.target, dtype=cp.int32) # Train model model = MultinomialNB() model.fit(X, y) # Compute accuracy on training set model.score(X, y)
輸出:
0.9244298934936523
- class_count_:形狀的ndarray(n_classes)
擬合期間每個類遇到的樣本數。
- class_log_prior_:形狀的ndarray(n_classes)
每個類的對數概率(平滑)。
- classes_:ndarray 形狀 (n_classes,)
分類器已知的類標簽
- feature_count_:ndarray 形狀(n_classes,n_features)
擬合期間每個(類、特征)遇到的樣本數。
- feature_log_prob_:ndarray 形狀(n_classes,n_features)
給定類 P(x_i|y) 的特征的經驗對數概率。
- n_features_:int
每個樣本的特征數。
屬性:
相關用法
- Python cuml.naive_bayes.CategoricalNB用法及代碼示例
- Python cuml.naive_bayes.BernoulliNB用法及代碼示例
- Python cuml.naive_bayes.GaussianNB用法及代碼示例
- Python cuml.neighbors.KNeighborsClassifier用法及代碼示例
- Python cuml.neighbors.NearestNeighbors用法及代碼示例
- Python cuml.neighbors.KNeighborsRegressor用法及代碼示例
- Python cuml.metrics.pairwise_distances.pairwise_distances用法及代碼示例
- Python cuml.ensemble.RandomForestRegressor用法及代碼示例
- Python cuml.svm.SVC用法及代碼示例
- Python cuml.svm.SVR用法及代碼示例
- Python cuml.Lasso用法及代碼示例
- Python cuml.tsa.ARIMA.predict用法及代碼示例
- Python cuml.multiclass.OneVsRestClassifier用法及代碼示例
- Python cuml.preprocessing.LabelBinarizer用法及代碼示例
- Python cuml.random_projection.GaussianRandomProjection用法及代碼示例
- Python cuml.MBSGDRegressor用法及代碼示例
- Python cuml.experimental.preprocessing.PolynomialFeatures用法及代碼示例
- Python cuml.PCA用法及代碼示例
- Python cuml.feature_extraction.text.HashingVectorizer用法及代碼示例
- Python cuml.DBSCAN用法及代碼示例
注:本文由純淨天空篩選整理自rapids.ai大神的英文原創作品 cuml.naive_bayes.MultinomialNB。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。