MultinomialNBはカテゴリデータを直接渡せないんか
MultinomialNBモデルは、入力として数値データを必要としますが、商品名のようなテキストデータを直接受け取ることができません。そのため、まずは商品名を数値データに変換する必要があります。これを行う方法の1つは、テキストデータをベクトル化することです。ここでは、CountVectorizerを使用して商品名をベクトル化します。
次のようにしてコードを変更します:
python from sklearn.feature_extraction.text import CountVectorizer # 商品名をベクトル化する vectorizer = CountVectorizer() X_product_name_vectorized = vectorizer.fit_transform(X_product_name) # ナイーブベイズのモデルを作成し、ベクトル化された商品名を入力として学習させる nb_model = MultinomialNB() nb_model.fit(X_product_name_vectorized, y) # ナイーブベイズで予測されたサイズデータを新たな説明変数として追加 data['nb_predicted_size'] = nb_model.predict(X_product_name_vectorized)
このように変更することで、MultinomialNBモデルにテキストデータを入力として与えることができます。

ディスカッション
コメント一覧
まだ、コメントがありません