线性回归api的使用

线性回归

线性回归api使用

from sklearn.linear_model import LinearRegression

x = [[80,86],
    [82,80],
    [85,78],
    [90,90],
    [86,82],
    [82,90],
    [78,80],
    [92,94]]
y = [84.2,80.6,80.1,90,83.2,87.6,79.4,93.4]
#实例化API
estimator = LinearRegression()
#使用fit方法进行训练
estimator.fit(x,y)

#打印对应的系数
print("线性回归的系数是:\n",estimator.coef_)
#打印预测的结果
print("输出预测结果:\n",estimator.predict([[100,80]]))

正规方程

from sklearn.datasets import load_boston
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import StandardScaler
from sklearn.linear_model import LinearRegression
from sklearn.metrics import mean_squared_error

def linear_model():
    #获取数据
    boston = load_boston()
    #数据基本处理-分割数据
    x_train,x_test,y_train,y_test = train_test_split(boston.data,boston.target,test_size=0.2)
    #特征工程-标准化
    transfer = StandardScaler()
    x_train = transfer.fit_transform(x_train)
    x_test = transfer.transform(x_test)
    #机器学习-线性回归
    estimator = LinearRegression()
    estimator.fit(x_train,y_train)
    
    print("这个模型的偏置是:\n",estimator.intercept_)
    print("这个模型的系数是:\n",estimator.coef_)
    #评估模型
    y_pre = estimator.predict(x_test)
    print("预测值是:\n",y_pre)
 	ret = mean_squared_error(y_test,y_pre)
	print("均方误差为:\n",ret)

linear_model()   

梯度下降

from sklearn.datasets import load_boston
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import StandardScaler
from sklearn.linear_model import SGDRegressor
from sklearn.metrics import mean_squared_error

def linear_model():
    #获取数据
    boston = load_boston()
    #数据基本处理-分割数据
    x_train,x_test,y_train,y_test = train_test_split(boston.data,boston.target,test_size=0.2)
    #特征工程-标准化
    transfer = StandardScaler()
    x_train = transfer.fit_transform(x_train)
    x_test = transfer.transform(x_test)
    #机器学习-线性回归
    estimator = SGDRegressor(max_iter=1000)
    estimator.fit(x_train,y_train)
    
    print("这个模型的偏置是:\n",estimator.intercept_)
    print("这个模型的系数是:\n",estimator.coef_)
    #评估模型
    y_pre = estimator.predict(x_test)
    print("预测值是:\n",y_pre)
 	ret = mean_squared_error(y_test,y_pre)
	print("均方误差为:\n",ret)

linear_model()   

岭回归

from sklearn.datasets import load_boston
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import StandardScaler
from sklearn.linear_model import Ridge,RidgeCV
from sklearn.metrics import mean_squared_error

def linear_model():
    #获取数据
    boston = load_boston()
    #数据基本处理-分割数据
    x_train,x_test,y_train,y_test = train_test_split(boston.data,boston.target,test_size=0.2)
    #特征工程-标准化
    transfer = StandardScaler()
    x_train = transfer.fit_transform(x_train)
    x_test = transfer.transform(x_test)
    #机器学习-岭回归
    estimator = Ridge(alpha=1.0)
    #estimator = RidgeCV(alphas=(0.001,0.01,0.1,1,10,100))
    estimator.fit(x_train,y_train)
    
    print("这个模型的偏置是:\n",estimator.intercept_)
    print("这个模型的系数是:\n",estimator.coef_)
    #评估模型
    y_pre = estimator.predict(x_test)
    print("预测值是:\n",y_pre)
 	ret = mean_squared_error(y_test,y_pre)
	print("均方误差为:\n",ret)

linear_model()   

模型的保存和加载

from sklearn.externals import joblib
#保存模型
joblib.dump(模型对象名称,"保存的路径.pkl")
#加载模型
模型对象名称 = joblib.load("模型文件的路径.pkl")
  • 8
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值