调通的Python SVM鸢尾花识别代码
时间: 2023-11-19 14:12:05 浏览: 97
SVM鸢尾花分类Python实现
以下是一份Python SVM鸢尾花识别代码的示例:
```python
# 导入需要的库
from sklearn import datasets
from sklearn.model_selection import train_test_split
from sklearn.svm import SVC
from sklearn.metrics import accuracy_score
# 加载鸢尾花数据集
iris = datasets.load_iris()
X = iris.data
y = iris.target
# 将数据集分为训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=0)
# 创建SVM分类器并进行训练
clf = SVC(kernel='linear', C=1.0, random_state=0)
clf.fit(X_train, y_train)
# 对测试集进行预测
y_pred = clf.predict(X_test)
# 计算分类器的准确率
accuracy = accuracy_score(y_test, y_pred)
print('Accuracy:', accuracy)
```
该代码使用了sklearn库中的SVM分类器来对鸢尾花数据集进行分类。代码分析如下:
(1)导入需要的库:从sklearn库中导入所需的数据集、训练集拆分、SVM分类器和准确率计算所需的函数。
(2)加载鸢尾花数据集:使用datasets库中的load_iris函数加载鸢尾花数据集,并将数据和标签分别赋值给X和y。
(3)将数据集分为训练集和测试集:使用train_test_split函数将数据集分为训练集和测试集,其中测试集占总数据集的30%。
(4)创建SVM分类器并进行训练:使用SVC函数创建一个SVM分类器,并使用fit函数对训练集进行训练。
(5)对测试集进行预测:使用predict函数对测试集进行预测,并将预测结果赋值给y_pred。
(6)计算分类器的准确率:使用accuracy_score函数计算分类器在测试集上的准确率,并将结果打印出来。
在实际应用中,可以根据需求选择不同的核函数和参数来优化SVM分类器的性能。
阅读全文