小编ste*_*use的帖子

什么时候在Matlab中使用矩阵乘法,sum()或for循环有很好的经验法则?

我正在尝试开发用于将方程转换为代码的通用启发式算法.这个特殊的问题解决了如何在Matlab中实现带求和函数的方程.

使用sum()与矩阵乘法的示例:

我实现了这个等式,并认为我需要使用sum()函数:

公式1

J = 1/(2*m) * sum( (X*theta - y).^2 );
Run Code Online (Sandbox Code Playgroud)

然后我实现了这个类似的等式,而不需要使用sum()函数!

方程2

theta = theta - (alpha/m) * ((X*theta - y)'*X)';
Run Code Online (Sandbox Code Playgroud)

哪里:

X: 100x2 (training input plus a 'ones' vector)
y: 100x1 (training output) 
theta:  2x1 (parameters)
m: 100 (length of y)
alpha: 0.01 (learning rate) 
Run Code Online (Sandbox Code Playgroud)

当Matlab的矩阵乘法"处理"求和时,有哪些原理?

谢谢!

matlab matrix gradient-descent

3
推荐指数
1
解决办法
218
查看次数

标签 统计

gradient-descent ×1

matlab ×1

matrix ×1