吴恩达机器学习笔记:多变量梯度下降

部署运行你感兴趣的模型镜像

1.多维特征

之前我们探讨了单变量/特征的回归模型,现在我们对房价模型增加更多的特征,例如房间数楼层等,构成一个含有多个变量的模型,模型中的特征为(x1,x2,x3...xn)(x1,x2,x3...xn)x1x2x3...xn
在这里插入图片描述

增添更多特征后,我们引入一系列新的注释:
nnn代表特征的数量
xi{x^{i }}xi代表第 i 个训练实例,是特征矩阵中的第i行,是一个向量(vector)。
xj(i){x_j^{\left({i}\right)}}xj(i)代表特征矩阵中第 i行的第j个特征,也就是第i个训练实例的第 j个特征。
支持多变量的假设 ℎ 表示为: ℎθ (x) = θ0 + θ1x1 + θ2x2 +. . . +θnxn
这个公式中有个n+1参数和个n变量,为了使得公式能够简化一些,引入x0=1 则公式转化为:ℎθ (x) = θ0x0 + θ1x1 + θ2x2 +. . . +θnxn

此时模型中的参数是一个n + 1维的向量,任何一个训练实例也都是n + 1维的向量公式可以简化为:ℎθ(x) = θᵀX其中上标T代表矩阵转置。

2.多变量梯度下降

与单变量线性回归类似,在多变量线性回归中,我们也构建一个代价函数,则这个代价 函数是所有建模误差的平方和,即:

J(θ0,θ1,…,θn)=∑i=1m(hθ(x(i))−y(i))2J(\theta_0, \theta_1, \dots, \theta_n) = \sum_{i=1}^{m} (h_\theta(x^{(i)}) - y^{(i)})^2J(θ0,θ1,,θn)=i=1m(hθ(x(i))y(i))2

我们的目标和单变量线性回归问题中一样,是要找出使得代价函数最小的一系列参数。 多变量线性回归的批量梯度下降算法为:
在这里插入图片描述
即:
在这里插入图片描述
求导得:
在这里插入图片描述
当n >= 1时,
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
我们开始随机选择一系列的参数值,计算所有的预测结果后,再给所有的参数一个新的值,如此循环直到收敛。

python代码示例:

def computeCost(X, y, theta):
	inner = np.power(((X * theta.T) - y), 2) 
	return np.sum(inner) / (2 * len(X))

您可能感兴趣的与本文相关的镜像

Python3.10

Python3.10

Conda
Python

Python 是一种高级、解释型、通用的编程语言,以其简洁易读的语法而闻名,适用于广泛的应用,包括Web开发、数据分析、人工智能和自动化脚本

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值