Apakah pembelajaran yang mendalam membunuh pemrosesan gambar / visi komputer?

52

Saya tak sabar untuk mendaftar dalam MSc pemrosesan Sinyal dan Gambar, atau mungkin Visi Komputer (saya belum memutuskan), dan pertanyaan ini muncul.

Kekhawatiran saya adalah, karena pembelajaran yang mendalam tidak perlu ekstraksi fitur dan hampir tidak ada input pra-pemrosesan, apakah itu membunuh pemrosesan gambar (atau pemrosesan sinyal secara umum)?

Saya bukan ahli dalam pembelajaran mendalam, tetapi tampaknya bekerja dengan sangat baik dalam tugas-tugas pengenalan dan klasifikasi mengambil gambar secara langsung, bukan vektor fitur seperti teknik lainnya.

Apakah ada kasus di mana pendekatan ekstraksi + klasifikasi fitur tradisional akan lebih baik, memanfaatkan teknik pemrosesan gambar, atau apakah ini sekarat karena pembelajaran yang mendalam?

Tony
sumber
3
Membuka kembali ini karena memiliki jumlah upvotes yang tinggi dan jawaban terpilih memiliki jumlah upvote yang sangat tinggi.
Peter K.
1
@LaurentDuval Saya pikir setiap jawaban sangat membantu dan sangat menarik, tetapi terutama jawaban Anda dan ahli pembaca matematika (bersama dengan diskusi yang muncul) benar-benar menjelaskan topik tersebut.
Tony
2
Saya ingin membuat perempatan dalam diskusi yang sedang berlangsung. Siapa bilang pembelajaran mendalam tidak membutuhkan ekstraksi fitur? Dalam pengalaman praktis saya sendiri, kita seharusnya tidak melatih DNN untuk data mentah. Kita harus melakukan beberapa ekstraksi fitur dan juga harus memiliki pemahaman dasar tentang gambar. Pembelajaran yang mendalam harus digunakan dengan hati-hati, tetapi juga merupakan ide yang bagus.
arun raj

Jawaban:

45

Posting ini telah banyak diperbarui. Di atas, Anda dapat melihat pembaruan tautan. Di bawah, variasi pada jawaban awal. Untuk versi singkatnya: keberhasilan jaringan saraf konvolusional dan pembelajaran mendalam terlihat seperti semacam revolusi Galilea. Untuk sudut pandang praktis, pemrosesan sinyal klasik atau visi komputer sudah mati ... asalkan Anda memiliki cukup data berlabel, tidak terlalu peduli dengan kegagalan klasifikasi yang jelas ( cacat yang dalam ), memiliki energi tak terbatas untuk menjalankan tes tanpa memikirkan jejak karbon , dan jangan ganggu penjelasan rasional. Bagi yang lain, ini membuat kami memikirkan kembali semua yang kami lakukan sebelumnya: ekstraksi fitur, optimisasi (lih. Kolega saya J.-C. Pekerjaan pesquet pada Struktur Jaringan Neural Dalam Memecahkan Ketimpangan Ketimpangan Variasional), invarian, kuantifikasi, dll. Dan penelitian yang sangat menarik muncul dari itu, semoga mengejar dengan prinsip-prinsip yang beralasan kuat dan kinerja serupa.

Tautan yang diperbarui:

Kami memperkenalkan contoh-contoh permusuhan alami - contoh dunia nyata, tidak dimodifikasi, dan terjadi secara alami yang menyebabkan akurasi penggolong menurun secara signifikan. Kami mengumpulkan 7.500 contoh permusuhan alami dan melepaskannya dalam rangkaian uji klasifikasi ImageNet yang kami sebut ImageNet-A. Dataset ini berfungsi sebagai cara baru untuk mengukur kekokohan classifier. Seperti contoh permusuhan l_p, contoh-contoh ImageNet-A berhasil ditransfer ke pengklasifikasi kotak hitam atau gaib. Misalnya, pada ImageNet-A, DenseNet-121 memperoleh akurasi sekitar 2%, penurunan akurasi sekitar 90%. Memulihkan akurasi ini tidak sederhana karena contoh-contoh ImageNet-A mengeksploitasi kelemahan yang dalam pada pengklasifikasi saat ini termasuk terlalu mengandalkan warna, tekstur, dan isyarat latar belakang. Kami mengamati bahwa teknik pelatihan populer untuk meningkatkan ketahanan tidak banyak berpengaruh, tetapi kami menunjukkan bahwa beberapa perubahan arsitektur dapat meningkatkan ketahanan terhadap contoh permusuhan alami. Penelitian di masa depan diperlukan untuk memungkinkan generalisasi yang kuat ke set uji ImageNet keras ini.

Referensi pembelajaran mendalam "loncatan" pada pemrosesan sinyal / gambar standar dapat ditemukan di bagian bawah. Michael Elad baru saja menulis Deep, Deep Trouble: Dampak Deep Learning pada Pemrosesan Gambar, Matematika, dan Kemanusiaan (SIAM News, 2017/05), kutipan:

Kemudian jaringan saraf tiba-tiba kembali, dan dengan sepenuh hati.

Tribun ini menarik, karena menunjukkan pergeseran dari "pemrosesan gambar" tradisional, mencoba memodelkan / memahami data, ke bidang kebenaran, tanpa begitu banyak wawasan.

Domain ini berkembang cukup cepat. Ini tidak berarti itu berkembang dalam arah yang disengaja atau konstan. Tidak benar atau salah. Tapi pagi ini, saya mendengar pepatah berikut (atau apakah ini lelucon?):

algoritma yang buruk dengan sejumlah besar data dapat melakukan lebih baik daripada algoritma yang cerdas dengan data pauce .

Ini adalah usaha saya yang sangat singkat: pembelajaran yang mendalam dapat memberikan hasil yang canggih, tetapi orang tidak selalu mengerti mengapa , dan bagian dari pekerjaan ilmuwan kami tetap menjelaskan mengapa sesuatu bekerja, apa isi dari sepotong data , dll.

Pembelajaran mendalam membutuhkan basis data yang sangat luas. Setiap kali Anda mengerjakan kerajinan pada gambar tunggal atau tunggal (yaitu tanpa basis data yang besar di belakang), terutama di tempat-tempat yang tidak mungkin menghasilkan "gambar tag berbasis pengguna gratis" (dalam set komplementer dari set " kucing lucu bermain game dan wajah ") , Anda dapat tetap berpegang pada pemrosesan gambar tradisional untuk sementara waktu, dan untuk keuntungan. Tweet baru - baru ini merangkum bahwa:

(banyak) data berlabel data (tanpa ada vars yang hilang) persyaratan adalah pemecah kesepakatan (& tidak perlu) untuk banyak domain

Jika mereka terbunuh (yang saya ragu dengan pemberitahuan jangka pendek), mereka belum mati. Jadi setiap keterampilan yang Anda peroleh dalam pemrosesan sinyal, analisis gambar, visi komputer akan membantu Anda di masa depan. Ini misalnya dibahas dalam posting blog: Apakah Kita Lupa tentang Geometri dalam Penglihatan Komputer? oleh Alex Kendall:

Pembelajaran mendalam telah merevolusi visi komputer. Saat ini, tidak ada banyak masalah di mana solusi berkinerja terbaik tidak didasarkan pada model pembelajaran mendalam end-to-end. Secara khusus, jaringan saraf convolutional sangat populer karena mereka cenderung bekerja dengan cukup baik di luar kotak. Namun, model ini sebagian besar kotak hitam besar. Ada banyak hal yang tidak kita mengerti tentang mereka.

Contoh konkret dapat berupa: pasangan gambar yang sangat gelap (mis. Pengawasan) dari lokasi yang sama, perlu dievaluasi jika salah satunya berisi perubahan spesifik yang harus dideteksi, berpotensi menjadi masalah pemrosesan gambar tradisional, lebih dari sekadar Deep Learning (mulai hari ini).

Di sisi lain, sesukses Deep Learning dalam skala besar, ini dapat menyebabkan kesalahan klasifikasi sejumlah kecil data, yang mungkin tidak berbahaya "rata-rata" untuk beberapa aplikasi. Dua gambar yang hanya sedikit berbeda dengan mata manusia dapat diklasifikasikan secara berbeda melalui DL. Atau gambar acak dapat diatur ke kelas tertentu. Lihat misalnya Jaringan saraf dalam mudah tertipu: Prediksi kepercayaan tinggi untuk gambar yang tidak dapat dikenali (Nguyen A, Yosinski J, Clune J. Proc. Visi dan Pengenalan Pola Komputer 2015), atau Apakah Pembelajaran Dalam Memiliki Kelemahan Yang Dalam? , tentang negatif permusuhan:

Jaringan mungkin salah mengklasifikasikan gambar setelah para peneliti menerapkan gangguan tertentu yang tak terlihat. Gangguan ditemukan dengan menyesuaikan nilai piksel untuk memaksimalkan kesalahan prediksi.

Dengan segala hormat terhadap "Pembelajaran Dalam", pikirkan tentang "produksi massal menanggapi perilaku yang terdaftar, diketahui, dapat divalidasi secara massal atau yang diharapkan" versus "kerajinan tunggal". Tidak ada yang lebih baik (belum) dalam skala indeks tunggal. Keduanya mungkin harus hidup berdampingan untuk sementara waktu.

Namun, pembelajaran yang mendalam meliputi banyak bidang baru, seperti dijelaskan dalam referensi di bawah ini.

Untungnya, beberapa orang berusaha menemukan alasan matematika di balik pembelajaran mendalam, contohnya adalah menyebarkan jaringan atau transformasi yang diusulkan oleh Stéphane Mallat dan rekan penulisnya, lihat situs ENS untuk menyebarkan . Analisis harmonik dan operator non-linear, fungsi Lipschitz, terjemahan / invarian rotasi, lebih baik untuk orang pemrosesan sinyal rata-rata. Lihat misalnya Memahami Deep Convolutional Networks .

Laurent Duval
sumber
1
Menambah data pelatihan yang tidak memadai menggunakan salinan yang dimodifikasi membantu pembelajaran mendalam untuk digeneralisasi. Akhir-akhir ini, banyak cara telah ditemukan di sekitar kebutuhan untuk penandaan yang diawasi secara lengkap: Pembesaran data yang tidak diawasi secara otomatis menghasilkan label untuk bagian yang tidak berlabel dari data pelatihan dalam pembelajaran semi-diawasi dan menggunakan data itu untuk pelatihan. (Jangan ragu untuk memasukkan informasi ini atau yang serupa dalam jawabannya.)
Olli Niemitalo
1
Jika Anda tahu cara menambah "secara konsisten". OK pada dataset klasik, masih berjalan pada data ilmiah yang akan saya tangani (geologi, kimia)
Laurent Duval
@Laurent, tentang apa yang Anda katakan: "pekerjaan ilmuwan kami tetap menjelaskan mengapa semuanya berjalan" : kedengarannya seperti ilmu data adalah karier yang valid untuk seseorang yang mempertimbangkan untuk bekerja dengan serius di DSP. Apakah ada nama lain selain judul "insinyur DSP" khas yang pernah Anda dengar?
JFonseca
21

Pertama, tidak ada yang salah dengan melakukan pekerjaan grad dalam pemrosesan gambar atau visi komputer dan menggunakan pembelajaran yang mendalam. Pembelajaran yang mendalam tidak membunuh pemrosesan gambar dan visi komputer, itu hanyalah topik penelitian terkini di bidang-bidang tersebut.

Kedua, pembelajaran mendalam terutama digunakan dalam pengenalan kategori objek. Tapi itu hanya satu dari banyak bidang visi komputer. Ada area lain, seperti deteksi objek, pelacakan, rekonstruksi 3D, dll., Banyak di antaranya masih mengandalkan fitur "kerajinan tangan".

Dima
sumber
5
Hati-hati: DNNs sangat mampu melakukan semua yang Anda sebutkan: Deteksi objek, pelacakan, rekonstruksi 3D, dll. Yang mengatakan, pemrosesan sinyal adalah wawasan tentang aspek fisik tentang bagaimana sinyal dimanipulasi, dan mengapa kita harus memanipulasi mereka dalam beberapa cara - dan itu (saya percaya) akan membuat kembali untuk menjelaskan mengapa algoritma adaptif seperti DNNs bekerja. Tapi jangan salah - DNNs sangat mampu mendasarkan transformasi dari input, dan semua jalan ke tujuan sasaran (dapat dibedakan).
Tarin Ziyaee
11

No Deep Learning tidak membunuh Pemrosesan Gambar. Anda membutuhkan kumpulan data yang besar dan banyak sumber daya komputasi untuk melakukan pembelajaran yang mendalam. Ada banyak aplikasi yang diinginkan untuk dapat melakukan pemrosesan gambar dengan beban komputasi yang lebih sedikit dan jejak memori yang lebih kecil dan tanpa memiliki akses ke database besar. Beberapa contoh adalah ponsel, tablet, kamera ponsel, mobil, quadcopter. Pembelajaran mendalam sangat digemari saat ini karena ada beberapa hasil klasifikasi yang sangat mengesankan.

Klasifikasi adalah satu masalah dari banyak yang berurusan dengan Pengolahan Citra sehingga bahkan jika benar bahwa pembelajaran mendalam akan menyelesaikan semua masalah klasifikasi, akan ada banyak jenis Pengolahan Gambar yang tersisa untuk dilakukan. Pengurangan kebisingan, registrasi gambar, perhitungan gerak, morphing / blending, penajaman, koreksi dan transformasi optik, perhitungan geometri, estimasi 3D, model gerakan waktu 3D +, penglihatan stereo, kompresi dan pengkodean data, segmentasi, deblurring, stabilisasi gerakan, grafik komputer, semua jenis rendering.

pembaca matematika
sumber
Denoising, estimasi 3D, dll, semua yang Anda sebutkan sangat dapat diperkirakan dan diselesaikan oleh DNNs dari arsitektur yang sesuai, dan data yang sesuai.
Tarin Ziyaee
1
Ya ya dan Anda dapat melakukan belanja mingguan Anda di Jaguar (tapi itu bukan mengapa mereka dibuat)
mathreadler
1
Hehe, benar - tapi itu berbeda dari mengatakan bahwa Anda tidak bisa berbelanja menggunakan jaguar Anda.
Tarin Ziyaee
Sangat mudah untuk memaksakan kendala yang berguna pada masalah teknik yang agak sulit ditangani oleh DNN. Misalnya kendala bahwa metode yang digunakan tidak boleh bias terhadap set input data tertentu. Maka DNNs tentu saja akan didiskualifikasi secara default karena mereka semua membutuhkan pelatihan dan karenanya akan bias menggunakan data pelatihan.
mathreadler
Itu berlaku untuk semua alat teknik: Tapi bukan itu intinya. Intinya adalah bahwa semua tugas yang telah Anda sebutkan di atas, sebenarnya bisa diselesaikan dengan DNNs. Ya, beberapa perkembangan yang lebih baru, tetapi salah mengatakan bahwa mereka tidak dapat diselesaikan dengan DNNs! Itu saja!
Tarin Ziyaee
11

Hari ini kami berdiskusi dengan seorang teman. Itu adalah hari hujan di sini di Munich, sementara sebagian besar Eropa memiliki semacam suasana yang cerah. Orang-orang berbagi foto di media sosial, di mana mereka mengenakan gaun musim panas yang bagus, berkeliaran di lautan. Dia kesal dengan situasi ini dan menoleh ke saya dan bertanya: "Bisakah Anda menulis perangkat lunak untuk memblokir gambar di media sosial, yang melibatkan foto-foto lucu musim panas, ketika cuaca di sini seburuk ini?". Saya bilang, mengapa tidak. Yang perlu Anda lakukan adalah mengumpulkan satu set besar gambar musim panas, dan contoh negatif, beri makan melalui jaringan, yang melakukan klasifikasi biner pada tingkat "Block" atau "No-block". Latih dan selaraskan jaringan. Itu dia.

Kemudian, saya menoleh ke diri saya sendiri: Apakah saya benar-benar tahu cara menulis algoritma sederhana untuk memutuskan apakah cuacanya bagus atau tidak, tanpa membiarkan mesin berpikir untuk saya? Nyaris ... Mungkin ... Untuk pembaca yang penasaran, berikut adalah beberapa fitur yang mungkin ingin Anda rancang, jika Anda ingin mencobanya:

Klasifikasi Cuaca Dua Kelas, Cewu Lu§ Di Lin, Jiaya Jia, Chi-Keung Tang , CVPR 2014

Jelas, saya bahkan tidak akan peduli dengan publikasi CVPR ini saat ini dan hanya pergi jauh. Jadi, sama seperti saya menyukai pembelajaran mendalam untuk kinerja yang kuat dalam banyak skenario, saya juga menggunakannya dengan hati-hati. Bahkan jika itu tidak akan membunuh pengetahuan saya tentang pemrosesan gambar, itu cenderung mengurangi keahlian domain yang saya butuhkan. Secara intelektual, ini tidak terlalu elegan.

Segera setelah individu tersebut memutuskan untuk tetap berada di jalurnya dan mendapat manfaat dari kedua dunia, dia akan berada di sisi yang aman.

Tolga Birdal
sumber
7

Jawaban singkatnya adalah, Tidak. DL dapat mengenali mug di foto, tetapi ini tidak mematikan pemrosesan sinyal. Karena itu, pertanyaan Anda cukup relevan di masa-masa sulit ini. Ada diskusi panel yang bagus tentang masalah ini, menampilkan Stephane Mallat, dll., Di sini .

dohmatob
sumber
5

Rekayasa data masih digunakan dalam pembelajaran mesin untuk memproses dan memilih data yang diumpankan ke DNN untuk meningkatkan waktu belajar dan efisiensi evaluasi mereka. Pemrosesan gambar (hal-hal antara sensor kamera dan bitmap RGB / dll. Diumpankan ke DNNs), suatu bentuk rekayasa data, masih diperlukan.

hotpaw2
sumber
4

Pemahaman yang mendalam tentang pemrosesan sinyal (bersama dengan aljabar linier, kalkulus vektor, statistik matematika, dll.) Sangat diperlukan untuk pekerjaan non-sepele di bidang pembelajaran mendalam, terutama dalam visi komputer.

Beberapa makalah berdampak tinggi dalam pembelajaran yang mendalam (sekarang sebagian besar buah yang menggantung rendah telah dipetik) menunjukkan pemahaman yang baik tentang konsep pemrosesan sinyal.

Beberapa konsep motivasi:

  • Konvolusi melebar : lihat blogpost ini . Salah satu persamaan pertama akan ada roti-dan-mentega untuk seseorang yang beralasan (hah) dalam konsep pemrosesan sinyal. Ini juga terkait erat dengan algoritma trous yang ditemukan dalam pemrosesan sinyal wavelet klasik.
  • Lapisan konvolusional tertutup / lapisan Dekonv. Sekali lagi, konsep pemrosesan sinyal dasar.
  • Membentuk filter konv - diperlukan gagasan bagus tentang norma operator dan pemetaan kontraksi. Ini biasanya ditemukan dalam kursus EE lulusan dalam Teori Sinyal atau Sistem Kontrol, atau dalam kursus Matematika Analisis (Nyata atau fungsional).
  • Contoh permusuhan : salah satu makalah pertama yang menyelidiki ini ( "sifat menarik dari ..." ) memformalkan ini dalam hal gangguan dan menggunakan konstanta Lipschitz dari berbagai lapisan dan non-linearitas dalam jaringan saraf untuk batas atas sensitivitas terhadap gangguan seperti itu. Setuju, analisisnya sangat awal, tetapi sekali lagi saya percaya itu membuktikan titik bahwa membuat kemajuan non-sepele dalam apa pun, termasuk pembelajaran yang mendalam, membutuhkan pemahaman teori yang tidak sepele.

Daftarnya berlanjut. Jadi, bahkan jika Anda akhirnya bekerja dalam visi komputer dan menerapkan pembelajaran mendalam untuk masalah Anda, latar belakang pemrosesan sinyal akan membuat hal-hal yang sangat mudah dipahami untuk Anda.

AruniRC
sumber
1
Iya. Setiap jalan pintas yang diambil untuk tidak harus belajar apa yang harus dimasukkan ke jaringan harus dipelajari dengan cara yang sulit dengan kinerja yang lebih buruk.
mathreadler
4

Saya benar-benar tidak melakukan banyak pemrosesan gambar tetapi saya bekerja untuk organisasi (Angkatan Laut AS) yang melakukan dan mendanai penelitian dalam klasifikasi sinyal saat terakhir kali Neural Nets menjadi topik hangat, pertengahan hingga akhir 80-an. Saya harus duduk melalui sejumlah besar barang-barang pemasaran dasarnya. Argumennya ada di sepanjang baris:

  • Neural, seperti otak Anda dan karena mengungguli klasifikasi linear, ini mengalahkan teknik statistik. Saya sebenarnya tahu beberapa orang yang makalahnya ditolak karena mereka menggunakan statistik untuk mengevaluasi kinerja.
  • Neural Nets bersifat induktif, mereka dapat mengklasifikasikan hal-hal dengan benar jika tidak ada atau sedikit contoh dalam set pelatihan mereka.
  • DARPA mendanai pekerjaan, dan kita semua tahu bahwa semua yang dilakukan DARPA adalah pemenang. (Google belum ada)
  • Bukankah kinerja luar biasa, tidak perlu matriks kebingungan, tidak perlu kelas primer, saya hanya bisa memberi tahu Anda apa probabilitas kesalahan saya. Tidak perlu batasan, saya hanya akan melakukan hold-one-out dan melatih kembali shuffle.
  • Pilih beberapa fitur dan lakukan, kotak hitam, penskalaan, penyelarasan data, penolakan berantakan, label buruk, kemunculan beberapa kelas, bukan masalah saya.
  • The Fog of Math, Mesin Boltzmann
  • Mari kita melempar SVD dan mungkin dimensi fraktal.
  • Umpan dan saklar yang diawasi / tidak diawasi, saya akan menemukan semua pola tersembunyi Anda. Bukankah ini memori asosiatif yang mendalam?

Butuh buku Bishop untuk meredam sinisme saya.

Dalam lebih dari beberapa aplikasi, algoritma pemrosesan sinyal yang optimal akan membutuhkan pencarian enumerasi lengkap atas ruang parameter besar yang dengan cepat menjadi tidak bisa dipraktikkan. Ladang server besar dapat meningkatkan ruang pencarian yang dapat dicapai tetapi pada titik tertentu, Anda perlu menemukan heuristik. DL tampaknya dapat menemukan beberapa heuristik tersebut tetapi tidak memecahkan NP optimasi yang mendasarinya.

Stanley Pawlukiewicz
sumber
Anda sepenuhnya benar dalam meredam sinisme seperti yang tampaknya membuat banyak orang kecewa. Terkadang saya berharap saya mempelajarinya lebih awal dalam kehidupan.
mathreadler
3

Perspektif saya dari universitas adalah bahwa banyak orang pemroses sinyal agak memusuhi ML, saya curiga karena mereka merasa terancam melanggar batas pada domain mereka. Tetapi baru-baru ini ada banyak penelitian tentang manfaat jaringan saraf dalam yang bernilai kompleks, yang mungkin menunjukkan bahwa tiket emas benar-benar pemahaman yang solid dari kedua disiplin ilmu.

Austin
sumber
1
Ya. Pemrosesan sinyal sangat erat kaitannya dengan pembelajaran mesin. Pemahaman yang kuat tentang pemrosesan sinyal membantu memahami bagaimana membangun dan menggunakan algoritma ML dan jenis data apa (cocok) yang cocok untuk mereka.
mathreadler
2

Baiklah. Dengan cara yang sama bahwa pengembangan dalam bahasa pemrograman tingkat yang lebih tinggi seperti pemrograman perakitan C ++ dan Python 'dibunuh'. Itu tidak berarti tidak relevan untuk belajar perakitan ketika Anda mendaftar di kursus CS. Ini memberikan wawasan besar tentang bagaimana komputer bekerja, apa yang terjadi di belakang layar bahasa tingkat yang lebih tinggi, apa prinsip dasar bahasa komputer, dll. Tetapi tidak ada orang yang waras sekarang akan memprogram aplikasi desktop dalam perakitan.

Jochemspek
sumber