python支持向量机鸢尾花
时间: 2024-10-31 22:07:33 浏览: 23
svm支持向量机python代码
Python支持向量机(SVM,Support Vector Machine)是一种监督学习模型,常用于分类和回归分析。在鸢尾花数据集(Iris Dataset)上,这是一个经典的机器学习示例,其中包含了三种不同种类的鸢尾花的测量数据。SVM通过找到最优超平面将数据分隔开,使得各类别之间的间隔最大化。
在Python中,你可以使用scikit-learn库来处理鸢尾花数据并训练SVM模型。以下是一个简单的步骤概述:
1. 导入所需的库:
```python
from sklearn import datasets
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import StandardScaler
from sklearn.svm import SVC
from sklearn.metrics import accuracy_score
```
2. 加载数据:
```python
iris = datasets.load_iris()
X = iris.data
y = iris.target
```
3. 数据预处理(如果需要),如标准化数据:
```python
scaler = StandardScaler()
X_scaled = scaler.fit_transform(X)
```
4. 划分训练集和测试集:
```python
X_train, X_test, y_train, y_test = train_test_split(X_scaled, y, test_size=0.2, random_state=42)
```
5. 创建并训练SVM模型:
```python
svm_model = SVC(kernel='linear') # 或者选择其他内核如'poly', 'rbf'
svm_model.fit(X_train, y_train)
```
6. 预测和评估模型:
```python
y_pred = svm_model.predict(X_test)
print("Accuracy:", accuracy_score(y_test, y_pred))
```
阅读全文