实验一 线性回归

代码地址 Github

  1  首先安装matplotlib

输入 sudo apt-get install python-matplotlib安装matplotlib

一元线性回归

题目:
应用一元线性回归预测移动餐车的利润。假设你是一家餐饮连锁店的CEO,
考虑在不同的城市开辟新店。该餐饮店已在许多城市拥有移动餐车,现有各个城
市移动餐车的利润和城市人口的数据。这些数据将帮助你选择在哪个城市进行新
店扩张。请按要求完成实验。

数据集:
文件ex1data1.txt 为该实验部分的数据集,第一列表示城市人口(单位为万人),第二列表示该城市的移动餐车的利润(单位为万美元,若利润为负值,表示损失)。

步骤与要求:
1)在开始任务之前,进行数据的可视化对于了解数据特征是很有帮助的。请你导入数据并以人口为横标,利润为纵坐标画出散点图并观察数据分布特征。
(建议:用python 的matplotlib)
2)将线性回归参数初始化为0,然后计算代价函数(cost function)并求出初始值。
3)使用线性回归的方法对数据集进行拟合,并用梯度下降法求解线性回归参数。(eg:迭代次数=1500,alpha=0.01)
4)画出数据的拟合图形。
5)预测人口数量为35000 和70000 时,利润为多少。

1 直接用最小二乘法求解:

比较简单,直接显示执行结果:

这里写图片描述

2 梯度下降求解(实验要求我们用梯度下降求解:):

直线方程:

这里写图片描述

代价函数:
这里写图片描述 (除以m,是因为让代价数值变小一点,不然可能会超范围)

参数更新公式:

这里写图片描述 (除以m同样是为了避免数值过大)

需要对读入文件进行预处理:

x为:

这里写图片描述

y值为:

  • 4
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

计算机的小粽子

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值