如何在MATLAB中定义以下等式?
h(x) = ∑ θ^T*X = θ + θ1*x + θ2*x^2 + ⋯
θ
和X
是向量,T
是遍历函数。
答案 0 :(得分:0)
如果我没弄错的话,我相信你在谈论两个载体的内在产物:
一个使用对所有元素求和(for-loop),另一个使用向量记法(转置向量乘以另一个向量)
我是这么说的,因为使用的符号让我想起了线性回归:X
输入向量(带有偏置项X(0) = 1
),theta
模型参数(权重),h
是假设还是输出
示例:
theta = rand(5,1);
X = rand(5,1);
h = 0;
for i=1:length(X)
h = h + theta(i)*X(i);
end
h = theta'*X;
h = dot(theta,X);
答案 1 :(得分:0)
问题中的符号不清楚,但看起来像X_i = x_i ^ {i-1},i = 1 ... N.然后,
h = dot(theta,x.^(0:length(x)-1))
答案 2 :(得分:0)
所以简单地使用
h = sum(X*theta')