performing a least squares with regularisation in matlab

25 vues (au cours des 30 derniers jours)
cgo
cgo le 13 Juil 2018
Déplacé(e) : Bruno Luong le 26 Oct 2024 à 7:44
I have data sets X (2n by 8) and Y(2n by 1). I want to find the coefficients a so that Y = Xa. So we can perform a = X\Y (as a least squares minimisation).
I wanted to ask if it possible to proceed with a form of regularisation (L1 or something simple) from this?
Please help.
  1 commentaire
SAKO
SAKO le 25 Oct 2024 à 21:41
Déplacé(e) : Bruno Luong le 26 Oct 2024 à 7:44
bonjours,je n'écris pas pour repondre a une question mais pour poser ma préoccupation.j'ai utiliser le package TOOL BOX de Per Christian Hansen pour faire une reconstruction de force.Avec la regularisation de Tikhonov pour le critère L_curve,le paramètre de regularisation qu'il me renvoi ne me permet pas de reconstruire ma force(ma courbe L_curve presente deux coins).Pouvez vous m'aider ?

Connectez-vous pour commenter.

Réponses (2)

Diwakar
Diwakar le 13 Juil 2018
My understanding of your problem is that you want to find the coefficient a. So in order to implement optimization you can implement average of sum of least squares as shown below.
Loss= ((Y-X*a)'*(Y-X*a))/(2*n);
The above shown function is a vectorized implementation of the squared error loss function. So this can be minimized in order to get the optimal value of a. If you want to fit a curve to this then any form of regularization should be fine.
Hope this helps
Cheers!
  1 commentaire
Sterling Baird
Sterling Baird le 23 Sep 2020
How would you actually implement the regularization though?

Connectez-vous pour commenter.


Bruno Luong
Bruno Luong le 23 Sep 2020
Modifié(e) : Bruno Luong le 23 Sep 2020
Simpless method:
n = size(X,2); % 8
lambda = 1e-6; % <= regularization parameter, 0 no regularization, larger value stronger regularized solution
a = [X; lambda*eye(n)] \ [Y; zeros(n,1)]
  1 commentaire
Sterling Baird
Sterling Baird le 23 Sep 2020
Hi Bruno, thank you! That helps out quite a bit.

Connectez-vous pour commenter.

Catégories

En savoir plus sur Mathematics and Optimization dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by