mAP ve IoU: Gıda Tanıma için Bilgisayarla Görme Ölçütlerine Derin Bir Bakış

Yapay zeka gıda tanıma ne kadar doğru? Önemli ölçütleri, mAP ve IoU'yu ele alıyoruz, bunların kalori takibi doğruluğunuz için ne anlama geldiğini açıklıyoruz ve modern mimarilerin gıda AI'sındaki en zor sorunla — tek bir tabaktaki örtüşen öğelerle — nasıl başa çıktığını gösteriyoruz.

Medically reviewed by Dr. Emily Torres, Registered Dietitian Nutritionist (RDN)

Bir beslenme uygulaması, yapay zekasının "bir fotoğraftan gıdanızı tanıyabileceğini" iddia ettiğinde, bu gerçekten ölçülebilir terimlerde ne anlama geliyor? Tanıma ne kadar doğru? Sistem, birbirine değen altı farklı öğeden oluşan bir tabakla nasıl başa çıkıyor? Ve bir gıda tanıma sistemini diğerleriyle nasıl karşılaştırabilirsiniz?

Bu soruların yanıtları, nesne tespiti modellerini değerlendirmek için bilgisayarla görme araştırma topluluğunun kullandığı iki ölçütte yatıyor: mAP (ortalama Ortalama Doğruluk) ve IoU (Kesişim Üzerinden Birleşim). Bu sayılar, bir gıda yapay zekasının gerçekten doğru olup olmadığını veya sadece bir demo sırasında etkileyici görünüp görünmediğini belirliyor.

IoU'yu Anlamak: Temel Ölçüt

Kesişim Üzerinden Birleşim, tahmin edilen bir sınırlayıcı kutunun veya segmentasyon maskesinin, bir insan annotatörü tarafından etiketlenen gıda öğesinin gerçek konum ve şekliyle ne kadar örtüştüğünü ölçer.

Hesaplama oldukça basittir:

IoU = Örtüşme Alanı / Birleşim Alanı

IoU değeri 1.0 ise, tahmin mükemmel bir şekilde gerçek konuma karşılık gelir. IoU değeri 0.0 ise, hiç örtüşme yok demektir. Pratikte, gıda tanımada "doğru" bir tespit için standart eşik, tahmin edilen ve gerçek gıda bölgesi arasında en az %50 örtüşme olması gerektiğini belirten 0.5 veya daha yüksek bir IoU'dur.

IoU'nun Beslenme Üzerindeki Önemi

IoU, porsiyon tahminini doğrudan etkiler. Eğer modelin sınırlayıcı kutusu, tabaktaki pirincin yalnızca %60'ını kapsıyorsa (sıkı segmentasyon için doğruluk eşiğinin altında bir IoU), porsiyon tahmini eksik kalır. Tersine, eğer sınırlayıcı kutu çok büyükse ve yanındaki köriyi de kapsıyorsa, pirincin kalori tahmini köri'nin besin profili ile şişirilmiş olur.

Tek bir gıda öğesinin çerçevede merkezde olduğu basit tabaklar için IoU'yu optimize etmek görece kolaydır. Ancak, karmaşık çoklu öğe tabaklarıyla bu zorluk dramatik bir şekilde artar.

mAP'yi Anlamak: Sistem Düzeyinde Ölçüt

Ortalama Ortalama Doğruluk, tüm gıda kategorileri ve güven seviyeleri üzerinden tespit doğruluğunu tek bir skora toplar. Bu, şu soruyu yanıtlar: Bu modelin tanıyabildiği tüm gıda türleri arasında, ne kadar güvenilir bir şekilde tespit ve doğru sınıflandırma yapıyor?

Hesaplama şunları içerir:

  1. Doğruluk: Modelin yaptığı tüm tespitlerden kaçı doğrudur?
  2. Hatırlama: Gerçek gıda öğeleri arasında modelin bulduğu kaç tanesi var?
  3. Ortalama Doğruluk (AP): Tek bir gıda kategorisi için doğruluk-hatırlama eğrisinin altındaki alan
  4. mAP: Tüm gıda kategorileri üzerindeki AP değerlerinin ortalaması

mAP@0.5 değeri 0.85 olan bir model, tüm kategorilerde IoU 0.5 eşiği altında gıda öğelerinin %85'ini doğru bir şekilde tespit ve sınıflandırır. mAP@0.5:0.95, daha sıkı segmentasyon için ceza uygulayarak 0.5 ile 0.95 arasındaki IoU eşiklerinde performansı ortalayan daha katı bir ölçüttür.

Demo ile Gerçeklik Arasındaki Fark

Çoğu gıda AI demosu, tek öğeli, iyi aydınlatılmış, üstten çekilmiş fotoğrafları sergiler: bir kasede ramen, bir tabakta suşi, bir salata. Bu koşullarda, modern modeller mAP@0.5 puanları 0.90'ın üzerinde elde eder. Ancak bu sayı, gerçek dünya koşullarında önemli ölçüde düşer.

Pratikte mAP'yi düşüren faktörler:

  • Birbirine örtüşen birden fazla öğe: Pirinç, dal, sebze ve roti içeren bir tabak
  • Kısmi örtüşme: Bir gıda öğesinin diğerinin arkasında kısmen gizlenmesi
  • Değişken aydınlatma: Karanlık bir restorandaki aydınlatma ile parlak bir mutfak aydınlatması
  • Standart dışı açılar: Fotoğrafların doğrudan üstten değil, yan taraftan çekilmesi
  • Görsel benzerlik: Kahverengi pirinç ve kinoa veya farklı türde dal gibi neredeyse aynı görünen öğeler

Gerçek dünya gıda tanıma mAP'si genellikle kontrol edilen ölçüt performansının 10 ila 20 puan altında kalır.

Çoklu Öğeli Tabak Sorunu

Gıda tanımanın tanımlayıcı zorluğu, tek bir gıda öğesini izole bir şekilde tanımak değil, bir tabakta birbirine değen, örtüşen ve görsel olarak birbirine karışan beş veya altı farklı öğeyi tanımaktır.

Tipik bir Hint thalisini düşünün: pirinç, iki köri, dal, raita, papad ve turşu, hepsi tek bir tabakta birbirine değiyor. Veya pirinç, fasulye, guacamole, salsa, ekşi krema ve bir tortilla içeren bir Meksika tabağı. Her öğenin ayrı ayrı tanımlanması ve porsiyonunun bağımsız olarak tahmin edilmesi gerekiyor.

Anlamsal Segmentasyon vs. Instance Segmentasyon

Bu sorunu çözmek için iki ana yaklaşım vardır ve bu ayrım önemlidir.

Anlamsal segmentasyon, görüntüdeki her pikseli bir gıda kategorisine atar. "Pirinç" olan tüm pikseller pirinç olarak etiketlenir, "köri" olan tüm pikseller köri olarak etiketlenir. Bu, net bir şekilde ayrılmış öğeler için iyi çalışır, ancak aynı kategoriden iki örnek mevcut olduğunda (aynı tabakta iki farklı köri) veya sınırlar belirsiz olduğunda başarısız olur.

Instance segmentasyon, her bir gıda öğesini ayrı bir varlık olarak tanımlar, aynı kategoriye ait iki öğe bile olsa. Bu, doğru çoklu öğe tabak analizi için gereken yaklaşımdır çünkü sistemin her öğenin porsiyon boyutunu bağımsız olarak tahmin etmesine olanak tanır.

Mask R-CNN ve onun halefleri gibi modern instance segmentasyon mimarileri, her tespit edilen gıda öğesi için hem bir sınıflandırma etiketi hem de piksel düzeyinde bir maske üretir. Bu maskelerin kalitesi, porsiyon tahmininin doğruluğunu doğrudan belirler.

Ölçüt Performansı: Nerede Duruyoruz

Gıda tanıma alanı, model performansını değerlendirmek için birkaç standart ölçüt kullanır. İşte mevcut en iyi durumun performansı.

Food-101

101 gıda kategorisini içeren, her biri 1.000 görüntüden oluşan orijinal büyük ölçekli gıda ölçütü. Mevcut en iyi modeller, Food-101'de %95'in üzerinde sınıflandırma doğruluğu elde ediyor. Ancak, Food-101 bir sınıflandırma ölçütüdür (her görüntüde bir gıda), bu nedenle çoklu öğe tabak senaryolarını test etmez.

UECFOOD-256

Sınırlayıcı kutu anotasyonları ile 256 kategori içeren bir veri seti, tespit değerlendirmesine olanak tanır. En iyi modeller, bu veri setinde yaklaşık 0.78 ile 0.82 arasında mAP@0.5 değerleri elde eder, bu da çoklu kategori tespitinin artan zorluğunu yansıtır.

Nutrition5k

Gıda görüntülerini laboratuvar analizi ile ölçülen gerçek besin verileri ile eşleştiren daha yeni bir ölçüt. Bu veri seti, yalnızca "model gıdayı doğru tanıdı mı?" değil, "doğru kalori tahmini üretti mi?" sorusunu yanıtlamaya olanak tanır. Nutrition5k'daki performans, tespit hatalarının besin doğruluğu üzerindeki birikimli etkisini ortaya koyar.

ISIA Food-500

Farklı küresel mutfaklardan 500 gıda kategorisi içeren büyük ölçekli bir veri seti. Bu, gıda tanımada kültürel önyargı sorununu ortaya çıkarır: Öncelikle Batı veri setleri üzerinde eğitilen modeller, Asya, Afrika ve Güney Amerika gıda kategorilerinde önemli doğruluk düşüşleri gösterir.

Mimari Evrimi: CNN'den Vision Transformer'a

Gıda tanıma için kullanılan model mimarileri önemli ölçüde evrim geçirdi ve her nesil çoklu öğe tabaklarını işleme yeteneğini geliştirdi.

YOLO Ailesi (YOLOv5'ten YOLOv10'a)

YOLO (You Only Look Once) model ailesi hızı önceliklendirir. YOLOv8 ve sonraki sürümler, gıda tespit ölçütlerinde 0.75 ile 0.82 arasında mAP@0.5 değerleri elde ederken, modern donanımda 50 milisaniye içinde çıkarım yapar. Bu, kullanıcıların fotoğraf çektikten 1 ila 2 saniye içinde sonuç beklediği gerçek zamanlı mobil uygulamalar için uygundur.

Ancak, YOLO modelleri, porsiyon tahmini için kritik olan kesin sınır belirlemesi gerektiren sıkı örtüşen öğelerle başa çıkmada zorluk yaşayabilir.

Vision Transformers (ViT, DINOv2)

Transformer tabanlı mimariler, görüntüleri parça dizileri olarak işler ve küresel bağlamı yakalamak için kendine dikkat mekanizmaları kullanır. Gıda tanıma için bu, modelin belirsiz öğelerin tespitini iyileştirmek için bağlamsal ipuçlarını kullanabileceği anlamına gelir; örneğin, pirinç varsa, köri yakınlarda olma olasılığı daha yüksektir.

Vision Transformers, karmaşık çoklu öğe tabaklarında CNN tabanlı yaklaşımlara göre daha yüksek mAP değerleri elde eder, özellikle belirsiz sınırları olan öğeler için. Bunun maliyeti daha yüksek hesaplama gereksinimleri ve daha yavaş çıkarım süresidir.

Hibrit Yaklaşımlar

Mevcut en iyi performans gösteren sistemler, CNN tabanlı özellik çıkarımını transformer dikkat mekanizmaları ile birleştirir. Bu hibrit mimariler, çoklu öğe gıda tespitinde mAP@0.5 değerini 0.85'in üzerinde tutarken, mobil uygulamalar için pratik çıkarım hızlarını korur.

Nutrola'nın tanıma hattı, tespit doğruluğunu kullanıcıların beklediği 2 saniye altındaki yanıt süresi ile dengeleyen bir hibrit mimari kullanır.

Tespitten Beslenmeye: Doğruluk Hattı

Bir gıda tanıma sisteminin nihai çıktısı bir sınırlayıcı kutu veya segmentasyon maskesi değildir. Bu, bir kalori ve makro tahminidir. Bu tahminin doğruluğu, her birinin kendi hata oranına sahip adım adım bir süreçten geçer.

  1. Tespit ve sınıflandırma: Gıda öğesi doğru bir şekilde tanımlandı mı? (mAP ile ölçülür)
  2. Segmentasyon kalitesi: Piksel maskesi, doğru porsiyon tahmini için yeterince sıkı mı? (IoU ile ölçülür)
  3. Hacim tahmini: Maske verildiğinde, gerçekten ne kadar gıda var? (gerçek ağırlıklarla ölçülür)
  4. Besin eşleştirme: Tanımlanan gıda ve tahmin edilen hacim verildiğinde, kalori ve makrolar nedir? (laboratuvar onaylı besin verileri ile ölçülür)

Her aşamadaki hatalar birikir. Bir model, gıda öğesini %90 doğrulukla tanımlıyorsa ve porsiyon tahminleri %15 doğruluk payı ile doğruysa, kalori tahminleri, her bir bireysel ölçütün önerdiğinden daha geniş bir hata oranı ile sonuçlanır.

Bu nedenle, yalnızca ölçüt metrikleri tam hikayeyi anlatmaz. Besin veritabanı ve hacim tahmin bileşenleri de eşit derecede önemlidir ve bunlar, amaca yönelik beslenme sistemlerinin genel gıda tanıma modellerinden nasıl ayrıldığını gösterir.

Bu Ölçütlerin Takibiniz İçin Anlamı

Son kullanıcı için, bu ölçütlerin pratik sonuçları oldukça açıktır.

Tek öğeli öğünler (bir kase yulaf ezmesi, bir protein shake, bir meyve parçası) çoğu modern gıda AI sistemi tarafından yüksek doğrulukla tanınır. Hata payı genellikle gerçek kalori içeriğinin %5 ila %10'u arasındadır.

Çoklu öğe tabakları daha zordur. İyi ayrılmış öğeler için %10 ila %20, örtüşen veya karışık öğeler için %15 ila %25 doğruluk bekleyin. Bu noktada çok modlu girdi (ses veya metin detayları eklemek) sonuçları önemli ölçüde iyileştirir.

Karmaşık karışık yemekler (güveçler, karnıyarıklar, köri) en büyük zorluk olmaya devam etmektedir. Burada sistem, bileşen düzeyinde analiz yerine yemek düzeyinde tanıma ve veritabanı sorgulamasına büyük ölçüde dayanır. Doğrulanmış bir veritabanı, yemek özel girişleri ile tespit doğruluğundan daha önemli hale gelir.

İyileşme eğilimi açıktır: Her model mimarisi nesli, kontrol edilen ölçüt performansı ile gerçek dünya doğruluğu arasındaki farkı kapatmaktadır. Ancak, günümüzde en anlamlı doğruluk kazanımları yalnızca daha iyi tespit modellerinden değil, aynı zamanda görsel AI'yi doğrulanmış besin verileri ve çok modlu kullanıcı girdisi ile birleştirmekten gelmektedir.

Sıkça Sorulan Sorular

Gıda tanıma AI'sında mAP nedir?

Ortalama Ortalama Doğruluk (mAP), bir nesne tespit modelinin görüntülerdeki nesneleri ne kadar doğru bir şekilde tanımlayıp konumlandırdığını değerlendirmek için standart bir ölçüttür. Gıda tanımada mAP, AI'nın eğitim aldığı tüm kategoriler arasında farklı gıda öğelerini ne kadar güvenilir bir şekilde tespit edip doğru sınıflandırdığını ölçer. Daha yüksek bir mAP, daha iyi genel tespit performansı anlamına gelir. Mevcut en iyi gıda tanıma modelleri, standart ölçütlerde mAP@0.5 puanları arasında 0.78 ile 0.88 arasında değerler elde eder.

Fotoğraflardan AI kalori takibi ne kadar doğrudur?

Doğruluk, öğün karmaşıklığına göre önemli ölçüde değişir. Tek öğeli yemeklerde, net bir şekilde görünen gıda için modern AI, kalori tahminlerini gerçek değerlerin %5 ila %10'u içinde elde eder. İyi ayrılmış bileşenlere sahip çoklu öğe tabaklarında, doğruluk %10 ila %20 arasına düşer. Karmaşık karışık yemekler ve gizli bileşenler (örneğin, pişirme yağları) en büyük zorluğu oluşturur; yalnızca fotoğraf analizine dayanarak %20 ila %30 hata payı olabilir. Fotoğraf tanımayı, hazırlama yöntemleri ve gizli bileşenler hakkında kullanıcıdan sağlanan bağlamla birleştiren sistemler, en iyi gerçek dünya doğruluğunu elde eder.

Gıda AI'sında anlamsal ve instance segmentasyon arasındaki fark nedir?

Anlamsal segmentasyon, bir görüntüdeki her pikseli bir gıda kategorisi ile etiketler ancak aynı kategorideki ayrı örnekleri ayırt etmez. Instance segmentasyon, her bir gıda öğesini, aynı kategoriye ait iki öğe bile olsa, ayrı bir varlık olarak tanımlar. Kalori takibi için instance segmentasyon, her öğenin porsiyon boyutlarını bağımsız olarak tahmin etmesine olanak tanıdığı için gereklidir. Instance segmentasyon olmadan, iki farklı köri bulunan bir tabak tek bir köri bölgesi olarak değerlendirilir ve bu da yanlış bir besin tahmini üretir.

Gıda AI ölçütleri neden gerçek dünya performansını yansıtmaz?

Food-101 ve UECFOOD-256 gibi standart ölçütler, genellikle iyi aydınlatılmış, tek öğeli, üstten çekilmiş fotoğrafları içeren küratörlü görüntüler kullanır. Gerçek dünya gıda fotoğrafları, değişken aydınlatmada, tutarsız açılarda, birden fazla örtüşen öğe ile ve genellikle kısmi örtüşme ile çekilir. Ayrıca, ölçüt veri setleri çoğunlukla Batı merkezli olduğundan, bu veri setlerinde test edilen modellerin, küresel olarak çeşitli mutfaklara genelleştirilemeyen şişirilmiş doğruluk gösterme olasılığı yüksektir. Gerçek dünya mAP'si, bu dağılım farklılıkları nedeniyle genellikle ölçüt performansının 10 ila 20 puan altında kalır.

Gıda tanıma için en iyi model mimarisi hangisidir?

Mevcut en iyi sonuçlar, konvolüsyonel sinir ağı (CNN) özellik çıkarımını transformer tabanlı dikkat mekanizmaları ile birleştiren hibrit mimarilerden gelmektedir. Saf CNN modelleri, YOLO ailesi gibi, mobil uygulamalar için uygun hızlı çıkarım sunarken, Vision Transformers karmaşık çoklu öğe tabaklarında daha iyi doğruluk sağlar. Hibrit yaklaşımlar, çoklu öğe gıda tespitinde mAP@0.5 değerini 0.85'in üzerinde tutarken, pratik mobil kullanım için gereken 2 saniye altındaki yanıt sürelerini korur. Mimari seçimi ayrıca dağıtım bağlamına bağlıdır: mobil uygulamalar daha hafif modellere, bulut tabanlı işlem ise daha büyük transformer mimarilerine yönelir.

Beslenme takibinizi dönüştürmeye hazır mısınız?

Nutrola ile sağlık yolculuklarını dönüştürmüş binlerce kişiye katılın!