机器学习python实现(一):单变量线性回归

本文介绍了如何使用Python进行单变量线性回归,通过绘制散点图、定义代价函数和梯度下降算法来求解最优参数。在数据集ex1data1.txt上进行实践,展示了成本函数的初始值、迭代过程以及θ0、θ1与代价函数的关系。

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

单变量线性回归

在本部分的练习中,您将使用一个变量实现线性回归,以预测食品卡车的利润。假设你是一家餐馆的首席执行官,正在考虑不同的城市开设一个新的分店。该连锁店已经在各个城市拥有卡车,而且你有来自城市的利润和人口数据。
您希望使用这些数据来帮助您选择将哪个城市扩展到下一个城市。
数据ex1data1.txt在下一篇文章里。
导入需要用到的模块:

import matplotlib.pyplot as plt #画图工具
import pandas as pd
import numpy as np    #一个开源的Python科学计算基础库
from matplotlib.colors import LogNorm
from mpl_toolkits.mplot3d import axes3d,Axes3D

part1:画出散点图

#定义plot_data函数画出散点图
    def plot_data(x,y):
        plt.plot(x,y,'rx')
    plt.show()
    
data=np.loadtxt('ex1data1.txt',delimiter=',')#加载数据
X=data[:,0]
y=data[:,1]
m=y.size
plt.ion()
plt.figure(0)
plot_data(X,y)

运行结果:
人口和利润的散点图
part2:代价函数
(1)理论函数:hθ(x)=θ0+θ1∗x
其中两个θ是位置参数,我们的目的是求出他俩的值。
(2) 代价函数
我们取怎样的θ值可以使预测值更加准确呢?

想想看,我们应使得每一个预测值hθ和真实值y差别不大,可以定义代价函数如下:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值