Apakah ada algoritma klasifikasi gambar yang bukan jaringan saraf?


8

Klasifikasi gambar adalah tugas menugaskan salah satu darinlabel yang sebelumnya dikenal untuk gambar yang diberikan. Misalnya, Anda tahu bahwa Anda akan diberikan beberapa foto dan masing-masing gambar memiliki satu foto{cSebuaht,dHaig,cSebuahr,stHaine}di dalamnya. Algoritme harus mengatakan apa yang ditunjukkan foto.

Kumpulan data patokan untuk klasifikasi gambar adalah ImageNet ; terutama tantangan pengenalan visual skala besar (LSVRC) Anda . Ini memiliki tepat 1000 kelas dan sejumlah besar data pelatihan (saya pikir ada versi down-sampel dengan sekitar 250px x 250px gambar, tetapi banyak gambar tampaknya berasal dari Flicker).

Tantangan ini biasanya diselesaikan dengan CNN (atau jaringan saraf lainnya).

Apakah ada kertas yang mencoba pendekatan yang tidak menggunakan jaringan saraf di LSVRC?

Untuk memperjelas pertanyaan: Tentu saja, ada algoritma klasifikasi lain seperti ktetangga terdekat atau SVM. Namun, saya ragu mereka bekerja sama sekali untuk banyak kelas / data sebanyak itu. Setidaknya untukk-NN Saya yakin prediksi akan sangat lambat; untuk SVM saya kira pas dan prediksi akan banyak memperlambat (?).


Anda tidak dapat "menebak" pelatihan dan kecepatan prediksi suatu algoritma. Anda harus membuat tolok ukur sendiri untuk melihat seberapa cepat pelatihan dilakukan pada dataset Anda sendiri. Setelah Anda membuat model (dengan masalah seperti overfitting diselesaikan), prediksi adalah langkah lain.
Manu H

@ ManuH Saya tahu bahwa untuk implementasi saya menggunakannya terlalu lambat untuk kNN. Tapi saya hanya bisa menebak bahwa ini adalah masalah intrinsik dari algoritma, yang tidak dapat diselesaikan dalam domain masalah ini (misalnya dengan pengurangan dimensi berat). Inilah alasan mengapa saya meminta makalah: Saya ingin tahu apa yang orang lain telah coba.
Martin Thoma

Jawaban:


4

Bagian dari masalah dengan menjawab pertanyaan ini adalah sebenarnya ada dua pertanyaan. Pertama:

Apakah ada algoritma klasifikasi gambar yang bukan jaringan saraf?

Ya banyak. Tapi sekarang pertanyaan sebenarnya:

Apakah ada kertas yang mencoba pendekatan yang tidak menggunakan jaringan saraf di LSVRC?

Dalam pertanyaan Anda, Anda mengesampingkan metode seperti kNN dan SVM karena kecepatan. Bag of Words adalah salah satu metode yang digunakan untuk menyelesaikan masalah ini. MATLAB memiliki demonstrasi yang baik ( http://www.mathworks.com/help/vision/examples/image-category-classification-using-bag-of-features.html ). Tetapi BoW menggabungkan k-means clustering, sehingga mungkin tidak sesuai dengan kebutuhan Anda.

Ada beberapa metode klasifikasi gambar menarik lainnya seperti analisis tekstur. TA sedang diteliti sebagai cara untuk mengklasifikasikan kejahatan penyakit dalam gambar medis (seperti tumor). Berikut ini adalah makalah yang biasa direferensikan: http://www.ncbi.nlm.nih.gov/pmc/articles/PMC2701316/

Berikut ini ikhtisar klasifikasi gambar: http://www.tandfonline.com/doi/full/10.1080/01431160600746456


1

Anda dapat menggunakan algoritma apa pun yang dapat menangani dimensi data Anda, termasuk SVM dan K Tetangga Terdekat. Kinerja algoritma yang diimplementasikan terbaik hampir semuanya sama, terima untuk CNN. Alasan mengapa CNN digunakan adalah karena saat ini pemimpin berkaitan dengan akurasi, dan telah selama beberapa tahun.


Anda pada dasarnya mengulangi apa yang saya tulis dalam pertanyaan saya; ini bukan jawaban untuk pertanyaan saya
Martin Thoma

Berikut adalah salah satu kertas yang menggunakan varian SVM. robotics.stanford.edu/~koller/Papers/Gao+Koller:ICCV11.pdf
John Yetter

0

Ada banyak algoritma yang dapat digunakan untuk melakukan klasifikasi (banyak ke titik yang sulit untuk menyebutkan semuanya) Saya sarankan Anda untuk melihat http://dlib.net/ml_guide.svg ini.

Membuat keputusan algoritma mana yang digunakan adalah fungsi dari masalah yang sedang Anda tangani, terutama: 1. Jumlah kelas 2. Jumlah sampel 3. Variasi dalam kelas dan kesamaan antar kelas 4. Ketidakseimbangan data 5. Dimensi fitur Anda Dan banyak parameter lainnya

Secara umum, CNN sangat populer karena dua alasan: Mereka dapat menyebabkan kinerja tinggi dalam masalah yang sangat menantang dan mereka adalah solusi umum dalam konteks bahwa Anda perlu memahami arsitektur mereka strategi dan trik untuk melakukan pelatihan saja, setelah itu Anda tidak perlu mengubah apa pun, tidak ada parameter untuk bermain.


Silakan baca pertanyaan dengan huruf tebal di teks yang saya tulis.
Martin Thoma
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.