这里提供一个基于scikit-learn库的Python实现,以Iris数据集为例:

from sklearn import datasets
from sklearn.model_selection import train_test_split
from sklearn.svm import SVC
from sklearn.metrics import accuracy_score
from sklearn.preprocessing import StandardScaler
import numpy as np

# 导入数据集
iris = datasets.load_iris()
X = iris.data
y = iris.target

# 数据归一化
scaler = StandardScaler()
X = scaler.fit_transform(X)

# 划分训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=42)

# 定义SVM模型
svm = SVC(kernel='rbf', gamma='auto')

# 训练模型
svm.fit(X_train, y_train)

# 预测测试集
y_pred = svm.predict(X_test)

# 计算准确率
accuracy = accuracy_score(y_test, y_pred)
print('Accuracy:', accuracy)

在上述代码中,我们首先导入Iris数据集并进行数据归一化。然后,我们使用train_test_split函数将数据集划分为训练集和测试集,其中测试集占总数据集的30%。接下来,我们定义了一个SVM模型,其中核函数使用高斯核(即RBF),并使用默认的gamma值。最后,我们用训练好的模型对测试集进行预测,并计算准确率

python实现导入一个指定数据集用高斯核训练一个svm

原文地址: https://www.cveoy.top/t/topic/croa 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录