當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Python sklearn MultinomialNB用法及代碼示例


本文簡要介紹python語言中 sklearn.naive_bayes.MultinomialNB 的用法。

用法:

class sklearn.naive_bayes.MultinomialNB(*, alpha=1.0, fit_prior=True, class_prior=None)

多項模型的樸素貝葉斯分類器。

多項式樸素貝葉斯分類器適用於具有離散特征的分類(例如,文本分類的字數)。多項分布通常需要整數特征計數。但是,在實踐中,tf-idf 等小數計數也可能有效。

在用戶指南中閱讀更多信息。

參數

alpha浮點數,默認=1.0

Additive (Laplace/Lidstone) 平滑參數(0 表示無平滑)。

fit_prior布爾,默認=真

是否學習類先驗概率。如果為 false,將使用統一的先驗。

class_prior形狀類似數組 (n_classes,),默認=無

類的先驗概率。如果指定,則不會根據數據調整先驗。

屬性

class_count_ndarray 形狀 (n_classes,)

擬合期間每個類遇到的樣本數。該值在提供時按樣品重量加權。

class_log_prior_ndarray 形狀 (n_classes,)

每個類別的平滑經驗對數概率。

classes_ndarray 形狀 (n_classes,)

分類器已知的類標簽

coef_ndarray 形狀(n_classes,n_features)

已棄用:屬性 coef_ 在 0.24 版本中已棄用,並將在 1.1 中刪除(重命名為 0.26)。

feature_count_ndarray 形狀(n_classes,n_features)

擬合期間每個(類、特征)遇到的樣本數。該值在提供時按樣品重量加權。

feature_log_prob_ndarray 形狀(n_classes,n_features)

給定類的特征的經驗對數概率,P(x_i|y)

intercept_ndarray 形狀 (n_classes,)

已棄用:屬性 intercept_ 在 0.24 版本中已棄用,並將在 1.1 中刪除(重命名為 0.26)。

n_features_int

已棄用:屬性 n_features_ 在版本 1.0 中已棄用,並將在 1.2 中刪除。

n_features_in_int

擬合期間看到的特征數。

feature_names_in_ndarray 形狀(n_features_in_,)

擬合期間看到的特征名稱。僅當 X 具有全為字符串的函數名稱時才定義。

注意

有關名稱 coef_intercept_ 背後的基本原理,即樸素貝葉斯作為線性分類器,請參閱 J. Rennie 等人。 (2003),解決樸素貝葉斯文本分類器的不良假設,ICML。

參考

光盤。 Manning、P. Raghavan 和 H. Schuetze(2008 年)。信息檢索導論。劍橋大學出版社,第 234-265 頁。https://nlp.stanford.edu/IR-book/html/htmledition/naive-bayes-text-classification-1.html

例子

>>> import numpy as np
>>> rng = np.random.RandomState(1)
>>> X = rng.randint(5, size=(6, 100))
>>> y = np.array([1, 2, 3, 4, 5, 6])
>>> from sklearn.naive_bayes import MultinomialNB
>>> clf = MultinomialNB()
>>> clf.fit(X, y)
MultinomialNB()
>>> print(clf.predict(X[2:3]))
[3]

相關用法


注:本文由純淨天空篩選整理自scikit-learn.org大神的英文原創作品 sklearn.naive_bayes.MultinomialNB。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。