Makine öğrenimi teknikleri gelişmeye devam ederse, algoritmaların gelecekteki rolü nedir?


23

Bundan 30 yıl sonra geleceğe bakalım. İyimser olalım ve makine öğrenimi ile ilgili alanların son 10 yılda gördüklerimiz kadar hızlı bir şekilde gelişmeye devam ettiğini varsayalım. Bu harika olurdu, ama o zaman böyle bir gelecekte geleneksel algoritmaların rolü ne olurdu?

Burada "geleneksel algoritmalar" ile, TCS'de izlediğimiz olağan süreci kastediyorum: iyi tanımlanmış bir hesaplama problemini biçimlendirmek , problemi çözmek için algoritmalar tasarlamak ve formal performans garantilerini kanıtlamak .

Şimdi , gelecekte de geleneksel algoritma tasarımını ve analizini kullanmamız gereken uygulama alanları nelerdir ve makine öğreniminin herhangi bir ilerlemesinin geleneksel algoritmaları çoğunlukla alakasız hale getirmesi pek olası değildir?

İlk başta bu aptalca bir soru gibi görünebilir: Tabii ki gelecekte de sıralama, arama, indeksleme vb. Yapabilmemiz gerekecek! Elbette Fourier dönüşümlerini verimli bir şekilde yapabilmemiz, büyük matrisleri çarpmanız, en kısa yolları bulmamız, lineer optimizasyon problemlerini çözmemiz gerekecek!

Fakat yine de, geleneksel olarak tasarladığımız algoritmaları kullandığımız uygulamalara daha derinlemesine bakmaya başladığınızda, geleneksel algoritma tasarımının ve analizinin bu sorunların doğru cevabı olduğu açık değildir: Aramaya ilişkin uygulamalarda , genellikle, belli belirsiz ve kötü tanımlanmış bir anlamda (örneğin semantik benzerlik) bir insana yakın bir eşleşme olan bir şey bulmakla ilgileniyoruz, bazı matematiksel anlamda en uygun olan bir şey değil (örneğin minimum düzenleme mesafesi). Rota planlama ile ilgili uygulamalardaGenellikle bazı örneklemlere göre iyi olan rotaları bulmakla ilgileniriz (örneğin, diğer insanlar bunu tercih eder), bazı matematiksel anlamda en uygun rotaları değil (örneğin en kısa mesafe veya en ucuz fiyat). Resimde belirsiz, kötü tanımlanmış bir insan bileşeni bulunduğunda, bir TCS araştırmacısının ortaya çıkmasına izin vermek yerine, örneklere dayalı iyi cevaplar üretmeyi öğretmeye çalışmamız daha iyi olabilir. geleneksel algoritma tasarımı ve analizi ile çözebileceğimiz resmi bir hesaplama problemiyle.

Öyleyse, geçmişte algoritmalarda neler yaptığımızın kesinlikle açık olduğu uygulama alanları (tercihen gerçek ve doğrudan endüstriyel uygulamalar) nelerdir? gelecek?

Makine öğrenim tekniklerinde alt rutin olarak kullanılan algoritmalar, geleceğe dönük açık bir aday gibi gözüküyor, ancak bu, kullandığımız özel makine öğrenim tekniğine bağlı ve son on yıl içinde gördüğümüz gibi, bu hızla değişebilir. .


2
nccnc-ε

4
Yaklaşımların özel olduğu görüşünden şüpheliyim. Makine öğrenmesi algoritmalarının çözdüğü problemleri resmen tanımlamanın ve performanslarını analiz eden iyi teorik modeller oluşturmanın mümkün olmayacağını düşünmek için bir nedenimiz var mı? Bu veri odaklı algoritmalar için daha iyi modeller gerektirebilir (ki bunlar yüksek tanımlayıcı karmaşıklığı olan algoritmalar olarak düşünürüm), ama bu üstesinden gelinemeyecek bir engel mi?
Neal Young,

Yanıtlar:


6

Bu son zamanlarda beni rahatsız eden bir soru, bu yüzden sorduğuma sevindim.
Bununla birlikte, bilgisayar öğreniminin hesaplama yaklaşımını etkileyeceği uygulama alanlarını sınıflandırmakla daha az ilgileniyorum (geleneksel) algoritmalar alanındaki ilerlemeler üzerindeki etkim. Ne tür "insan yapımı algoritmalar" araştırmasına 30 yıl içinde hala ilgi duyacağız? Kuşkusuz, bu genel olarak cevaplanması zor bir sorudur, çünkü sonucun hangi kalitesinin gerekli olduğunu belirleyen bir uygulamadır.

Numaralandırma algoritmalarının kurtulanlar arasında sayılacağını düşünüyorum . Tüm girdileri bir yonga ile test etme veya kapsamlı bir arama yapma ihtiyacı devam edecek. Nesneye özgü dikkat, ince ayarlı tasarım, her nesne örneğini tam olarak (veya en azından) bir kez üretmek için gerekli; ve boşa harcanan herhangi bir çabanın çalışma zamanı amplifikasyonu (nesnenin tanımının bir fonksiyonu olarak üssel bir sayıda örnek olabilir) - bu faktörler beni genel amaçlı bir otomatik öğrenme sürecinin akıllıca eşleştirebileceği konusunda şüpheci kılar, bu alanda amaç için tasarlanmış bir çözüm.


4

Makine öğrenimi çözümleri ile ilgili sorun, gerçekten ne istediğinizi hesapladılarsa bilmenin bir yolu yoktur.

Yanlış bir sonucun felaket olmadığı (yani, şu anda sezgisel kullandığımız her yerde) veya sonucun kolayca kontrol edilebileceği (etki alanı olan her yerde kullandığımız her yerde) tüm alanlarda ele alınmalarını beklerim (çünkü orada "kontrol ediyorlar" çözüm değil "zor olabilir)).

Kalan alanlar için algoritmaların resmen kanıtlanmasını bekliyorum (örneğin Coq / Gallina kullanarak). Umarım, makine öğrenmesi sonunda sistemlerde bir şeyleri kağıt üzerinde olduğu kadar kolay (ya da daha kolay) ispatlayacaktır. İnsanların sadece spesifikasyonları yazdığı noktaya bile ulaşabilir ve algoritma ve doğruluğunun kanıtı makine öğrenmesi kullanılarak bulunur. (Algoritmanın kendisinin makine öğrenmeyi kullanmadığına dikkat edin, ancak makinenin öğrenimini kullanarak doğruluğunun kanıtı bulunduğunu unutmayın)

Bu yüzden kendimizi yalnızca kanıt yardımcıları, program özellikleri ve makine öğrenmesi algoritmaları yazabiliriz.

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.