风火编程--机器学习之线性回归LinearRegression

本文深入讲解了线性回归算法的基本原理,包括如何通过训练数据集找到最佳权重参数,以最小化预测值与实际值之间的平方误差。介绍了使用sklearn库进行线性回归模型的构建、训练及评估的方法,并对比了普通最小二乘法与随机梯度下降法在求解过程中的差异。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

机器学习算法–线性回归

描述
建立目标值=权重*特性值相加…>>通过x_train求得predict_y,损失loss =E((y_train-y_predic)**2),通过训练获取损失函数J(w)=E((y_predict-y_train)**2)/m的最小值, 方法是取J导数为0的极值点
R^2<0表示数据不存在线性关

必须进行归一化处理.
适用于特征和目标值之间具有线性关系的场景

接口

import numpy as np
from sklearn import datasets
from sklearn.linear_model import LinearRegression
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import StandardScaler

boston = datasets.load_boston()
columns = boston.feature_names
print(columns)
X = boston.data
y = boston.target

print(np.max(y))
X = X[y<np.max(y)]
X_train, X_test, y_train, y_test = train_test_split(X, y)
ss = StandardScaler()
X_train_s = ss.transform(X_train)
reg = LinearRegression()
reg.fit(X_train_s, y_train)
score = reg.score(X_test, y_test)

使用随机题目下降法的线性回归

from sklearn.linear_model import LinearRegression, SGDRegressor
sgd_reg = SGDRegressor(n_iter=100)
sgd_reg .fit(X_train_s, y_train)
score = sgd_reg .score(X_test, y_test)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值