Teorik makine öğrenmesi için neden dışbükey optimizasyon çalışılıyor?


27

Doktora için teorik makine öğrenmesi - transfer öğrenimi, spesifik olması için çalışıyorum.

  • Merakım dışında, neden dışbükey optimizasyon dersi almalıyım?

  • Teorik makine öğrenimi konusundaki araştırmamda dışbükey optimizasyondan ne gibi faydalar alabilirim?


2
Dışbükey kısmına, optimizasyon kısmına veya her ikisine de itiraz ediyorsanız net değil.
Mehrdad

Kabul ettiğiniz cevabın kesinlikle yanlış olduğunu unutmayın. Belki bu soruya tekrar göz atabilir ve daha anlamlı bir cevap seçebilirsiniz.
xji

Dışbükey Optimizasyon ve Matematik Optimizasyonu, modeller inşa etmek için bir araçtır - bu teknikler bazı belirsizliklere kadar modelleri inşa etmek / kontrol etmek / anlaşılabilir olayların parametrelerini bulmak için kullanılır.
bruziuz

Makine Öğrenimi, kodlama yöntemleri gibi bina işlev yaklaşımı hakkındadır ve sizin bildiğiniz kadarıyla (yaklaşık dışbükey olmayan veya hatta en kötüsü gösterge değişkenleri dahil) kaybı en aza indiren konsept seçme işlevinden birini bildiğinize göre, ML dışbükey olmayan optimizasyonla iyi oynar.
bruziuz

FYI "Dışbükey optimizasyon derin öğrenme için kullanılamaz - S.Boyd" - youtu.be/uF3htLwUHn0?t=2810
bruziuz

Yanıtlar:


59

Makine öğrenmesi algoritmaları her zaman optimizasyonu kullanır. Kayıp ya da hatayı minimuma indiririz veya bazı puanlama fonksiyonlarını en yükseğe çıkarırız. Gradyan iniş muhtemelen herhangi bir makine öğrenim kursunda yer alan "merhaba dünya" optimizasyon algoritmasıdır. Regresyon veya sınıflandırma modellerinde açıktır, ancak kümeleme gibi görevlerde bile verilerimize en iyi şekilde uyan bir çözüm arıyoruz (örn. K-araçları küme içi karelerin toplamını en aza indirir). Bu nedenle, makine öğrenme algoritmalarının nasıl çalıştığını anlamak istiyorsanız, optimizasyon hakkında daha fazla bilgi edinmek yardımcı olur. Ayrıca, hiperparametre ayarı gibi şeyler yapmanız gerekiyorsa, doğrudan optimizasyonu da kullanıyorsunuzdur.

Bir o dışbükey optimizasyonu yerine uğraşmak beri makine öğrenme için bu ilginç olmamalıdır iddia edilebilir dışbükey fonksiyonlar , sık sık karşılaşma kaybı aşağıda biri gibi yüzeyleri dışbükey uzaktır .

Gerçek hayat, dışbükey olmayan kayıp peyzaj örneği.

(kaynak: https://www.cs.umd.edu/~tomg/projects/landscapes/ ve arXiv: 1712.09913 )

Bununla birlikte, diğer cevaplarda belirtildiği gibi, dışbükey optimizasyon daha hızlı, daha basit ve daha az hesaplama açısından yoğundur, bu nedenle bir sorunu "dışbüklemek" (dışbükey optimizasyon dostu hale getirmek), sonra da dışbükey olmayan optimizasyon kullanmak genellikle daha kolaydır. Örneğin, gradyan iniş ve benzer algoritmalar , özellikle sinir ağları için makine öğreniminde yaygın olarak kullanılır, çünkü "çalışırlar", ölçeklendirilirler ve farklı yazılımlarda yaygın olarak uygulanırlar, bununla birlikte, kendileri için sahip olabileceği ve tuzaklara sahip olabilecekleri en iyisi değillerdir. , Ali Rahimi'nin NIPS 2017'deki konuşması tarafından tartışıldığı gibi .

Diğer yandan, evrimsel algoritmalar gibi dışbükey olmayan optimizasyon algoritmalarının ML toplumunda gittikçe daha fazla tanınırlık kazandığı görülmektedir , örneğin nöral evrim ile sinir ağlarını eğitmek son araştırma konusu gibi görünmektedir (ayrıca bkz . ArXiv: 1712.07897 ).


5
Bu cevap "dışbükey" ele görünmüyor
Haitao Du

@ hxd1011 Bu konuda yorum yaptım.
Tim

Mükemmel cevap! Gerçekten ne kadar kritik optimizasyonun ML için olduğunu ve ML'nin gradyan inişiyle çalışan dışbükey yaklaşımları kullanarak nasıl basitleştiğini ele alır.
ChuckCottrill

Bu kabul edilen cevap olmalı.
Jan Kukacka,

11

Burada iki soru olduğunu düşünüyorum.

  • Neden optimizasyon çalışmalı?
  • Neden dışbükey optimizasyon

@Tim'in neden optimizasyonun iyi bir cevabı olduğunu düşünüyorum. Makine optimizasyonu ile ilgilenen herkesin sürekli optimizasyon yapmasını şiddetle tavsiye ediyorum. Çünkü optimizasyon süreci / zaman içinde daha iyi bir çözüm bulmak, bir bilgisayarın öğrenme sürecidir.

Dışbükey fonksiyonlara neden ilgi duyduğumuz hakkında daha fazla konuşmak istiyorum. Nedeni basit: dışbükey optimizasyonlar "çözmesi daha kolay" ve çözmemiz gereken çok sayıda güvenilir algoritma var.

Ama dünya dışbükey mi? Hayır. Neden dışbükeyliğe takıntılısınız? Bu metaforu kontrol et

Bir polis, sokak lambası altında bir şey arayan sarhoş bir adam görür ve sarhoşun ne kaybettiğini sorar. Anahtarlarını kaybettiğini ve ikisi birlikte sokak ışığının altına baktığını söylüyor. Birkaç dakika sonra, polis onları burada kaybettiğinden emin olup olmadığını sorar ve sarhoş cevap verir, hayır, ve onları parkta kaybettiğini söyler. Polis, neden burada aradığını soruyor ve sarhoş, "ışığın olduğu yer burası" diyor.


2
Ama mecazi olarak, bu yüzden bir fener alıyorsunuz. Karanlıktaki anahtarları aramak imkansızdır, bu yüzden sorunu nasıl çözeceğinizi bildiğiniz bir konuya uyarlarsınız. Dışbükey olmayan algoritmalarla ilgili bir sorun üzerinde çalışıyorsanız ve 3 milyon dolara mal olacak bir çözüm bulursanız, ben de dışbükey optimizasyonda benzer bir sorunla çalışıyorum ve cevabımı alıp dışbükey olmayan soruna bir çözüm buluyorum 2 milyon dolar daha iyi bir cevap buldum.
Prosfilaes,

Bu cevap pek çok düzeyde hatalı. İçin dışbükey ölçümlerinin karşılaştırılması sokak lambası etkisi adildir yanlış . Konuyla ilgili daha fazla bilgi edinmek için, Boyd ve Vandenberghe'nin hazırladığı Konveks Optimizasyon ders kitabına başvurmanızı tavsiye ederim .
Digio

2

En önemli paket servisi, makinenin öğrenmesinin uygun bir çözüm bulunamadığı sorunlara uygulanmasıdır. Yapabileceğin en iyi şey, iyi bir yaklaşım bulmak.

Buna karşılık, bir optimizasyon probleminiz olduğunda, optimum bir çözüm vardır, ancak genellikle makul sürede veya makul işlem gücüyle bulunamaz.

Kullandığınız araçlar ve algoritmalar temelde farklıdır. Bu yüzden, bir optimizasyon dersi almanın hemen bir faydası olmadığını söylerken, ilgili alanlarla ilgili biraz bilgi sahibi olmak her zaman iyidir. Bir optimizasyon problemini tanıyabiliyorsanız, bunu makine öğrenme algoritmalarıyla değil, optimizasyon algoritmalarıyla çözmeniz gerektiğini bileceksiniz. Yalnız diyeceğim çok değer.


33
Evet, makine öğrenmede en iyi yaklaşımları arıyoruz. Ancak her iki şeyin de "temelde farklı" olduğunu söyleyerek yanılıyorsunuz . ML algoritmaları, kayıp fonksiyonlarını en aza indirmek ve verilere ve amaçlara verilen en uygun parametreleri bulmak için optimizasyonu kullanır. Hiperparametrelerinizi ayarlarken, bunların optimal kombinasyonunu arıyorsanız. Her durumda, hedefinize ulaşmak için bir şeyi maksimize ediyor veya minimize ediyorsunuz, bu nedenle bir çeşit optimizasyon kullanıyorsunuz.
Tim

@Tim: Doğru, farklı şekilde ifade etmeliydim.
Toby

17
Kabul edersen, muhtemelen tekrar söylemelisin.
Tim

19
Bu cevap açıkça yanlıştır. Çok sayıda makine öğrenme problemi optimizasyon problemlerine yol açıyor.
Monica

2
"Optimizasyon problemlerinde genellikle optimum çözüm bulunamadığı" iddiası yanlıştır. Özellikle dışbükey optimizasyon bağlamında ( OP'nin sorduğu şey), optimum çözüm kolayca bulunabilir (örneğin çürüyen öğrenme oranına sahip gradyan iniş ) dışbükey bir fonksiyonun optimumuna dönüşmesi garanti edilir. Büyük problem, makine öğrenimindeki birçok problemin dışbükey olmamasıdır .
Jan Kukacka,

2

Hxd1011'in dediği gibi, dışbükey problemlerinin hem teorik olarak hem de (tipik olarak) pratikte çözülmesi daha kolaydır. Bu nedenle, dışbükey olmayan problemlerde bile, birçok optimizasyon algoritması "1. adımı sorunu bir dışbükeyine indir" (muhtemelen bir süre içinde) içinde başlar.

Benzer bir şey doğrusal olmayan kök bulma ile olur. Genellikle çözüm (örneğin, Newton'un yöntemiyle) "adım 1'e gider. Doğrusal bir sorunu azaltın, çünkü bunları nasıl çözeceğimizi biliyoruz".


1

İlgi alanlarınız derin öğrenmeye uygulanan (dışbükey) optimizasyona dayanıyorsa (sinir ağları ile pratikte yaygın olarak kullanılan transfer öğrenmesinden bahsediyorsunuz) uygulamalarında, http: : //www.deeplearningbook.org/

Dışbükey optimizasyonun bir tartışması ve derin sinir ağları uygulandığında neden bu kadar başarılı olamadığı. Tabii ki, belki de mevcut uzlaşmayı değiştirecek bu alanda araştırma yapabilirsin!


0

Jerome H.'den duyduğum gibi, Makine Öğrenimi'nde geliştirilen Friedman yöntemleri aslında Makine Öğrenimi topluluğuna ait değildir.

Benim açımdan Makine Öğrenmesi, başka alanlardan çeşitli yöntemlerin toplanması gibidir.

İstatistiksel Öğrenme açısından bakıldığında, regresyon ve sınıflandırma için üç ana soru şunlardır:

  1. Yaklaştırıcıyı çektiğiniz fonksiyon ailesi nedir

  2. Bir işlevi nasıl çekeceğinizin kriterleri nedir

  3. En iyi işlevi bulmak için yöntem nedir


Yapıcı bir şekilde (1) 'de çalışmak için - matematik optimizasyonun kullanımına nasıl yardımcı olabileceği çok açık değildir.

(2) 'de yapıcı bir şekilde çalışmak - hedefin amaç olduğu açıktır. Ve matematik optimizasyonu buna yardımcı olabilir.

Üzerinde (3) yapıcı şekilde çalışmak için - matematik optimizasyonuna ihtiyacınız var.


Matematik optimizasyonunun birkaç parçası var:

  1. Dışbükey Optimizasyon / Dışbükey Analiz - çok güzel matematik alanı. Farklı olmama, problem değil. Ve uygulama açısından iki faydadan daha fazlası quasiconvex ve log-conveve olduğu dışbükey fonksiyonların 50 genellemesi vardır.

Ayrıca "stokastiklik" ile nasıl başa çıkılacağına dair yollar da var, "Kimse stokastik dışbükey optimizasyonun nasıl çözüleceğini kimse bilmiyor"

  1. Konveks Olmayan Optimizasyon - genellikle insanlar bununla sürekli bir amaç anlamına gelir, ancak eğrilik değişebilir. Bu gezegendeki insanlar onu tam olarak nasıl çözeceğini bilmiyorlar. Ve aslında tüm mehtodlar kaldıraç yapar (1).

  2. Kombinatoryal optimizasyon - o zaman daha da vahşi (2), şimdi bulduğunuz parametreler için eksi operatörünü bile uygulayamıyorsunuz. Bir örnek Karar Ağaçlarında "bölgeler" dir. Bu yüzden onunla nasıl başa çıkılacağının iki yolu vardır: a) Sorunu dışa vurun ve (1) b) 'den metotları kullanın. Çok sayıda parametre için çalışmaz. c) kaba kuvvet uygulayın, ancak bazı açgözlü adımlarla. CART'ın yaptığı bir şey.


En azından seni ikna ettiğimi düşünüyorum:

I) Dışbükey Optimizasyon çoğu optimizasyon problemi için merkezi bir şeydir.

II) "01:15 Optimizasyon aslında ML veya AI'dan daha büyük bir konu, fakat aslında daha büyük bir konu." ( https://www.youtube.com/watch?v=uF3htLwUHn0&t=992s )


Bu bir cevap olarak bu sitenin standartlarına göre biraz kısa - bu konuda genişleyebileceğinizi düşünüyor musunuz? Aksi takdirde, en iyi yorum olarak uygun olabilir.
Silverfish,

Tamam. Genişleyeceğim, ama aslında çeşitli alanlarla bağlantı hakkında bir makale yazmak mümkün. Aslında Stephen P. Boyd'a, insanların daha önce ve ne zaman düşündükleriyle ilgili soruları sordum - youtu.be/XV1E-Jnc4SU?t=242 . Bugünlerde dünyanın kırıldığını söyledi.
bruziuz

1
@ Silverfish Güncellendi, şimdi bir cümle yerine uzun bir metin.
bruziuz
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.