İçeriğe geç

10.3 · Seviye 2 · Sinir Ağları ve Derin Öğrenme

Nesne tespiti ve bölütleme

ne var, nerede, hangi pikseller

Yapay Zekâ Akademisi — M10, Makine Görüşü · 2.569 kelime · 3 saha durumu · ≈ 12 dk okuma · 17 dk dinleme

Saha durumlarındaki kişiler ve kurumlar kurgusaldır; kaynaklar gerçektir. Belirli ürün ve modeller hakkındaki gözlemler yazıldıkları tarihte geçerlidir ve «Tarihli gözlem» etiketiyle yılı belirtilerek verilir. Yapay zekâ çıktıları doğrulanmadan karar dayanağı yapılmaz; dersler hukuki, tıbbi ya da mali danışmanlığın yerini tutmaz.

Açılış

Halil Bey fotoğrafı ekranda büyüttü. Arkadan çarpılmış beyaz bir otomobil: tamponun sağ köşesi içeri göçmüş, bagaj kapağının alt kenarında boydan boya bir çizik. Fotoğrafla hasar projesinin yeni sürümü artık yalnız "hasar var" demiyordu; fotoğrafın üstüne iki kırmızı dikdörtgen çiziyordu. Birinin köşesinde "tampon, hasar, 0,91", ötekinde "bagaj kapağı, hasar, 0,62" yazıyordu.

Melis dikdörtgenlere tek tek baktı. Tampondaki göçüğü içine alıyordu ama plakayı ve asfaltın bir parçasını da. Bagaj kapağındaki ise çiziğin yalnız sol yarısını kapsıyordu.

Halil Bey yirmi yıldır kaza yerine giden eksperlerdendi. "Tampon değişir, bagaj kapağına boya yeter," dedi. "Boyanın parası çiziğin boyundan çıkar. Bu dikdörtgen bana çiziğin kaç santim olduğunu söylüyor mu?"

Elif'in masasında firmanın sunumu duruyordu. Son sayfada tek cümle vardı: sistem hasarların yüzde seksen yedisini doğru buluyordu. Kenan Bey o cümlenin altını çizip Elif'e iletmiş, kenarına da bir soru yazmıştı: "Doğru bulmak ne demek?"

Elif ekrana döndü. Bagaj kapağındaki dikdörtgen çiziğin yarısını görmüştü; firmanın sayımında bu bir doğru muydu, bir yanlış mı? Tampondakinin yarısı plakaydı; ondan bir alan hesabı çıkar mıydı?

Tek fikir

Nesne tespiti bir görüntüde ne olduğunu ve nerede durduğunu dikdörtgenlerle söyler; bir dikdörtgenin doğru sayılması, gerçeğiyle örtüşmesinin seçilmiş bir sınırı geçmesine bağlıdır. Hangi piksellerin hasarlı olduğu sorusu ise bölütlemenin işidir.

Nasıl çalışır

Görüntü sınıflandırma bir fotoğrafa etiket verir: bu fotoğrafta hasar var. Halil Bey'in sorusu bundan iki adım ileride. Önce nerede, sonra ne kadar.

Tespit yapan bir ağın gövdesi Ders 10.1'deki evrişim katmanlarıdır. Son öznitelik haritasının her hücresi fotoğrafın bir bölgesine bakar. Ağ her hücre için birkaç aday kutu önerir ve her aday için iki şey hesaplar: sınıf puanları ve adayın dört kenarının ne kadar kaydırılacağı. Eğitimde bu kaydırma, eksperin çizdiği kutuya ne kadar uzak düştüğüyle cezalandırılır; Ders 4.5'te kurduğumuz kayıp fonksiyonu burada konum için de vardır. Sonuçta aynı göçüğün çevresinde birbirine çok benzeyen onlarca aday birikir. Bir eleme adımı en yüksek puanlı adayı tutar, onunla fazla örtüşenleri siler. Bu adımın adı en büyük olmayanı bastırmadır (non-maximum suppression).

Kenan Bey'in sorusu burada başlar. Ağın çizdiği kutu eksperin çizdiğiyle hiçbir zaman piksel piksel aynı olmaz. Ne kadar örtüşürse doğru sayılacak?

Sayılarla bakalım. Halil Bey çiziğin çevresine bir kutu çiziyor: sol kenarı yüzüncü pikselde, sağ kenarı üç yüzüncüde, üstü ellinci, altı yüz ellinci pikselde. Genişlik iki yüz, yükseklik yüz, alan yirmi bin. Ağın kutusu aynı boyda ama elli piksel sağda, yirmi piksel aşağıda duruyor. Ortak bölge yatayda yüz ellinciden üç yüzüncü piksele, yüz elli piksel; dikeyde yetmişinciden yüz ellinciye, seksen piksel. Ortak alan on iki bin. Birleşim yirmi bin artı yirmi bin eksi on iki bin, yirmi sekiz bin. Oran on iki bölü yirmi sekiz, yaklaşık sıfır virgül kırk üç.

Gözle bakınca ağın kutusu çiziğin büyük bölümünü kapsıyor. Yine de yaygın ölçütle bu bir isabet değildir. Daha şaşırtıcı bir durum: ağ çiziği tamamen içine alan ama her yönde taşan bir kutu çizsin, sol kenarı ellinci pikselde, sağı üç yüz ellincide, üstü yirmi beşte, altı yüz yetmiş beşte. Alanı kırk beş bin. Ortak alan eksperin kutusunun tamamı, yirmi bin; birleşim kırk beş bin; oran yaklaşık sıfır virgül kırk dört. Hasarın hepsini kapsamak yetmiyor; fazlası da ceza alıyor.

Eşleşme kurulunca Ders 7.3'te tanımladığımız kesinlik ve duyarlılık tespite de taşınır. Bir gerçek kutuyla eşleşen tespit doğru pozitiftir. Hiçbir gerçek kutuyla yeterince örtüşmeyen tespit yanlış pozitiftir; aynı göçüğe ikinci kez verilen kutu da bu sınıfa girer. Hiçbir tespitin eşleşmediği gerçek kutu yanlış negatiftir. Yarışmalar bu sayıları, güven puanına göre sıralanmış tespitler boyunca kesinlik ile duyarlılığın çizdiği eğrinin altında kalan alanla özetler; buna ortalama kesinlik (average precision) denir. Firmanın "yüzde seksen yedi"si bu sayılardan hangisi, hangi örtüşme sınırıyla? Sunum söylemiyordu.

Halil Bey'in ikinci sorusu, çiziğin boyu, kutuyla cevaplanamaz. Bagaj kapağını çapraz kesen ince bir çizik düşünelim. Onu içine alan kutu kapağın neredeyse tamamıdır. Kutuyu onda on karelik bir ızgaraya bölersek çizik köşegen üzerindeki on kareyi kaplar; kutu yüz kare, çizik on. Alanı kutudan okuyan biri hasarı on kat büyük bulur.

Bölütlemede de kesişim bölü birleşim kullanılır, kutu yerine piksel kümeleriyle. Bir sınıf için ortak pikseller, doğru pozitifler; birleşim, doğru pozitiflere yanlış pozitiflerin ve yanlış negatiflerin eklenmesidir. Aynı yarışmanın düzenleyicileri, iki bin sekiz turu için bölütlemeyi bu oranla değerlendirmeye karar verdi. Önceki ölçüt yalnız gerçek etiketi o sınıf olan piksellerin ne kadarının doğru bulunduğuna bakıyordu.

Anlamsal bölütleme bir şeyi bilmez: iki komşu çizik birbirine değiyorsa haritada tek bir lekedir. Bir fotoğrafta kaç ayrı hasar olduğu sorusu, sınıfın yanında nesnenin kimliğini de ister.

Piksel sınırı pahalıdır. Bir kutu dört tıklamayla çizilir; bir bölütleme maskesi, nesnenin çevresini izleyen bir çokgen ya da piksel piksel boyamadır.

Sahada

Nerede yanılır

Kesişim bölü birleşim ölçeğe karşı acımasızdır. Onda on piksellik bir kutu iki piksel kayarsa ortak alan seksen, birleşim yüz yirmi olur; oran yaklaşık sıfır virgül altmış yedi, hâlâ isabet. Dörde dört piksellik bir kutu aynı iki piksel kayarsa ortak alan sekiz, birleşim yirmi dört; oran sıfır virgül otuz üç, ıska. Kırka kırk piksellik bir kutuda aynı kayma oranı yaklaşık sıfır virgül doksana indirir ama ıskaya düşürmez. Aynı ağ, aynı hatayla, küçük çiziklerde başarısız, büyük göçüklerde başarılı görünür. Firmanın tek sayısı küçük ve büyük hasarları bir arada ortalıyorsa, küçük hasarlardaki zayıflık ortalamanın içinde kaybolur.

Eşiğin kendisi de bir seçimdir. Yüzde elli, kutusu tartışmalı nesneler için konmuş gevşek bir sınırdır; Everingham ve arkadaşları da katılımcıların sınırı önceden bildiğini ve yöntemlerini o sınıra göre ayarlayabildiğini not eder. Bir yöntemin yüzde ellideki üstünlüğü, sınır yüzde yetmiş beşe çıkınca korunmayabilir. İki firmanın sayısı ancak aynı sınırla, aynı fotoğraflarda, aynı ortalama kesinlik tanımıyla karşılaştırılabilir.

Gerçek etiketin kendisi de tartışmalıdır. İnce bir çiziği bir eksper tek piksel kalınlığında, öteki iki piksel kalınlığında boyayabilir. Bu iki maskenin birbiriyle oranı da yüzde elli civarına iner; ağın puanı, hangi eksperin maskesine göre ölçüldüğüne bağlı kalır. Ayrıca değerlendirmenin dışında tutulan bölgeler sonucu sessizce iyileştirir: zor diye işaretlenip çıkarılan nesneleri ağ kaçırsa bile ceza yoktur.

Son olarak, aynı ağ farklı veride çok farklı puan alır. Ronneberger, Fischer ve Brox'un hücre bölütleme ağı iki ayrı mikroskop veri setinde ölçüldü.

Uygulama

Kareli kâğıtla iki kutunun ve iki maskenin örtüşmesini ölçeceksin.

  1. Kâğıda onda on karelik bir ızgara çiz. Sütunları soldan, satırları yukarıdan bir ile on arasında numarala.
  2. Eksper kutusunu çiz: üçüncü sütundan sekizinci sütuna, üçüncü satırdan altıncı satıra. Altı kare genişlik, dört kare yükseklik, yirmi dört kare.
  3. Ağın birinci kutusunu başka renkle çiz: beşinci sütundan onuncuya, dördüncü satırdan yedinciye. Ortak kareleri say, iki kutunun birlikte kapladığı kareleri say, ortak sayıyı toplam sayıya böl.
  4. Ağın ikinci kutusunu çiz: dördüncü sütundan dokuzuncuya, üçüncü satırdan altıncıya. Aynı hesabı yap. Hangi kutu yüzde elli sınırını geçiyor?
  5. Yeni bir onda on ızgara çiz. Sol üst köşeden sağ alt köşeye uzanan köşegendeki on kareyi boya: bu birinci eksperin çizik maskesi.
  6. Üçüncü bir ızgarada aynı köşegeni boya, ayrıca birinci satırdan dokuzuncu satıra kadar her satırda köşegen karesinin hemen sağındaki kareyi de boya: bu ikinci eksperin maskesi.
  7. İki maskenin ortak karelerini ve birlikte kapladıkları kareleri say, oranı bul. Sonra her maskenin alanını yaz ve çiziği içine alan kutunun alanıyla karşılaştır.

Üçüncü adımda ortak alan on iki, toplam otuz altı, oran üçte bir; dördüncü adımda ortak alan yirmi, toplam yirmi sekiz, oran yaklaşık sıfır virgül yetmiş bir. Yedinci adımda ortak alan on, toplam on dokuz, oran yaklaşık sıfır virgül elli üç. Birinci eksper çiziğe on kare, ikincisi on dokuz kare diyor; kutu ise yüz kare. Sonuçların altına bir cümle yaz: iki eksper aynı çiziğe neredeyse iki kat farklı alan veriyorsa, ağın maskesini hangisine göre ölçmek gerekir?

Defter: "Kutu ve leke" sayfasına üç ızgarayı çiz, her birinin altına oranı yaz. Sayfanın sonuna, gündelik bir fotoğrafta, bir kalabalıkta ya da bir meyve kasasında, tek tek kutu çizmenin neden zorlaşacağını anlatan iki cümle ekle.

Hata köşesi

Yaygın yanlış"Kutunun yanındaki sıfır virgül doksan bir, kutunun yüzde doksan bir doğru yerde olduğunu söyler."
Doğrusu

Güven puanı, ağın o kutuda o sınıfın bulunduğuna ne kadar emin olduğudur; kutunun ne kadar isabetli çizildiğini söylemez. Yüksek puanlı bir kutu gerçek hasarla düşük örtüşebilir, düşük puanlı bir kutu tam yerinde olabilir. Konumun isabeti ancak gerçek kutuyla kesişim bölü birleşim hesaplanarak öğrenilir.

Yaygın yanlış"Bölütleme tespitten her zaman daha iyidir, hep onu kullanmalı."
Doğrusu

Soru "kaç tane" ya da "nerede" ise kutu yeter ve çok daha ucuza etiketlenir; depodaki koli sayımı ya da bir fotoğrafta plaka bulmak buna örnektir. Maske, alan, sınır ya da biçim gerektiğinde bedelini öder: boyanacak yüzey, eziğin milimetresi, birbirine değen nesnelerin ayrılması.

Sorumluluk

Örtüşme sınırını, hangi ölçütün raporlanacağını ve gerçek maskeyi kimin çizeceğini firma değil Elif'in ekibi belirler; çünkü ödenen boya parası bu üç karara bağlıdır. Sistem çiziğin alanını küçük bulursa müşteri eksik ödeme alır, büyük bulursa şirket fazla öder. Elif sözleşmeye şunu yazdırır: başarı küçük ve büyük hasarlar için ayrı, yüzde elli ve yüzde yetmiş beş sınırlarıyla raporlanacak; alan hesabı ödemeye girmeden önce Halil Bey'in ekibi rastgele seçilen dosyalarda maskeyi kendi ölçümüyle doğrulayacak. Ödemeyi onaylayan imza yine eksperin imzası olarak kalır.

Kapanış

  1. Nesne tespiti her nesne için bir sınıf, bir sınırlayıcı kutu ve bir güven puanı verir; aynı nesneye düşen fazla adaylar bir eleme adımıyla silinir ve sık istiflenmiş nesnelerde bu adım gerçek nesneleri de silebilir.
  2. Bir kutunun isabeti kesişim bölü birleşimle ölçülür; yaygın sınır yüzde ellidir ve bilerek gevşek tutulmuştur. Aynı kayma küçük nesnede ıskaya, büyük nesnede isabete dönüşür; başarı sayısı sınırıyla ve nesne boyuyla birlikte okunur.
  3. Anlamsal bölütleme her pikseli sınıflar, örnek bölütleme pikselleri ayrı nesnelere de böler; alan, boy ve sayım gerektiğinde kutu yetmez, ama maskenin bedeli ve etiketçiler arasındaki ayrılık da hesaba girer.

Üç soru

  1. Halil Bey'in çiziği için ağ, çiziği tamamen içine alan ama her yönde taşan bir kutu çizdi. Hasarın hepsini kapsadığı hâlde bu kutu neden isabet sayılmadı?
  2. Hülya Hanım'ın deposunda eleme sınırını gevşetmek neden bir sorunu çözerken ötekini doğurdu?
  3. Ferhat Bey'in birliği neden anlamsal bölütlemeden örnek bölütlemeye geçmek zorunda kaldı?

Yanıtlar

  1. Kesişim bölü birleşim yalnız kaçırılan alanı değil, fazladan kapsanan alanı da cezalandırır. Taşan kutunun alanı kırk beş bin, ortak alan eksperin kutusunun tamamı olan yirmi bin; oran yaklaşık sıfır virgül kırk dört, yüzde elli sınırının altında.
  2. Eleme adımı birbiriyle fazla örtüşen kutuları aynı nesnenin tekrarı sayar. Sıkı istifte iki ayrı koli de çok örtüşen kutular verdiği için ikincisi siliniyordu. Sınır gevşeyince komşu koliler korundu, ama aynı koliye düşen iki aday da artık silinmeyecek kadar farklı sayıldı ve tek koli iki kez sayıldı.
  3. Anlamsal bölütleme her pikselin ayçiçeği olup olmadığını söyler ama hangi tablaya ait olduğunu söylemez; birbirine değen tablalar tek bir leke olur. Sayım için her tablanın ayrı nesne olarak ayrılması gerekir, bunu da örnek bölütleme yapar.

Sonraki derse köprü

Lin ve arkadaşlarının veri seti yetmiş bin iş saatinden fazla emekle kuruldu; Elif'in şirketinde ise eksperlerin boyayabileceği maske sayısı birkaç yüzle sınırlı. Ders 10.4, Aktarım öğrenmesi, büyük bir veri setiyle eğitilmiş bir modelin öğrendiklerini küçük ve dar bir işe taşımayı ele alıyor: birkaç yüz örnek ne zaman yeter, ne zaman yetmez?

Anlamadığın bir yer mi var?

Mentor yalnız bu dersin metnine dayanarak cevap verir. Metinde geçmeyen bir şey sorarsan uydurmaz, geçmediğini söyler.