【发布时间】:2016-05-15 08:56:34
【问题描述】:
使用梯度的矢量化版本,如下所述: gradient descent seems to fail
theta = theta - (alpha/m * (X * theta-y)' * X)';
theta 值没有被更新,所以无论初始 theta 值如何 这是运行梯度下降后设置的值:
示例1:
m = 1
X = [1]
y = [0]
theta = 2
theta = theta - (alpha/m .* (X .* theta-y)' * X)'
theta =
2.0000
示例2:
m = 1
X = [1;1;1]
y = [1;0;1]
theta = [1;2;3]
theta = theta - (alpha/m .* (X .* theta-y)' * X)'
theta =
1.0000
2.0000
3.0000
theta = theta - (alpha/m * (X * theta-y)' * X)'; 是梯度下降的正确矢量化实现吗?
【问题讨论】:
标签: matlab machine-learning neural-network gradient-descent