Kamil Bęczyński

Kamil Bęczyński R, SAS, analizy

Temat: Jak dobrać wartości startowe algorytmy dopasowującego...

Jak dobrać wartości startowe algorytmy dopasowującego krzywe gaussa do wykresu ?
Funkcja którą chcę dopasować wygląda następująco :

f(x,sr1,sd1,skala1,sr2,sd2,skala2,min)=skala1*exp(-(x-sr1)^2/sd1^2)/sd1+skala2*exp(-(x-sr2)^2/sd2^2)/sd2+min

dopasowuję tę krzywą do wykresu przy pomocy BFGS lub L-BFGS-U, wymagane sa wartosci startowe sr1,sd1,skala1,sr2,sd2,skala2,min zauważyłem, że w przypadku niewłaściwych wartości startowych algorytm nie zbiega do optimum, nawet przyjęcie sr1=sr2=średnia(X),sd1=sd2=sd(X), min=min(X) nie zapewnia poprawnego wyniku.

Moze lepiej użyć algorytmu EM ? Czy jest on trudny ? Czy moje podejście do powyższego problemu jest bardzo złe ? Chciałbym móc zastosować metodę która będzie się w miarę łatwo skalowała przy zwiększaniu liczby funkcji gaussa. Pozdrawiam