写Python代码,实现基于SVM的文本情感分类设计与实现,至少实现三分类,用三分类以上的数据集
时间: 2024-03-07 12:48:27 浏览: 48
基于python的svm与word2vec文本情感分析设计与实现
5星 · 资源好评率100%
好的,以下是一个简单的基于SVM的文本情感分类的Python代码示例,用到了sklearn库:
```python
from sklearn.feature_extraction.text import TfidfVectorizer
from sklearn.model_selection import train_test_split
from sklearn.svm import SVC
from sklearn.metrics import classification_report
# 读取数据集
with open('data.txt', 'r', encoding='utf-8') as f:
data = f.readlines()
# 分割数据集
X = [d.split('\t')[1] for d in data]
y = [int(d.split('\t')[0]) for d in data]
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
# 特征提取
vectorizer = TfidfVectorizer()
X_train = vectorizer.fit_transform(X_train)
X_test = vectorizer.transform(X_test)
# 训练模型
clf = SVC(kernel='linear', C=1.0)
clf.fit(X_train, y_train)
# 预测结果
y_pred = clf.predict(X_test)
# 输出分类结果
print(classification_report(y_test, y_pred))
```
上述代码中,我们首先读取数据集,然后使用train_test_split函数将数据集分割为训练集和测试集。接着,我们使用TfidfVectorizer对文本数据进行特征提取,将文本数据转化为数值特征向量。然后,我们使用SVM算法进行训练,并进行模型参数调优。最后,我们使用测试集对模型进行评估,并输出分类结果。
阅读全文