对单个评论进行情感分析.. 代码中classifier.fit(new_X_test, )的第二个参数应该是?

这是对单个评论进行情感分析的代码,由于没有数据集,我无法确定在朴素贝叶斯模型中classifier.fit方法的第二个参数应该是什么?

# 导入库import numpy as npimport matplotlib.pyplot as pltimport pandas as pd# 清理代码import re   import nltk    nltk.download('stopwords') from nltk.corpus import stopwords from nltk.stem.porter import PorterStemmer new_review = 'I love this restaurant so much'new_review = re.sub('[^a-zA-Z]', ' ', new_review)new_review = new_review.lower()new_review = new_review.split()ps = PorterStemmer()all_stopwords = stopwords.words('english')all_stopwords.remove('not')new_review = [ps.stem(word) for word in new_review if not word in set(all_stopwords)]new_review = ' '.join(new_review)new_corpus = [new_review]# 创建词袋模型from sklearn.feature_extraction.text import CountVectorizercv = CountVectorizer(3)new_X_test = cv.fit_transform(new_corpus).toarray()#new_X_test = cv.transform(new_corpus).toarray()# 在朴素贝叶斯模型中进行训练from sklearn.naive_bayes import GaussianNBclassifier = GaussianNB()classifier.fit(new_X_test, )# 预测结果#y_pred = classifier.predict(X)new_y_pred = classifier.predict(new_X_test)print(new_y_pred)#new_X_test = cv.transform(new_corpus).toarray()#new_y_pred = classifier.predict(X)#print(new_y_pred)

回答:

根据sklearn.naive_bayes.GaussianNB.fit()手册页面,第二个参数是y,其中:

y: 形状为(n_samples,)的数组类型
目标值。

在你的例子中,目标值是你唯一评论的情感。朴素贝叶斯是一种监督分类算法。”监督”意味着在训练(或模型拟合)过程中,你需要通过提供正确的目标值(或标签)来指导算法。

目前的代码实际上没有太大意义。你无法用仅一个样本有意义地训练/拟合模型。你需要有一个包含许多评论的数据集来拟合模型,然后尝试预测新样本。

Related Posts

使用LSTM在Python中预测未来值

这段代码可以预测指定股票的当前日期之前的值,但不能预测…

如何在gensim的word2vec模型中查找双词组的相似性

我有一个word2vec模型,假设我使用的是googl…

dask_xgboost.predict 可以工作但无法显示 – 数据必须是一维的

我试图使用 XGBoost 创建模型。 看起来我成功地…

ML Tuning – Cross Validation in Spark

我在https://spark.apache.org/…

如何在React JS中使用fetch从REST API获取预测

我正在开发一个应用程序,其中Flask REST AP…

如何分析ML.NET中多类分类预测得分数组?

我在ML.NET中创建了一个多类分类项目。该项目可以对…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注