前提・実現したいこと
マルチクラスの分類問題で教師あり学習のプログラムを実装中、アルゴリズムとしてMultinomialNBの使用を試みたところ、NameErrorが発生しました。
Traceback (most recent call last): File "/Users/hankechi78/opt/anaconda3/lib/python3.8/site-packages/IPython/core/interactiveshell.py", line 3343, in run_code exec(code_obj, self.user_global_ns, self.user_ns) File "<ipython-input-128-0d747af3404c>", line 6, in <module> MultinomialNB() NameError: name 'MultinomialNB' is not defined
最初にfrom sklearn.naive_bayes import MultinomialNBを挿入しているのでMultinomialNBは確かにインポートされているはずです。
エラーの原因がわかりません。
%matplotlib inline from nltk.corpus import stopwords from sklearn import metrics from sklearn import model_selection from sklearn.base import BaseEstimator, TransformerMixin from sklearn.dummy import DummyClassifier from sklearn.ensemble import RandomForestClassifier from sklearn.feature_extraction import DictVectorizer from sklearn.feature_extraction.text import CountVectorizer,TfidfVectorizer from sklearn.linear_model import LogisticRegression from sklearn.metrics import classification_report, f1_score, accuracy_score, confusion_matrix from sklearn.model_selection import train_test_split from sklearn.multiclass import OneVsRestClassifier from sklearn.naive_bayes import MultinomialNB from sklearn.neighbors import KNeighborsClassifier from sklearn.pipeline import Pipeline, FeatureUnion, make_pipeline from sklearn.tree import DecisionTreeClassifier import spacy import matplotlib.pyplot as plt import numpy as np import pandas as pd import string (データフレームの作成、データの前処理部分は長くなるので省略) union = FeatureUnion(transformer_list = [ ("thematique_features", thematique_pipeline), ("declaration_feature", declaration_pipeline2), ("position_feature", position_pipeline)]) preprocess_pipeline = make_pipeline( union ) preprocess_pipeline.fit(X_train) classifier_pipeline = make_pipeline( preprocess_pipeline, MultinomialNB() ) classifier_pipeline.fit(X_train, y_train)
試したこと
Jupyter notebookで作成しています。もう一度念のため冒頭のセルから順に実行していきましたが、同様にNameErrorが表示されます。
補足:インストール済みのsckit learnの情報
Name: scikit-learn
Version: 0.23.1
Summary: A set of python modules for machine learning and data mining
Home-page: http://scikit-learn.org
Author: None
Author-email: None
License: new BSD
Location: /Users/hankechi78/opt/anaconda3/lib/python3.8/site-packages
Requires: numpy, threadpoolctl, scipy, joblib
Required-by: mglearn