写一个SVM处理二分类的代码
时间: 2024-02-15 13:04:26 浏览: 23
以下是一个使用 scikit-learn 库中的 SVM 模型进行二分类的示例代码:
```python
import numpy as np
from sklearn.svm import SVC
from sklearn.datasets import make_blobs
from sklearn.model_selection import train_test_split
# 创建一个二分类数据集
X, y = make_blobs(n_samples=100, centers=2, n_features=2, random_state=1)
# 将数据集划分为训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=1)
# 实例化 SVM 分类器
svm = SVC(kernel='linear', C=100)
# 训练模型
svm.fit(X_train, y_train)
# 预测测试集的结果
y_pred = svm.predict(X_test)
# 计算准确率
accuracy = np.mean(y_pred == y_test)
# 输出准确率
print("Accuracy:", accuracy)
```
上面的代码中,我们首先使用 `make_blobs` 函数创建了一个二分类的数据集。接着,我们使用 `train_test_split` 函数将数据集划分为训练集和测试集。然后,我们实例化了一个 SVM 分类器,并使用训练集来训练模型。接着,我们使用训练好的模型对测试集进行预测,并计算预测的准确率。最后,输出准确率。
注意,在实际应用中,我们通常会对 SVM 分类器进行参数调优,并使用交叉验证等技术来评估模型的性能。