YOLO benar-benar mengubah permainan dalam hal deteksi objek! Dulu, kami harus menggunakan metode jendela geser pada skala berbeda dan menerapkan pengklasifikasi gambar. Metodenya tidak tepat dan sangat lambat, dan tidak mungkin dijalankan secara real-time di video, misalnya. YOLO (You Only Look Once) mengubah segalanya dengan memprediksi semuanya sekaligus, sehingga memungkinkan untuk menjalankannya secara real-time dengan ukuran yang cukup kecil untuk dimasukkan ke dalam aplikasi seluler.

Model YOLO pertama keluar pada tahun 2015, dan YOLO v9 keluar minggu lalu. Ada banyak perbaikan selama bertahun-tahun, namun ada fitur umum yang tetap ada. Idenya adalah untuk mengelompokkan gambar ke dalam grid dan memprediksi keberadaan kotak pembatas untuk setiap kelas yang kita pertimbangkan. Saat memberi label pada data, sel kisi diberi label berisi objek hanya jika bagian tengah kotak ada di dalamnya. Jika sel kisi berisi pusat, "objektivitas" diberi label 1 dan 0 sebaliknya. Model akan mencoba memprediksi probabilitas bahwa sel grid mempunyai pusat. Jika berisi satu pusat atau beberapa pusat, setiap kelas yang terkait dengan pusat tersebut akan diberi label 1. Jika kita memiliki 2 kelas (misalnya kucing dan anjing), vektor labelnya adalah [1, 1, 0] jika sel kisi berisi kucing, [1, 1, 1] jika sel kisi berisi kucing dan anjing , dan [0, 0, 0] jika tidak berisi apa pun. Selain itu, vektor label juga menampung koordinat (x, y) dari pusat kotak untuk setiap kelas dan ukurannya (w, h): [x, y, w, h, x', y', w' , jam', 1, 1, 0]. Target penuh untuk diprediksi adalah kumpulan vektor label untuk setiap sel grid. Target penuh mencakup beberapa kotak sebelumnya, sehingga memperluas dimensi target. Priora tersebut adalah kotak jangkar yang memandu model dengan sekumpulan bentuk kotak khas yang terlihat pada data. Misalnya, V2 menggunakan 5 prior berbeda dengan grid 13 x 13, sehingga targetnya menjadi tensor dengan parameter 13 x 13 x 11 x 5 = 9295.

Modelnya adalah jaringan konvolusional sederhana dengan keluaran lapisan konv terakhir yang memiliki dimensi target. Artinya, untuk setiap sel, model akan memprediksi keberadaan suatu objek, probabilitas setiap kelas, serta dimensi dan posisi kotak pembatas yang dihasilkan untuk setiap kelas sebelumnya.

Karena model kemungkinan besar akan memprediksi beberapa kotak pembatas untuk objek yang sama, maka perlu untuk memilih yang terbaik. Idenya adalah memilih kotak dengan skor kepercayaan tertinggi, mengukur area perpotongannya di atas area gabungan (IOU) dengan semua kotak lain yang tumpang tindih di kelas yang sama, dan menghapus semua kotak yang berada di atas ambang batas tertentu. Hal ini disebut penekanan non-maksimum. Hal ini memastikan bahwa kotak-kotak dengan tumpang tindih tinggi digabungkan menjadi satu.

Berikut adalah makalah untuk YOLO v1: https://arxiv.org/pdf/1506.02640.pdf, dan ini untuk YOLO v9: https://arxiv.org/pdf/2402.13616.pdf.