python svm多分类
时间: 2023-07-22 10:14:10 浏览: 101
Svm实现多分类
3星 · 编辑精心推荐
在Python中,可以使用scikit-learn库来实现SVM多分类。具体步骤如下:
1. 导入所需的库:
```python
from sklearn import svm
from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split
from sklearn.metrics import accuracy_score
```
2. 加载数据集:
```python
iris = load_iris()
X = iris.data
y = iris.target
```
3. 划分训练集和测试集:
```python
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=42)
```
4. 训练模型:
```python
clf = svm.SVC(kernel='linear', C=1, decision_function_shape='ovr')
clf.fit(X_train, y_train)
```
5. 预测测试集:
```python
y_pred = clf.predict(X_test)
```
6. 计算准确率:
```python
acc = accuracy_score(y_test, y_pred)
print("Accuracy:", acc)
```
注意:上述代码使用的是线性核函数,如果需要使用其他核函数,可以修改SVC()函数的kernel参数。同时,decision_function_shape参数设置为'ovr'表示采用one-vs-rest策略进行多分类。另外,C参数是SVM中的正则项,可以根据实际情况进行调整。
阅读全文