Octave 如何在求和函数中访问数组元素?

Octave 如何在求和函数中访问数组元素?,octave,Octave,我尝试在八度音阶中实现以下算法: 此算法的代码: x=[1 2. 3. ] y=[4,5,6] m=长度(y) x=[一(m,1),x] θ=零(2,1); printf(mat2str(θ,2)) sprintf('%f',θ) 迭代次数=5次; α=0.07; 对于iter=1:迭代 西塔 θ=θ-((1/m)*((x*θ)-y)'*x'*alpha; 结束 当上面的代码似乎在每次迭代中访问整个y矩阵时,如何访问y的每个单独值 是否存在允许只使用y而不使用类似y[i]的东西的隐式功能,其

我尝试在八度音阶中实现以下算法:

此算法的代码:

x=[1
2.
3.
]
y=[4,5,6]
m=长度(y)
x=[一(m,1),x]
θ=零(2,1);
printf(mat2str(θ,2))
sprintf('%f',θ)
迭代次数=5次;
α=0.07;
对于iter=1:迭代
西塔
θ=θ-((1/m)*((x*θ)-y)'*x'*alpha;
结束
当上面的代码似乎在每次迭代中访问整个
y
矩阵时,如何访问
y
的每个单独值


是否存在允许只使用
y
而不使用类似
y[i]
的东西的隐式功能,其中
i
是当前迭代

当一个总和看起来像

sum(a_i * b_i, for i = 1 ... m)
它可以被重新写入向量之间的点积

A^T * B
A和B是大小为m的向量。 在算法描述中,他们使用了第一个公式,在代码中是第二个公式

(x * theta) - y)' * x
是向量
(x*θ)-y
x
之间的点积