Gradyan iniş vs lm () fonksiyonu R?


14

Andrew Ng'in Stanford'daki ücretsiz çevrimiçi makine öğrenimi kursundaki videolardan geçiyorum . Degrade İnişi, bunu yapmak için Octave'de lineer regresyon ve yazma fonksiyonlarını çözmek için bir algoritma olarak tartışır. Muhtemelen R'de bu işlevleri yeniden yazabilirim, ama sorum şu ki, lm () işlevi zaten doğrusal regresyonun çıktısını vermiyor mu? Neden kendi degrade iniş fonksiyonumu yazmak isteyeyim? Bir avantajı var mı yoksa tamamen bir öğrenme egzersizi mi? Lm () degrade iniş yapıyor mu?


Sanırım R'de iyi bir çözümün olmadığı durumlarda degrade inişini başka bir dilde uygulamanız gerekebilir (örneğin, büyük verilerle düzenli regresyon gibi regresyon varyasyonu)
Manoel Galdino

Yanıtlar:


20

Degrade iniş aslında doğrusal bir regresyon problemini çözmenin oldukça zayıf bir yoludur. lm()R işlev dahili bir formu kullanır QR ayrışma önemli ölçüde daha etkilidir. Bununla birlikte, gradyan inişi genellikle kullanışlı bir tekniktir ve bu basit bağlamda tanıtılmaya değer, böylece daha karmaşık sorunlara nasıl uygulanacağı daha açıktır. Kendi sürümünüzü bir öğrenme egzersizi olarak uygulamak istiyorsanız, yapılması faydalı bir şeydir, ancak lm()istediğiniz tek şey doğrusal regresyon yapmak için bir araçsa daha iyi bir seçimdir.


@Martin Birçok özelliğimiz varsa lm () hala daha iyi olabilir mi?
user2626445

0

Çevrimiçi gradyanın yararlı olmasının nedeni, büyük ölçek uygulamaları içindir. Her durumda, şimdi onu uygulayan kütüphaneler var, bu yüzden onu programlamanıza gerek yok. İşlerin nasıl çalıştığını öğrenmek için iyi bir yoldur.

Leon Bottou sözleriyle:

Büyük ölçekli makine öğrenimine ilk olarak bir mühendislik problemi olarak yaklaşıldı. Örneğin, daha büyük bir eğitim setinden yararlanmak için, bilinen bir makine öğrenme algoritmasını çalıştırmak için paralel bir bilgisayar kullanabilir veya bilinen bir makine öğrenme objektif işlevini optimize etmek için daha gelişmiş sayısal yöntemleri uyarlayabiliriz. Bu tür yaklaşımlar, bir kişinin istatistiksel yönleri, makine öğrenme sorununun hesaplama yönlerinden ayırabileceği cazibesine dayanmaktadır.

Bu çalışma, bu varsayımın yanlış olduğunu ve vazgeçmenin çok daha etkili öğrenme algoritmalarına yol açtığını göstermektedir. Yeni bir teorik çerçeve, yaklaşık optimizasyonun öğrenme algoritmaları üzerindeki etkisini dikkate almaktadır.

Analiz, küçük ölçekli ve büyük ölçekli öğrenme problemleri için farklı ödünleşmeler göstermektedir. Küçük ölçekli öğrenme problemleri olağan yaklaşım-tahmin dengesine tabidir. Büyük ölçekli öğrenme problemleri, temeldeki optimizasyon algoritmalarının önemsiz olmayan yollarla hesaplama karmaşıklığını içeren niteliksel olarak farklı bir dengeye tabidir. Örneğin, Stokastik Degrade İniş (SGD) algoritmaları vasat optimizasyon algoritmaları gibi görünmekle birlikte, büyük ölçekli öğrenme problemlerinde son derece iyi performans gösterdikleri gösterilmiştir.

Büyük ölçekli öğrenme

sgd projesi

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.