What does the function 'norm' do?

12 次查看(过去 30 天)
Please tell me what does the 2(in bold) in the below expression mean?
residsumsq = norm(y-yhat, 2 )^2;
Also, Is the norm function referring to summation? I read the documentation but it is not clear.

采纳的回答

Walter Roberson
Walter Roberson 2014-2-21
n = norm(X) returns the 2-norm of input X and is equivalent to norm(X,2). If X is a vector, this is equal to the Euclidean distance. If X is a matrix, this is equal to the largest singular value of X.
The 2-norm is equal to the Euclidean length of the vector.
So it norm(x) is norm(x,2) is sqrt(sum(x.^2))

更多回答(2 个)

Bruno Pop-Stefanov
Bruno Pop-Stefanov 2014-2-21
The second input argument of the "norm" function specifies the order of the norm you would like to use. The default norm is the 2-norm, which is the Euclidean distance.
The p-norm is the p-th root of the sum of the terms elevated to the p-th power, i.e.:
  3 个评论
Walter Roberson
Walter Roberson 2014-2-21
No, it would be
SS_res = (y-yhat)^2
There would normally be a sqrt() around the sum() but you then square the result of the norm, so that cancels out the sqrt()
Priya
Priya 2014-2-21
Ya, I understood now. Thanks very much for your help.

请先登录,再进行评论。


dpb
dpb 2014-2-21
It's the order of the norm requested, in this case the "2-norm" which is the same thing as the Euclidean norm...

类别

Help CenterFile Exchange 中查找有关 Direct Search 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by