朴素贝叶斯情感分析代码
时间: 2024-06-11 13:02:12 浏览: 207
朴素贝叶斯情感分析是一种常用的文本分类方法,其基本思想是利用贝叶斯公式来计算给定文本的情感概率,从而进行情感分类。具体来说,朴素贝叶斯情感分析将文本中每个词作为一个特征,利用训练集中的文本计算出每个情感类别下每个特征的条件概率,然后根据贝叶斯公式计算出给定文本属于每个情感类别的概率,从而确定文本的情感类别。
以下是一个简单的Python实现朴素贝叶斯情感分析的代码:
``` python
import pandas as pd
import numpy as np
from sklearn.feature_extraction.text import CountVectorizer
from sklearn.naive_bayes import MultinomialNB
# 读取数据集
data = pd.read_csv('data.csv')
# 将数据集拆分为训练集和测试集
train_data = data.sample(frac=0.8, random_state=1)
test_data = data.drop(train_data.index)
# 将文本转换为向量表示
vectorizer = CountVectorizer()
train_vectors = vectorizer.fit_transform(train_data['text'])
test_vectors = vectorizer.transform(test_data['text'])
# 训练朴素贝叶斯分类器
clf = MultinomialNB()
clf.fit(train_vectors, train_data['label'])
# 在测试集上进行预测
predictions = clf.predict(test_vectors)
# 计算分类准确率
accuracy = np.mean(predictions == test_data['label'])
print('Accuracy:', accuracy)
```
其中,数据集需要包含两列:一列是文本内容,一列是情感标签(如正面、负面、中性等)。代码首先将数据集拆分为训练集和测试集,然后使用CountVectorizer将文本转换为向量表示。接着使用MultinomialNB训练朴素贝叶斯分类器,并在测试集上进行预测。最后计算分类准确率。
阅读全文