请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

关于梯度下降法中的X_b的理解

老师,我看来看去都无法理解这个
X_b = np.hstack([np.ones((len(x), 1)), x.reshape(-1,1)])
是怎么的出来的,请老师解释一下关于这个x_b,谢谢老师

正在回答 回答被采纳积分+3

1回答

liuyubobobo 2019-04-23 03:06:36

回忆一下,我们在课程中推导的梯度,是这样的:

https://img1.sycdn.imooc.com//szimg/5cbe0e700001ed6419841118.jpg


注意,这个梯度是一个长度为n+1的向量。因为除了每一个维度,要有一个θ参数以外,还有一个不和任何维度匹配的θ,我们叫θ(0)。

https://img1.sycdn.imooc.com//szimg/5cbe0f1c00018ae419141066.jpg


所以,在我们后续推导这个梯度计算的向量化公式的时候,为了统一计算,我们在这一项后面,添加了一个X(0),这样,这个响亮的每一项,看起来就一样了:)

https://img1.sycdn.imooc.com//szimg/5cbe0fb10001535d19021090.jpg


当然,我们还要保证这个等号是成立的。所以,这个X0,其实就是1!:)


所以,我们后续推导:

https://img1.sycdn.imooc.com//szimg/5cbe1069000103dd20021090.jpg


这个Xb,在这里,就有一列1。


这就是我们管他叫Xb的原因,而不是X,他和X不一样,多了一列1。我们的代码,其实就是在X前面,添加了一列1:)


以此为基础,再仔细看一看课程前面的推导,理解一下?:)


继续加油!:)

6 回复 有任何疑惑可以回复我~
问题已解决,确定采纳
还有疑问,暂不采纳
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号