What does the function 'norm' do?

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.

 采纳的回答

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

8 个投票

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 个评论

Thank you. So, is it ok to write this way
SS_res=(y-yhat,2)^2
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()
Ya, I understood now. Thanks very much for your help.

请先登录,再进行评论。

dpb
dpb 2014-2-21

0 个投票

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

类别

Community Treasure Hunt

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

Start Hunting!

Translated by