📉 Documentação Oficial (Scikit-Learn)
| ID | Comando / Classe / Parâmetro | O que faz | Exemplo |
|---|---|---|---|
| 1 | GaussianNB() | NB para dados com distribuição normal (contínuos) | model = GaussianNB() |
| 2 | MultinomialNB() | NB para dados de contagem (ex: frequências de texto) | model = MultinomialNB() |
| 3 | BernoulliNB() | NB para dados binários/booleanos | model = BernoulliNB() |
| 4 | ComplementNB() | Otimizado para datasets desbalanceados | model = ComplementNB() |
| 5 | CategoricalNB() | Para variáveis categóricas com categorias discretas | model = CategoricalNB() |
| 6 | alpha= | Suavização de Laplace (evita probabilidade zero) | MultinomialNB(alpha=1.0) |
| 7 | fit_prior= | Se deve aprender probabilidades a priori das classes | GaussianNB(fit_prior=True) |
| 8 | class_prior= | Probabilidades prévias das classes (lista) | class_prior=[0.3, 0.7] |
| 9 | var_smoothing= | Estabilidade de cálculo para GaussianNB | GaussianNB(var_smoothing=1e-9) |
| 10 | model.fit(X, y) | Treina o modelo com dados e labels | model.fit(X_train, y_train) |
| 11 | model.predict(X) | Realiza a classificação de novos dados | y_pred = model.predict(X_test) |
| 12 | model.predict_proba(X) | Retorna a probabilidade de cada classe | probs = model.predict_proba(X_test) |
| 13 | model.predict_log_proba(X) | Logaritmo das probabilidades (estabilidade numérica) | model.predict_log_proba(X) |
| 14 | model.partial_fit() | Treino incremental (online learning) | model.partial_fit(X, y, classes) |
| 15 | model.score(X, y) | Retorna a acurácia média do modelo | model.score(X_test, y_test) |
| 16 | model.class_count_ | Número de amostras encontradas em cada classe | print(model.class_count_) |
| 17 | model.class_prior_ | Probabilidade a priori de cada classe | print(model.class_prior_) |
| 18 | model.classes_ | Lista de labels de classes conhecidas | print(model.classes_) |
| 19 | model.feature_count_ | Número de amostras para cada feature (Multinomial) | model.feature_count_ |
| 20 | model.theta_ | Média de cada feature por classe (Gaussian) | model.theta_ |
| 21 | model.var_ | Variância de cada feature por classe (Gaussian) | model.var_ |
| 22 | CountVectorizer() | Converte texto em matriz de contagem de tokens | vect = CountVectorizer() |
| 23 | TfidfVectorizer() | Converte texto em pesos TF-IDF | tfidf = TfidfVectorizer() |
| 24 | LabelEncoder() | Codifica targets categóricos em números | le.fit_transform(y) |
| 25 | StandardScaler() | Padronização (Cuidado: NB assume distribuições) | scaler.fit_transform(X) |
| 26 | train_test_split() | Divide dados em treino e teste | X_train, X_test, y_train, y_test = ... |
| 27 | accuracy_score() | Calcula acurácia total | accuracy_score(y_true, y_pred) |
| 28 | confusion_matrix() | Gera matriz de confusão | confusion_matrix(y_true, y_pred) |
| 29 | classification_report() | Exibe Precision, Recall e F1-Score | print(classification_report(y_t, y_p)) |
| 30 | precision_score() | Proporção de positivos corretos | precision_score(y_t, y_p) |
| 31 | recall_score() | Capacidade de encontrar todos os positivos | recall_score(y_t, y_p) |
| 32 | f1_score() | Média harmônica entre precision e recall | f1_score(y_t, y_p) |
| 33 | roc_auc_score() | Área sob a curva ROC | roc_auc_score(y_t, probs) |
| 34 | P(A|B) | Probabilidade Posteriori | Cálculo final do modelo |
| 35 | P(B|A) | Likelihood (Verossimilhança) | Probabilidade da evidência dada a classe |
| 36 | P(A) | Prior (A priori) | Conhecimento prévio da classe |
| 37 | P(B) | Evidence (Evidência) | Normalizador da probabilidade |
| 38 | Independence | Suposição "Ingênua" | Features são independentes entre si |
| 39 | make_pipeline() | Encadeia vetorização e modelo | pipe = make_pipeline(Tfidf(), MultinomialNB()) |
| 40 | GridSearchCV() | Busca exaustiva de hiperparâmetros (alpha) | GridSearchCV(nb, params) |
| 41 | cross_val_score() | Validação cruzada do modelo | cross_val_score(nb, X, y, cv=5) |