news 2026/4/28 23:06:05

案例之 波士顿房价预测(线性回归之正规方程/ 梯度下降!!)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
案例之 波士顿房价预测(线性回归之正规方程/ 梯度下降!!)

1. 案例说明

一、案例:演示 正规方程法 线性回归对象 完成 波士顿房价预测
二、回顾:
1. 线性回归算法 属于 有监督学习之 有特征,有标签,且标签是连续的;
2. 线性回归分类:
一元线性回归:1个特征列,1个标签列.
多元线性回归:多个特征列,1个标签列.
3. 线性回归解释:它是用线性公式来描述 特征 和 标签之问关系的,方便做预测,公式如下:
一元线性回归:y=wx+b
多元线性回归:y=w1
x1 +w2x2 +w3x3 +…+wnxn +b = w的转置x +b
4. 如何衡量线性回归模型的好坏?
思路:预测值和真实值之问的误差,误差越小,模型越好. ==》损失函数
具体方案:
1.最小二乘:每个样本误差平方和
2.均方误差(MSE):每个样本误差平方和/ 样本总数
3.均方根误差(RMSE):每个(样本)误差平方和/样本总数 的 平方根
4.平均绝对误差(MAE):每个(样本)误差绝对值和/样本总数
5. 如何让损失函数最小:
思路1:梯度下降法:全梯度下降(FGD)、随机梯度下降(SGD)、小批量梯度下降(推荐)(Min-Batch)、随机平均梯度下降(SAG)
思路2:正规方程法
6. 机器学习开发流程:
1.加载数据
2.数据的预处理
3.特征工程(特征提取、特征与处理、特征降维、特征选择、特征组合)
4.模型训练
5.模型预测
6.模型评估

2. 代码示例

""" 案例:演示 正规方程法 线性回归对象 完成 波士顿房价预测 回顾: 线性回归算法 属于 有监督学习之 有特征,有标签,且标签是连续的 线性回归分类: 一元线性回归:1个特征列,1个标签列. 多元线性回归:多个特征列,1个标签列. 线性回归大白话解释: 它是用线性公式来描述 特征 和 标签之问关系的,方便做预测,公式如下: 一元线性回归:y=w*x+b 多元线性回归:y=w1*x1 +w2*x2 +w3*x3 +...+wn*xn +b = w的转置*x +b 如何衡量线性回归模型的好坏? 思路:预测值和真实值之问的误差,误差越小,模型越好. ==》损失函数 具体方案: 1.最小二乘:每个样本误差平方和 2.均方误差(MSE):每个样本误差平方和/ 样本总数 3.均方根误差(RMSE):每个(样本)误差平方和/样本总数 的 平方根 4.平均绝对误差(MAE):每个(样本)误差绝对值和/样本总数 如何让损失函数最小: 思路1:梯度下降法:全梯度下降(FGD)、随机梯度下降(SGD)、小批量梯度下降(推荐)(Min-Batch)、随机平均梯度下降(SAG) 思路2:正规方程法 机器学习开发流程: 1.加载数据 2.数据的预处理 3.特征工程(特征提取、特征与处理、特征降维、特征选择、特征组合) 4.模型训练 5.模型预测 6.模型评估 """# 导包# from sklearn.datasets import load_boston # 数据fromsklearn.preprocessingimportStandardScaler# 特征标准化fromsklearn.model_selectionimporttrain_test_split# 数据集划分fromsklearn.linear_modelimportLinearRegression# 正规方程的回归模型fromsklearn.linear_modelimportSGDRegressor# 梯度下降的回归模型fromsklearn.metricsimportmean_squared_error,root_mean_squared_error,mean_absolute_error# 均方误差评估importpandasaspdimportnumpyasnp# 1.加载波士顿房价数据data_url="http://lib.stat.cmu.edu/datasets/boston"raw_df=pd.read_csv(data_url,sep="\s+",skiprows=22,header=None)data=np.hstack([raw_df.values[::2,:],raw_df.values[1::2,:2]])#hstack():水平拼接数组target=raw_df.values[1::2,2]# print(f'特征:{data.shape}') # 特征:(506, 13)# print(f'标签:{target.shape}')# 标签:(506,)# print(f'特征数据:{data[:5]}')# 特征数据:[[0.00632 18.0 2.31 0.538 6.575 1.0 0.0 0.0 0.4608 1.0 0.0 0.0 0.0 ]]# print(f'标签数据:{target[:5]}')# 标签数据:[11.93 21.6 17.8 18.9 18.7]# 2.数据的预处理:切分训练集和测试集# 参1:特征数据,参2:标签数据,参3:测试集占训练集的比例,参4:随机种子x_train,x_test,y_train,y_test=train_test_split(data,target,test_size=0.2,random_state=23)# 3.特征工程(特征提取、特征与处理、特征降维、特征选择、特征组合)# 3.1 创建标准化对象transfer=StandardScaler()# 3.2 对训练集和测试集进行标准化处理x_train=transfer.fit_transform(x_train)x_test=transfer.transform(x_test)# 4.模型训练# 4.1 创建模型对象# 方式一:创建线性回归 "正规方程" 模型对象!!!# estimator = LinearRegression(fit_intercept= True)#fit_intercept:是否需要截距(Bais,偏置),默认是True# 方式二:创建线性回归 "梯度下降 " 模型对象!!!# 参1:fit_intercept:是否计算截距# 参2:learning_rate:学习率模式:constant常量模式 即不会发生改变# 参3:eta0:学习率的值estimator=SGDRegressor(fit_intercept=True,learning_rate='constant',eta0=0.01)# 4.2 模型训练estimator.fit(x_train,y_train)# 4.3 打印模型计算出的 w(权重,weight) 和 b(截距,bais)print(f'权重 w:{estimator.coef_}')print(f'截距 b:{estimator.intercept_}')# 5.模型预测y_predict=estimator.predict(x_test)print(f'预测结果:{y_predict}')# 6.模型评估# 参1:测试集的标签数据,参2:预测结果# MSE:均方误差(MSE):每个样本误差平方和/ 样本总数print(f'均方误差:{mean_squared_error(y_test,y_predict)}')# RMSE:均方根误差(RMSE):每个(样本)误差平方和/样本总数 的 平方根print(f'均方根误差:{root_mean_squared_error(y_test,y_predict)}')# MAE:平均绝对误差(MAE):每个(样本)误差绝对值和/样本总数print(f'平均绝对误差:{mean_absolute_error(y_test,y_predict)}')
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/28 23:03:54

GPT-2 文本生成:从加载到微调,完整代码实现

文章目录 GPT-2 文本生成:从加载到微调,完整代码实现 一、生成流程 二、环境 三、基础推理 四、采样策略对比 五、微调 (Fine-Tuning) 5.1 数据准备 5.2 训练 5.3 加载微调模型 六、Prompt 工程技术 七、多轮对话 八、应用场景 九、优化技巧 9.1 避免重复 9.2 控制长度 9.3 指…

作者头像 李华
网站建设 2026/4/28 22:59:22

收藏!小白程序员必看:大模型AI Agent如何改变未来计算机交互?

收藏!小白程序员必看:大模型AI Agent如何改变未来计算机交互? AI Agent正引领计算机交互革命,超越文本生成,通过“大脑规划工具调用记忆经验”直接操控应用设备。文章解析其工作原理、行业竞争格局及MCP、A2A等关键技术…

作者头像 李华
网站建设 2026/4/28 22:55:41

如何在Windows上直接安装APK文件:告别安卓模拟器的终极指南

如何在Windows上直接安装APK文件:告别安卓模拟器的终极指南 【免费下载链接】APK-Installer An Android Application Installer for Windows 项目地址: https://gitcode.com/GitHub_Trending/ap/APK-Installer 你是否厌倦了传统安卓模拟器的笨重和卡顿&#…

作者头像 李华
网站建设 2026/4/28 22:51:54

RAG评估全攻略:从检索指标到生产监控,一文说清楚

RAG评估那点事:从指标到生产,你真的想清楚了吗? 最近翻到一份挺系统的RAG评估手册,看完之后整理了一下自己的理解,发现很多团队在做RAG系统的时候,评估这块确实踩了不少坑。今天把核心内容梳理出来&#x…

作者头像 李华