Machine Learning (Teori)5/16/2011Arah Penelitian Machine Learning dan AlgoritmaTags: Machine Learning, Pertanyaan, Penelitian - jl @ 09:15
Muthu mengundang saya untuk lokakarya pada algoritma di lapangan, dengan tujuan memberikan rasa dimana penelitian jangka pendek harus pergi. Ketika waktunya tiba walaupun, saya menawar untuk posting sebagai gantinya, yang memberikan kesempatan bagi orang lain untuk komentar.
Ada beberapa hal yang saya tidak sepenuhnya memahami ketika saya pergi ke Yahoo! sekitar 5 tahun yang lalu. Saya ingin mengulang mereka sebagai orang-orang di akademia mungkin belum memahaminya secara intuitif.
1. Hampir semua algoritma dampak besar beroperasi dalam waktu pseudo-linier atau lebih baik. Pikirkan tentang caching, hashing, pengurutan, penyaringan, dll ... dan Anda memiliki rasa apa beberapa algoritma yang paling banyak digunakan adalah. Hal ini cukup sedikit untuk riset Belajar Machine, karena orang sering bekerja dengan algoritma waktu superlinear dan bahasa. Dua contoh yang sangat umum ini adalah model grafis, dimana inferensi sering merupakan superlinear operasi-berpikir tentang ketergantungan n2 pada jumlah negara di Hidden Markov Model dan Kernelized Support Vector Machines mana optimasi biasanya kuadratik atau lebih buruk. Ada dua alasan dasar untuk ini. Yang paling jelas adalah bahwa waktu linier memungkinkan Anda untuk berurusan dengan dataset besar. Sebuah titik kurang jelas namun penting adalah bahwa algoritma waktu superlinear secara inheren buggy-ini memiliki waktu berjalan tidak dapat diandalkan yang dapat dengan mudah meledak jika Anda secara tidak sengaja memberikan masukan terlalu banyak.
2. Hampir semua hal layak dilakukan memerlukan banyak orang yang bekerja bersama-sama. Hal ini terjadi karena berbagai alasan. Salah satunya adalah aspek waktu-kritis terhadap pembangunan di banyak tempat itu benar-benar berguna untuk membayar lebih untuk memiliki sesuatu yang berkembang lebih cepat. Lain adalah bahwa proyek-proyek nyata hanya jauh lebih besar dari yang Anda harapkan. Sebuah ketiga adalah bahwa organisasi sebenarnya memiliki orang-orang datang dan pergi, dan setiap proyek yang hanya dengan satu whithers orang ketika mereka meninggalkan. Pengamatan ini adalah apa yang berarti bahwa pengembangan sistem dengan abstraksi yang bersih bisa menjadi sangat membantu, karena memungkinkan orang untuk bekerja secara independen. Pengamatan ini juga berarti bahwa trik sederhana yang berlaku secara luas (misalnya trik hashing) secara luas dapat membantu.
Cara yang baik untuk arah penelitian frase adalah dengan pertanyaan. Berikut adalah beberapa pertanyaan alami saya.
1. Bagaimana kita belajar efisien dalam pengaturan di mana eksplorasi yang dibutuhkan? Ini adalah pengaturan dimana pilihan tindakan yang Anda ambil mempengaruhi tampilan hadiah-iklan diamati dan pengujian medis dua skenario yang baik. Hal ini sangat penting untuk banyak aplikasi, karena pembelajaran dengan pengaturan eksplorasi secara inheren lebih alami dari standar diawasi belajar pengaturan. Tutorial kita lakukan banyak rincian keadaan seni di sini, tapi pertanyaan yang sangat signifikan tetap. Bagaimana kita bisa melakukan evaluasi offline efisien algoritma (lihat di sini untuk percobaan pertama)? Bagaimana kita bisa baik efisien dalam sampel kompleksitas dan kompleksitas komputasi? Beberapa kelompok tertarik sampling dari posterior Bayesian untuk memecahkan masalah macam ini. Di mana dan kapan hal ini dapat terbukti bekerja? (Tidak ada dasarnya analisis.) Apa yang dimaksud dengan algoritma kompatibel maksimal didistribusikan dan insentif yang tetap efisien? Pertanyaan terakhir ini sangat alami untuk desain pasar tempat. Bagaimana kita bisa membangun fungsi terbaik pahala operasi pada skala waktu yang berbeda? Apa hubungan antara versi realisasi dan agnostik dari pengaturan ini, dan bagaimana kita dapat membangun suatu algoritma yang lancar interpolates antara kedua?
2. Bagaimana kita bisa belajar dari banyak data? Kami akan menyajikan survei KDD tutorial tentang apa yang telah dilakukan. Beberapa skala yang lebih besar belajar masalah telah diatasi secara efektif dengan menggunakan MapReduce. Contoh terbaik di sini saya tahu dikenal sebagai algoritma Ozgur Cetin di Y!-It 's gradien konjugasi aspal dengan Newton stepsize menggunakan dua melewati contoh per langkah. (Sebuah versi nonHadoop diimplementasikan di VW untuk referensi.) Namun prediktor linier tidak cukup-kami ingin belajar algoritma yang dapat misalnya belajar dari semua gambar di dunia. Melakukan hal ini juga masuk akal memerlukan pendekatan baru dan algoritma belajar baru. Pengamatan kunci di sini adalah bahwa bandwidth yang diperlukan oleh algoritma belajar tidak bisa terlalu besar.
3. Bagaimana kita bisa belajar ke indeks efisien? Solusi standar dalam temu kembali informasi adalah untuk mengevaluasi (atau sekitar mengevaluasi) semua objek dalam database mengembalikan elemen dengan skor terbesar menurut beberapa belajar atau dibangun fungsi penilaian. Ini adalah operasi (n) inheren O, yang membuat frustrasi ketika itu masuk akal bahwa lebih cepat secara eksponensial O (log (n)) solusi ada. Sebuah solusi yang baik melibatkan teori dan bekerja empiris di sini, karena kita perlu berpikir tentang bagaimana berpikir tentang bagaimana untuk memecahkan masalah, dan tentu saja kita perlu untuk menyelesaikannya.
4. Apakah bahasa yang inheren efisien fleksibel untuk architecting representasi untuk belajar algoritma? Saat ini, model grafis sering mendapatkan (salah) yang digunakan untuk tujuan ini. Sangat mudah dan alami untuk pose model komputasi grafis terselesaikan, menyiratkan aplikasi nyata banyak melibatkan perkiraan. Solusi yang lebih baik akan menggunakan bahasa representasi yang berbeda yang selalu komputasi penurut belum cukup fleksibel untuk memecahkan masalah di dunia nyata. Satu titik awal untuk ini adalah Searn. Pendekatan lain yang umum adalah topik dari kasar ke bengkel halus. Ini adalah inheren istimewa seperti kasar denda adalah lebarnya dipangkas pencarian pertama. Disajikan kembali, tidak cukup untuk memiliki bahasa untuk menentukan keyakinan sebelum Anda struktural-alih-alih kita harus memiliki bahasa untuk seperti yang menghasilkan solusi komputasi yang penurut.
5. Masalah Deep Belajar tetap menarik. Bagaimana Anda efektif belajar nonlinier kompleks mampu kinerja yang lebih baik dari prediksi linier dasar? Solusi efektif menghindari rekayasa fitur. Sekarang, hal ini hampir seluruhnya ditangani secara empiris, tetapi teori dengan mudah bisa memiliki peran dalam algoritma optimasi kalimat yang tepat, misalnya.
solusi yang baik untuk masing-masing arah penelitian di atas akan menghasilkan revolusi di daerah mereka, dan setiap orang dari mereka masuk akal akan melihat penerapan yang luas.
Apa yang hilang?
Cross-posted at CACM.
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment