我能让支持向量机在大数据集上运行得更快吗?

2024-09-29 23:18:30 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个大数据集大约(35000 x 27)。我在线性和多项式回归中运行sklearn支持向量机。我的跑步时间有时是30分钟或更长。有没有更有效的方法来运行我的支持向量机

我尝试过删除不必要的数据显示,尝试测试和训练的不同组合,但总是接近相同的持续时间。运行高斯或“径向基函数”运行约6分钟,但精度要低得多

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
from sklearn.model_selection import train_test_split
from sklearn import svm
from sklearn import metrics

proteindata = pd.read_csv("data.csv")
np.any(np.isnan(proteindata))

print(proteindata.shape)
print(proteindata.columns)  
print(proteindata.head())

X = proteindata.drop("Class", axis=1)
y = proteindata["Class"]

X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.40)

Classifier = svm.SVC(kernel='poly')
Classifier.fit(X_train, y_train)

y_pred =  Classifier.predict(X_test)

print("Accuracy:", metrics.accuracy_score(y_test, y_pred))

我没有得到任何错误,除了被告知手动设置伽马


Tags: 数据fromtestimportasnptrainsklearn
1条回答
网友
1楼 · 发布于 2024-09-29 23:18:30

看看this answer,它包含了使用较小的训练模型集合来决定最佳分类器的思想。其基本思想是对大量较小的数据子集进行训练。然后,采用聚合模型仍然会合并来自所有数据的信息,而无需立即对所有数据进行训练(,尽管它不会完全等效)。由于支持向量机的训练时间与样本数成二次比例关系,所以对数据子集的训练应该要快得多

相关问题 更多 >

    热门问题