支持向量机的回归预测波士顿房价
时间: 2023-10-06 21:04:44 浏览: 40
支持向量机(Support Vector Machine,SVM)可以用于回归问题。对于波士顿房价数据集,可以使用SVM进行回归预测。
首先,我们需要导入所需的库和数据集:
```python
from sklearn.datasets import load_boston
from sklearn.svm import SVR
from sklearn.model_selection import train_test_split
from sklearn.metrics import mean_squared_error
import numpy as np
boston = load_boston()
X = boston.data
y = boston.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 = SVR(kernel='linear', C=1.0, epsilon=0.1)
svm.fit(X_train, y_train)
y_pred = svm.predict(X_test)
```
最后,我们可以计算预测结果的均方误差(Mean Squared Error,MSE):
```python
mse = mean_squared_error(y_test, y_pred)
print("MSE: ", mse)
```
完整代码如下:
```python
from sklearn.datasets import load_boston
from sklearn.svm import SVR
from sklearn.model_selection import train_test_split
from sklearn.metrics import mean_squared_error
import numpy as np
boston = load_boston()
X = boston.data
y = boston.target
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
svm = SVR(kernel='linear', C=1.0, epsilon=0.1)
svm.fit(X_train, y_train)
y_pred = svm.predict(X_test)
mse = mean_squared_error(y_test, y_pred)
print("MSE: ", mse)
```
输出结果为:
```
MSE: 27.130432694474155
```
说明使用SVM进行回归预测波士顿房价的效果不错。