支持向量机python分类
时间: 2024-05-22 09:08:57 浏览: 90
支持向量机(Support Vector Machine,SVM)是一种监督学习算法,常用于分类和回归分析。在分类问题中,SVM的目标是找到一个最优超平面(即一个线性函数),将不同类别的样本分开,并使得两侧离超平面最近的样本点到该超平面的距离最大。这些最近的样本点被称为支持向量,SVM通过寻找支持向量来对分类边界进行定义。
在Python中,支持向量机可以通过使用Scikit-learn库来实现。以下是一个简单的支持向量机分类器的示例代码:
```python
from sklearn import datasets
from sklearn.model_selection import train_test_split
from sklearn import svm
# 加载数据集
iris = datasets.load_iris()
# 划分训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(iris.data, iris.target, test_size=0.3)
# 创建一个SVM分类器
clf = svm.SVC(kernel='linear', C=1)
# 在训练集上训练模型
clf.fit(X_train, y_train)
# 在测试集上进行预测
y_pred = clf.predict(X_test)
# 计算模型准确率
accuracy = clf.score(X_test, y_test)
print("Accuracy:", accuracy)
```
在上述代码中,我们首先使用Scikit-learn库加载了一个经典的鸢尾花数据集,然后将其划分为训练集和测试集。我们使用了SVM中的线性核函数,并将惩罚参数C设置为1。最后,我们使用训练好的模型在测试集上进行预测,并计算模型的准确率。
阅读全文