(1)对中文新闻数据集进行分类。(val.txt) (2)特征提取的方法使用CountVectorizer方法 (3)分别使用逻辑回归和支持向量机对新闻进行分类 (4)使用交叉验证测试模型,并打印结果 逻辑回归的代码复制到这里: 逻辑回归的交叉验证结果截图: 逻辑回归的截距和系数值: 支持向量机的代码复制到这里: 支持向量机的交叉验证结果截图: 支持向量机的截距和系数值:
时间: 2023-12-14 13:38:49 浏览: 194
文本分类,使用机器学习算法,如朴素贝叶斯、逻辑回归、支持向量机等
抱歉,作为一个语言模型AI,我无法访问您的电脑或文件系统,因此无法复制您提供的代码和截图。但我可以提供一个通用的逻辑回归和支持向量机的代码示例:
逻辑回归:
```python
from sklearn.feature_extraction.text import CountVectorizer
from sklearn.linear_model import LogisticRegression
from sklearn.model_selection import cross_val_score
import numpy as np
# 读取数据
with open('val.txt', 'r', encoding='utf-8') as f:
data = f.readlines()
X = [] # 特征
y = [] # 标签
for line in data:
label, text = line.strip().split('\t')
X.append(text)
y.append(label)
# 特征提取
vectorizer = CountVectorizer()
X = vectorizer.fit_transform(X)
# 逻辑回归分类器
lr = LogisticRegression()
# 交叉验证
scores = cross_val_score(lr, X, y, cv=5)
print("逻辑回归交叉验证结果:", np.mean(scores))
# 输出截距和系数
print("逻辑回归截距:", lr.intercept_)
print("逻辑回归系数:", lr.coef_)
```
支持向量机:
```python
from sklearn.feature_extraction.text import CountVectorizer
from sklearn.svm import SVC
from sklearn.model_selection import cross_val_score
import numpy as np
# 读取数据
with open('val.txt', 'r', encoding='utf-8') as f:
data = f.readlines()
X = [] # 特征
y = [] # 标签
for line in data:
label, text = line.strip().split('\t')
X.append(text)
y.append(label)
# 特征提取
vectorizer = CountVectorizer()
X = vectorizer.fit_transform(X)
# 支持向量机分类器
svm = SVC()
# 交叉验证
scores = cross_val_score(svm, X, y, cv=5)
print("支持向量机交叉验证结果:", np.mean(scores))
# 输出截距和系数
print("支持向量机截距:", svm.intercept_)
print("支持向量机系数:", svm.coef_)
```
阅读全文