svm情感分类python代码
时间: 2024-02-29 11:49:28 浏览: 92
python情感分类
当涉及到情感分类时,支持向量(Support Vector Machine,SVM)是一常用的机器学习算法。下面是一个使用Python实现情感分类的SVM代码示例:
```python
# 导所需的库
from sklearn.feature_extraction.text import TfidfVectorizer
from sklearn import svm
from sklearn.metrics import classification_report
# 准备训练数据和标签
train_data = ["I love this movie", "This movie is great", "I really enjoyed this movie"]
train_labels = [1, 1, 1] # 1代表正面情感
# 准备测试数据和标签
test_data = ["This movie is", "I hate this movie", "I didn't like this movie"]
test_labels = [0, 0, 0] # 0代表负面情感
# 创建TF-IDF向量化器
vectorizer = TfidfVectorizer()
# 将训练数据向量化
train_vectors = vectorizer.fit_transform(train_data)
# 创建SVM分类器
classifier = svm.SVC()
# 训练SVM分类器
classifier.fit(train_vectors, train_labels)
# 将测试数据向量化
test_vectors = vectorizer.transform(test_data)
# 使用训练好的分类器进行预测
predictions = classifier.predict(test_vectors)
# 输出分类结果报告
print(classification_report(test_labels, predictions))
```
上述代码中,我们首先导入了所需的库,包括`TfidfVectorizer`用于将文本转换为TF-IDF特征向量,`svm`用于创建SVM分类器,`classification_report`用于生成分类结果报告。
然后,我们准备了训练数据和标签,其中训练数据是一些带有情感的句子,标签表示每个句子的情感类别(1代表正面情感,0代表负面情感)。
接下来,我们创建了一个TF-IDF向量化器,并使用训练数据对其进行拟合和转换,得到训练数据的特征向量表示。
然后,我们创建了一个SVM分类器,并使用训练数据和标签对其进行训练。
接着,我们将测试数据使用之前拟合好的向量化器进行转换,得到测试数据的特征向量表示。
最后,我们使用训练好的分类器对测试数据进行预测,并输出分类结果报告。
阅读全文