龙空技术网

支持向量机SVM和逻辑回归算法LR完成文本分类任务

人工智能技术分享AI 37

前言:

如今小伙伴们对“svm分类训练算法”都比较注意,姐妹们都需要学习一些“svm分类训练算法”的相关内容。那么小编同时在网上收集了一些关于“svm分类训练算法””的相关文章,希望大家能喜欢,兄弟们一起来学习一下吧!

人工智能专栏推荐

正文

使用SVM和LR都可以做分类,我们来看一下它们是怎么做到的?本文将使用SVM和LR同时来拟合同一数据训练出SVM模型和LR模型。

我们现在有两个文件,分别是spamTrain.mat训练集数据,和spamTest.mat

测试集数据。我们先对这两文件进行读取,生成训练数据X, y

以及测试数据test_X, test_y

数据已经有了,我们分别来拟合svm模型和LR模型,然后让它们分别来预测我们的预测数据,看它们的各项指标。

全部代码:代码

#svm
svc = svm.SVC()
svc.fit(X, y)
pred = svc.predict(test_X)
print(metrics.classification_report(test_y, pred))
#逻辑回归
logit = LogisticRegression()
logit.fit(X, y)
pred = logit.predict(test_X)
print(metrics.classification_report(test_y, pred))
代码:
from sklearn import svm
from sklearn import metrics
from sklearn.linear_model import LogisticRegression
import scipy.io as sio
mat_tr = sio.loadmat('spamTrain.mat')
print (mat_tr.keys())
mat_test = sio.loadmat('spamTest.mat')
print (mat_test.keys())
X, y = mat_tr.get('X'), mat_tr.get('y').ravel()
print (X.shape, y.shape)
test_X, test_y = mat_test.get('Xtest'), mat_test.get('ytest').ravel()
print (test_X.shape, test_y.shape)
#svm
svc = svm.SVC()
svc.fit(X, y)
pred = svc.predict(test_X)
print(metrics.classification_report(test_y, pred))
#逻辑回归
logit = LogisticRegression()
logit.fit(X, y)
pred = logit.predict(test_X)
print(metrics.classification_report(test_y, pred))

标签: #svm分类训练算法