Penghematan biaya pelabelan gambar sebesar 96%: sebuah studi rekayasa praktis tentang bagaimana fungsi inti diwujudkan dengan mengganti pekerjaan repetitif manusia menjadi pipeline perangkat lunak, bahkan dalam kondisi dengan anggaran dan waktu yang terbatas.
Ringkasan inti
• Identifikasi masalah: tidak ada model yang sudah ada yang cocok untuk fungsi pengenalan dan pendaftaran otomatis boneka karakter terkenal, dan pelabelan manual oleh manusia memiliki batasan yang jelas dari sisi biaya, kecepatan, dan skalabilitas.
• Pendekatan: bukan “apakah akan menambah lebih banyak orang”, tetapi memecah proses penilaian manusia menjadi sistem dan menjadikannya pipeline.
Perancangan pipeline otomatisasi 4 tahap
1. Pemfilteran CLIP – menghapus sejumlah besar gambar yang tidak bermakna untuk mengurangi biaya LLM
2. Deteksi YOLO – memangkas hanya objek utama untuk memperkecil cakupan analisis
3. Pelabelan LVM – menerapkan VLM berkinerja tinggi hanya pada data yang telah dibersihkan
4. Verifikasi LVM – verifikasi kondisional berbasis tingkat kepercayaan untuk semakin mengurangi jumlah pemanggilan
Hasil:
• Biaya pelabelan manusia sekitar 2,16 juta won → 90 ribu won
• Penghematan biaya sekitar 95,7%, waktu kerja dari beberapa hari → beberapa jam
• Nilai esensial: bukan sekadar penghematan sekali pakai, tetapi memperoleh sistem yang dapat digunakan kembali
Keterbatasan modal dapat diatasi dengan teknologi, dan ini membuktikan bahwa perangkat lunak adalah alat yang dapat mengubah masalah biaya menjadi masalah struktur
9 komentar
Terima kasih sudah membagikan konten yang bagus.
Oho, saya membacanya dengan sangat baik. Anda mengatakan bahwa keputusan apakah akan melakukan verifikasi tambahan didasarkan pada tingkat kepercayaan, jadi saya juga penasaran bagaimana nilai kepercayaan ini diukur.
Sebagai referensi, model gpt-4o-mini saat menerima input gambar memiliki biaya token input yang terlalu mahal, jadi saya sarankan untuk mempertimbangkan model ringan lainnya juga!
Halo winterjung, terima kasih telah tertarik pada pekerjaan saya. Untuk tingkat kepercayaan, saya menggunakan nilai confidence yang dikembalikan langsung oleh VLM (GPT-4o). Seperti yang Anda sampaikan, ada keterbatasan karena dasar perhitungan confidence dari GPT-4o tidak jelas dan tidak dapat direproduksi. Namun, dari sudut pandang praktis, dengan asumsi bahwa confidence yang dikembalikan VLM cukup akurat, saya mengimplementasikannya agar pada tahap verifikasi terakhir (Verifier), keputusan apakah perlu diverifikasi ditentukan berdasarkan threshold.
Saya sama sekali tidak tahu bahwa token input gambar pada model gpt-4o-mini ternyata terlalu mahal. Terima kasih sudah memberi tahu saya. Saya langsung menerapkannya ke kode, hehe
Saya benar-benar penasaran kenapa harga 4o mini begitu; setahu saya 4o biasa malah lebih murah wkwkwk
Ini tulisan yang menyelesaikan masalah dengan baik menggunakan VLM, menarik untuk dibaca.
Ada satu hal yang saya penasaran setelah membaca tulisannya,
Saya penasaran bagaimana proses ini diterapkan.
Saat membaca tulisannya, saya sempat berpikir bahwa performa VLM mungkin lebih baik daripada YOLO, jadi kalau justru dilakukan crop, bukankah ada kemungkinan model YOLO salah menilai lalu informasi penting hilang bahkan sebelum diteruskan ke VLM?
Saya juga penasaran dari masalah apa ide untuk melakukan crop ini muncul, dan bagaimana akurasinya divalidasi sebelum diterapkan.
Halo, terima kasih sudah membaca tulisan ini dengan antusias!
Saya setuju dengan poin yang Anda sampaikan. Benar bahwa VLM memiliki performa yang lebih baik daripada YOLO, sehingga kesalahan prediksi YOLO dapat menyebabkan hilangnya informasi penting. Namun, kami tetap memasukkan tahap crop karena alasan-alasan berikut.
Pertama, masalah biaya. Jika seluruh gambar langsung digunakan pada VLM, biaya akan meningkat tajam karena pemrosesan gambar beresolusi tinggi. Ini adalah alasan terbesar kami memperkenalkan proses crop.
Kedua, masalah kecepatan pemrosesan.
Untuk memproses dataset berukuran besar dalam waktu yang realistis, peningkatan kecepatan seperti ini sangatlah penting.
Ketiga, peningkatan akurasi.
Crop justru meningkatkan akurasi penilaian VLM. Dalam gambar penuh, sering kali ada latar belakang yang kompleks, banyak karakter, teks, dan ornamen lain sekaligus, sehingga VLM bisa bingung menentukan objek mana yang harus dinilai. Misalnya, bisa muncul situasi yang tidak jelas apakah itu karakter pada poster di latar belakang, boneka utama, atau karakter lain di sampingnya. Sebaliknya, dengan crop, hanya objek target yang dipisahkan dengan jelas, sehingga VLM dapat fokus menilai objek tersebut saja.
Tentu saja, masalah false negative atau false positive dari YOLO tidak sepenuhnya hilang. Namun, kami mengurangi dampaknya dengan menetapkan confidence threshold YOLO ke 0.5 untuk meningkatkan recall, lalu menyaring false positive pada tahap filtering CLIP dan verifikasi oleh Verifier. Selain itu, karena kami memproses data dalam skala besar, meskipun ada sebagian objek yang terlewat, secara statistik kami tetap bisa memperoleh data berkualitas tinggi dalam jumlah yang memadai.
Pada akhirnya, tujuan kami adalah membangun pipeline yang praktis dengan menemukan titik keseimbangan antara biaya, kecepatan, dan akurasi, dan tahap crop memberikan efek positif pada ketiga aspek tersebut.
Terima kasih atas jawabannya.
Saya juga sempat memikirkan masalah biaya, dan tampaknya memang biayanya sangat berbeda tergantung pada resolusi gambar input. Selain itu, saya sama sekali tidak terpikir soal hubungan antara ukuran gambar input dan kecepatan pemrosesan, jadi ini menarik. Ternyata kalau di-crop, kecepatan pemrosesannya juga jadi lebih cepat.
Dan peningkatan akurasinya benar-benar mengejutkan!
Meskipun performa VLM sudah jauh membaik, apakah sampai saat ini tetap belum bisa melampaui performa model YOLO yang dilatih untuk satu tujuan tertentu?
Terima kasih sudah menuliskan know-how yang Anda peroleh dari pengalaman nyata di lapangan.
Kalau saya menghadapi masalah serupa, saya pasti akan menjadikan metode yang Anda gunakan sebagai referensi.
Sepertinya ini bukan sekadar diselesaikan dengan beralih ke masalah struktural, melainkan seperti membuat model baru.
Terima kasih atas masukannya yang bagus!
Sepertinya ungkapan "beralih ke masalah struktural" agak terlalu abstrak.
Yang ingin saya sampaikan dalam tulisan itu adalah
Before: "labeling = melibatkan manusia = biaya berbanding lurus"
After: "labeling = pipeline = setelah pembangunan awal, biaya variabel diminimalkan"
Artinya, masalah biaya satu kali diubah menjadi masalah pembangunan sistem.
Ungkapan "membuat model kerja baru" juga tepat!
Lebih tepatnya, ini bisa dikatakan sebagai "menggantikan tenaga kerja manusia dengan software pipeline" hehe