Levenberg – Marquardt algoritması - Levenberg–Marquardt algorithm

Gelen matematik ve bilgi işlem, Levenberg-Marquardt algoritmasını ( LMA veya LM olarak da bilinir), sönümlü en küçük kareler ( DLS ) yöntemine çözmek için kullanılan en küçük kareler doğrusal olmayan bir sorun. Bu minimizasyon sorunları özellikle en küçük kareler eğri uydurmada ortaya çıkar .

LMA, genel eğri uydurma problemlerini çözmek için birçok yazılım uygulamasında kullanılır. Ancak, birçok uydurma algoritmasında olduğu gibi, LMA yalnızca yerel bir minimum bulur ve bu mutlaka global minimum değildir . LMA, Gauss – Newton algoritması (GNA) ve gradyan iniş yöntemi arasında enterpolasyon yapar . LMA, GNA'dan daha sağlamdır , bu da çoğu durumda nihai minimumdan çok uzakta başlasa bile bir çözüm bulduğu anlamına gelir. İyi niyetli işlevler ve makul başlangıç ​​parametreleri için LMA, GNA'dan daha yavaş olma eğilimindedir. LMA, bir güven bölgesi yaklaşımı kullanılarak Gauss – Newton olarak da görülebilir .

Algoritma ilk olarak 1944'te Kenneth Levenberg tarafından Frankford Army Arsenal'de çalışırken yayınlandı . Bu 1963 yeniden keşfedilen Donald Marquardt bir şekilde çalışan, istatistikçiye de DuPont Girard, Wynne ve Morrison, bağımsız bir şekilde, ve.

Sorun

Levenberg-Marquardt algoritmasının birincil uygulaması, en küçük kareler eğri uydurma problemidir: bağımsız ve bağımlı değişkenlerin bir dizi ampirik çifti verildiğinde , model eğrisinin parametrelerini bulun, böylece sapmaların karelerinin toplamı en aza indirilir. :

boş olmadığı varsayılır.

Çözüm

Diğer sayısal küçültme algoritmaları gibi, Levenberg – Marquardt algoritması da yinelemeli bir prosedürdür. Bir minimizasyonu başlatmak için, kullanıcının parametre vektörü için bir başlangıç ​​tahmini sağlaması gerekir . Yalnızca bir minimumun olduğu durumlarda, bilgisiz bir standart tahmin işe yarayacaktır; Birden fazla minimumun olduğu durumlarda , algoritma yalnızca ilk tahmin zaten nihai çözüme biraz yakınsa global minimuma yakınlaşır.

Her yineleme adımında, parametre vektörü yeni bir tahminle değiştirilir . Belirlemek için , fonksiyon doğrusallaştırmasıyla yaklaşık olarak belirlenir :

nerede

bir gradyan arasında (bu durumda sıra vektör) ile ilgili olarak için .

Kare sapmaların toplamı , 'ye göre sıfır eğimde minimuma sahiptir . Yukarıda belirtilen bir birinci dereceden yaklaşım sağlar

veya vektör gösteriminde,

Türevini almak ile ilgili olarak ve sonucu sıfır ile ayar verir

burada bir jakobiyen matrisi olan, inci satır eşittir ve ve vektörleri, birlikte -inci bileşen ve sırasıyla. için elde edilen yukarıdaki ifade Gauss-Newton yöntemine tabidir. Yukarıda tanımlandığı gibi Jacobian matrisi (genel olarak) bir kare matris değil, dikdörtgen bir matristir , burada parametre sayısı (vektörün boyutu ). Matris çarpımı gerekli kare matrisi verir ve sağ taraftaki matris-vektör çarpımı bir boyut vektörü verir . Sonuç, çözülebilecek bir dizi doğrusal denklemdir .

Levenberg'in katkısı, bu denklemi "sönümlü bir versiyon" ile değiştirmektir:

Kimlik matrisi nerede , tahmin edilen parametre vektörüne artış olarak verilir .

(Negatif olmayan) sönümleme faktörü her yinelemede ayarlanır. Eğer azalma hızlıysa, algoritmayı Gauss-Newton algoritmasına yaklaştırarak daha küçük bir değer kullanılabilir, oysa bir yineleme kalıntıda yetersiz azalma sağlıyorsa, gradyan-iniş yönüne bir adım daha yakınlaştırarak artırılabilir. Not bu gradyan arasında göre eşitler . Bu nedenle, büyük değerler için , adım yaklaşık olarak gradyanın tersi yönde atılacaktır. Hesaplanan adımın uzunluğu veya en son parametre vektöründen kareler toplamının azaltılması önceden tanımlanmış sınırların altına düşerse, yineleme durur ve son parametre vektörü çözüm olarak kabul edilir.

Levenberg'in algoritması, sönümleme faktörünün değeri büyükse, tersine çevirmenin hiç kullanılmaması dezavantajına sahiptir . Fletcher, degradenin her bir bileşenini eğriliğe göre ölçekleyebileceğimizi, böylece degradenin daha küçük olduğu yönlerde daha büyük hareket olmasını sağladı. Bu, küçük gradyan yönünde yavaş yakınsamayı önler. Bu nedenle, Fletcher 1971 tarihli makalesinde, doğrusal olmayan en küçük kareler için değiştirilmiş bir Marquardt alt yordamı , birim matrisini köşegen elemanlarından oluşan köşegen matrisle değiştirdi , böylece çözüm ölçeğini değişmez hale getirdi:

Benzer bir sönümleme faktörü , doğrusal olmayan sorunları çözmek için kullanılan Tikhonov düzenlileştirmesinde ve ayrıca istatistikte bir tahmin tekniği olan sırt regresyonunda ortaya çıkar .

Sönümleme parametresi seçimi

Sönümleme parametresi için en iyi seçim için az çok çeşitli buluşsal argümanlar öne sürülmüştür . Bu seçimlerden bazılarının neden algoritmanın yerel yakınsamasını garanti ettiğini gösteren teorik argümanlar mevcuttur; bununla birlikte, bu seçimler, algoritmanın küresel yakınsamasını, özellikle optimuma yakın çok yavaş yakınsama olmak üzere en dik inişin istenmeyen özelliklerinden muzdarip hale getirebilir .

Herhangi bir seçimin mutlak değerleri, ilk problemin ne kadar iyi ölçeklendiğine bağlıdır. Marquardt bir değer ve bir faktörle başlamayı önerdi . Başlangıçta , başlangıç ​​noktasından bir adım sonra artık karelerin toplamını sönümleme faktörü ve ikinci olarak ile ayarlama ve hesaplama . Bunların her ikisi de başlangıç ​​noktasından daha kötü ise, bu durumda sönümleme, bazıları için yeni bir sönüm faktörüyle daha iyi bir nokta bulunana kadar ardışık çarpma ile artırılır .

Sönümleme faktörünün kullanılması, artık karede bir azalmaya neden olursa , bu yeni değer olarak alınır (ve bu sönümleme faktörü ile elde edilen yeni optimum konum alınır) ve işlem devam eder; kullanım daha kötü bir kalıntı ile sonuçlanmışsa , ancak kullanım daha iyi bir kalıntı ile sonuçlanmışsa, değiştirilmeden bırakılır ve sönüm faktörü olarak elde edilen değer olarak yeni optimum alınır .

Gecikmeli tatmin olarak adlandırılan sönümleme parametresinin kontrolü için etkili bir strateji , parametrenin her yokuş yukarı adım için küçük bir miktar artırılması ve her yokuş aşağı adım için büyük miktarda azaltılmasıdır. Bu stratejinin arkasındaki fikir, optimizasyonun başlangıcında yokuş aşağı çok hızlı hareket etmekten kaçınmak, bu nedenle gelecekteki yinelemelerde mevcut adımları kısıtlamak ve dolayısıyla yakınsamayı yavaşlatmaktır. Çoğu durumda 2 kat artış ve 3 kat azalmanın etkili olduğu gösterilmiştir, büyük problemler için ise 1,5 kat artış ve faktör azalma ile daha uç değerler daha iyi çalışabilir. arasında 5.

jeodezik ivme

Levenberg – Marquardt adımını parametre uzayında bir jeodezik yol boyunca hız olarak yorumlarken, jeodezik boyunca ivmeyi açıklayan ikinci dereceden bir terim ekleyerek yöntemi iyileştirmek mümkündür.

çözümü nerede

Bu jeodezik ivme terimi, yalnızca hızın yönü boyunca yönlü türevine bağlı olduğundan , tam ikinci dereceden türev matrisinin hesaplanmasını gerektirmez, hesaplama maliyeti açısından yalnızca küçük bir ek yük gerektirir. İkinci mertebeden türev oldukça karmaşık bir ifade olabileceğinden, onu sonlu bir fark yaklaşımıyla değiştirmek uygun olabilir.

burada ve zaten bu yüzden hesaplamak için yalnızca bir ek fonksiyon değerlendirme gerektiren, algoritma ile hesaplanan edilmiştir . Sonlu fark adımının seçimi , algoritmanın kararlılığını etkileyebilir ve genel olarak 0.1 civarında bir değer genellikle mantıklıdır.

İvme, hıza zıt yönü gösterebileceğinden, sönümlemenin çok küçük olması durumunda yöntemin durmasını önlemek için, bir adımı kabul etmek için ivme üzerinde ek bir kriter eklenir.

burada genellikle 1'den küçük bir değere sabitlenir, daha zor problemler için daha küçük değerlere sahiptir.

Bir jeodezik hızlandırma teriminin eklenmesi, yakınsama hızında önemli artışa izin verebilir ve özellikle algoritma, amaç fonksiyonunun peyzajındaki dar kanyonlarda hareket ederken, izin verilen adımların daha küçük ve ikinci dereceden dolayı daha yüksek doğrulukta olduğu durumlarda yararlıdır. terim önemli gelişmeler sağlar.

Misal

Kötü uyum
Daha uygun
En uygun

Bu örnekte , leasqr işlevi olarak GNU Octave'de uygulanan Levenberg–Marquardt algoritmasını kullanarak işlevi uydurmaya çalışıyoruz. Grafikleri kademeli iyi parametreleri için montaj göstermektedir , ilk eğri kullanılır. Yalnızca son grafikteki parametreler orijinale en yakın seçildiğinde, eğriler tam olarak uyuyor. Bu denklem, Levenberg – Marquardt algoritması için çok hassas başlangıç ​​koşullarına bir örnektir. Bu hassasiyetin bir nedeni, çoklu minimumların varlığıdır - fonksiyonun parametre değerinde minimum değerleri vardır ve .

Ayrıca bakınız

Referanslar

daha fazla okuma

Dış bağlantılar