请你用python帮我写一个支持向量机的代码
时间: 2024-04-30 16:23:08 浏览: 7
好的,以下是一个简单的支持向量机的Python代码:
```
import numpy as np
from sklearn import svm
# 创建训练数据
X_train = np.array([[0, 0], [1, 1]])
y_train = np.array([0, 1])
# 创建支持向量机模型
clf = svm.SVC(kernel='linear', C=1)
# 训练模型
clf.fit(X_train, y_train)
# 创建测试数据
X_test = np.array([[2., 2.]])
# 预测测试数据的标签
print(clf.predict(X_test))
```
在上述代码中,我们使用了Numpy和Scikit-learn库。首先,我们创建了训练数据X_train和对应的标签y_train。然后,我们创建了一个支持向量机模型clf,并指定了它的核函数为线性核函数,惩罚参数C为1。然后,我们使用训练数据来训练模型。最后,我们创建了一个测试数据X_test,并使用训练好的模型来预测它的标签。
相关问题
用python帮我写一段支持向量机的代码
好的,以下是使用Python的Scikit-learn库编写的支持向量机的代码示例:
```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.2, random_state=42)
# 定义支持向量机模型
model = SVC(kernel='linear')
# 在训练集上训练模型
model.fit(X_train, y_train)
# 在测试集上进行预测
y_pred = model.predict(X_test)
# 计算模型的准确率
accuracy = accuracy_score(y_test, y_pred)
print("准确率:", accuracy)
```
这是一个使用线性核函数的支持向量机模型,可以根据需要调整核函数和其他超参数来进一步优化模型性能。
帮我用python写一个支持向量机做回归任务的代码
当然可以,以下是一个简单的支持向量机回归代码示例:
```python
from sklearn.svm import SVR
import numpy as np
# 生成一些随机数据
X = np.sort(5 * np.random.rand(200, 1), axis=0)
y = np.sin(X).ravel()
# 训练模型
svr_rbf = SVR(kernel='rbf', C=1e3, gamma=0.1)
svr_rbf.fit(X, y)
# 预测
X_test = np.linspace(0, 5, 100)[:, np.newaxis]
y_pred = svr_rbf.predict(X_test)
# 可视化结果
import matplotlib.pyplot as plt
plt.scatter(X, y, color='darkorange', label='data')
plt.plot(X_test, y_pred, color='navy', label='RBF model')
plt.xlabel('data')
plt.ylabel('target')
plt.title('Support Vector Regression')
plt.legend()
plt.show()
```
这个代码使用了 sklearn 库中的 SVR 类来训练一个支持向量机回归模型,并使用 matplotlib 库可视化了结果。