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

1.多维特征

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

增添更多特征后,我们引入一系列新的注释:
n n n代表特征的数量
x i {x^{i }} xi代表第 i 个训练实例,是特征矩阵中的第i行,是一个向量(vector)。
x j ( 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 = 1 m ( h θ ( x ( i ) ) − y ( i ) ) 2 J(\theta_0, \theta_1, \dots, \theta_n) = \sum_{i=1}^{m} (h_\theta(x^{(i)}) - y^{(i)})^2 J(θ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))
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值