使用scikit_learn实现线性回归

这里仍然使用波士顿房价数据。

import numpy as np
from sklearn import datasets
from sklearn.model_selection import train_test_split
from sklearn.linear_model import LinearRegression
boston=datasets.load_boston()
X=boston.data
y=boston.target
X=X[y<50]
y=y[y<50]
X_train,X_test,y_train,y_test=train_test_split(X,y)
使用LinearRegression实现线性回归
reg=LinearRegression()
reg.fit(X_train,y_train)
LinearRegression(copy_X=True, fit_intercept=True, n_jobs=1, normalize=False)
reg.score(X_test,y_test)

精确度:

0.7186399661738103
reg.coef_

系数:

array([-1.07697949e-01,  3.74741701e-02, -4.90985676e-02,  4.32394985e-02,
       -1.08766867e+01,  3.75657466e+00, -2.49827635e-02, -1.24054810e+00,
        2.73036761e-01, -1.48647835e-02, -8.72880655e-01,  1.01060308e-02,
       -3.55395457e-01])
reg.intercept_

截距:

31.7262203293836
使用knn实现线性回归

knn中KNeighborsClassifier解决分类问题, KNeighborsRegressor解决回归问题

from sklearn.neighbors import KNeighborsRegressor
reg2=KNeighborsRegressor()
reg2.fit(X_train,y_train)
reg2.score(X_train,y_train)

精确度为:

0.7005544649219793

使用knn预测,knn存在超参数,所以要对超参数进行处理,选出最合适的k值和p值,上述使用的是默认的k值,所以准确率可能较低,处理后的k值可以使预测结果有较高的准确度。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值