写一段实现非线性支持向量机的代码
时间: 2023-10-05 16:09:59 浏览: 36
好的,这里是一个简单的Python实现非线性支持向量机的代码。代码中使用了高斯核函数来处理非线性分类问题。
```python
import numpy as np
from sklearn.datasets import make_classification
from sklearn.svm import SVC
from sklearn.model_selection import train_test_split
from sklearn.metrics import accuracy_score
# 生成随机数据
X, y = make_classification(n_samples=1000, n_features=10, n_classes=2, n_informative=5, random_state=42)
# 划分训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
# 构造SVM模型
svm = SVC(kernel='rbf')
# 训练模型
svm.fit(X_train, y_train)
# 预测测试集
y_pred = svm.predict(X_test)
# 输出模型准确率
accuracy = accuracy_score(y_test, y_pred)
print("Accuracy:", accuracy)
```
这段代码中,首先使用`make_classification`函数生成了1000个随机数据样本,每个样本包含10个特征和一个标签。然后使用`train_test_split`函数将数据集划分为训练集和测试集。接下来,我们使用`SVC`类创建了一个SVM模型,使用高斯核函数(`kernel='rbf'`)来处理非线性分类问题。最后,我们使用训练好的模型对测试集进行预测,并计算了模型的准确率。