使用SVM进行分类iris数据集
时间: 2023-11-26 11:54:56 浏览: 155
Iris数据集是机器学习领域中最常用的数据集之一,它包含150个样本,其中每个样本有4个特征,分别是花萼长度、花萼宽度、花瓣长度和花瓣宽度。这些样本分别属于3个不同的类别:Setosa、Versicolor和Virginica。下面我们将使用SVM算法对Iris数据集进行分类。
首先,我们需要导入必要的库和数据集:
```python
from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split
from sklearn.svm import SVC
from sklearn.metrics import accuracy_score
# 导入数据集
iris = load_iris()
X = iris.data
y = iris.target
```
接下来,我们将数据集分成训练集和测试集:
```python
# 将数据集分成训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
```
然后,我们可以使用SVM算法对数据集进行分类:
```python
# 创建SVM分类器
clf = SVC(kernel='linear')
# 在训练集上拟合模型
clf.fit(X_train, y_train)
# 在测试集上进行预测
y_pred = clf.predict(X_test)
```
最后,我们可以计算模型的准确率:
```python
# 计算模型的准确率
accuracy = accuracy_score(y_test, y_pred)
print('Accuracy:', accuracy)
```
运行完整代码,输出的准确率为0.9666666666666667,表示我们的模型在预测测试集时准确率为96.67%。
阅读全文