Görsel-dil modellerinin görsel sınırlamaları
(vlmsareblind.github.io)- GPT-4o, Gemini-1.5 Pro, Sonnet-3 ve Sonnet-3.5 gibi görsel-dil modelleri (VLM), görsel anlama benchmark'larında yüksek puan alsa da, insanların kolayca çözdüğü düşük seviyeli görsel görevlerde ortalama yalnızca %58,57 doğruluk sağlıyor
- BlindTest, çizgi kesişim sayısı, iki çemberin temas/örtüşmesi, işaretlenmiş harfi bulma, örtüşen şekilleri sayma, iç içe dikdörtgenler, tablo satır/sütunları ve metro rotaları gibi 7 basit görevle hassas mekânsal algıyı ölçüyor
- Genel ortalama, rastgele temel seviye olan %24'ün üstünde olsa da, en iyi model olan Sonnet-3.5 bile %74,94'te kalıyor; bu da insanların bekleyeceği %100'den oldukça uzak
- Çözünürlük ve çizgi kalınlığı değiştirilse bile modeller, birbirine çok yakın ya da üst üste gelen temel geometrik öğeleri ve hassas konumsal ilişkileri istikrarlı biçimde işleyemiyor
- Tabloda metin olduğunda satır/sütun sayma performansı artıyor, ancak metro haritasında rota sayısı arttığında olduğu gibi mekânsal izleme gerektiren girdilerde performans belirgin biçimde düşüyor
BlindTest'in problem kurgusu ve genel sonuçlar
- Paper (ArXiv), Code ve Dataset yayımlandı
- Değerlendirilen modeller GPT-4o, Gemini-1.5 Pro, Sonnet-3 ve Sonnet-3.5 olmak üzere dört VLM'den oluşuyor
- BlindTest, insanların kolayca çözebildiği düşük seviyeli görsel görevlerle VLM'lerin hassas mekânsal algısını sınıyor
- Genel ortalama doğruluk %58,57; bu oran rastgele temel seviye olan %24'ün üstünde olsa da beklenen %100 doğruluğa ulaşamıyor
- Modellerin genel ortalamasında Sonnet-3.5, %74,94 ile en yüksek sonucu veriyor
- Başlıca başarısızlıklar; hassas konumsal ilişkiler, dar aralıklar, örtüşme, rota takibi ve temel geometrik öğelerin algılanmasında tekrar ediyor
Çizgi kesişimlerini sayma
- İki parçadan oluşan mavi ve kırmızı kırık çizgilerin 0, 1 veya 2 kez kesişip kesişmediğini sayma görevi
- Görseller, beyaz bir tuval üzerinde 2D çizgi grafiği biçiminde 1.800 adet üretildi
- Her çizgi, x koordinatları sabit ve eşit aralıklı üç noktadan tanımlanıyor
- y koordinatları rastgele örneklenerek tam olarak 0, 1 veya 2 kesişim oluşacak şekilde kuruluyor
- Doğru cevap seçenekleri {0, 1, 2}; rastgele temel seviye %33
- Ortalama doğruluklar: GPT-4o %41,61, Gemini-1.5 Pro %66,94, Sonnet-3 %43,41, Sonnet-3.5 %75,36
- Örnek sonuçlarda VLM'ler kesişim noktalarını istikrarlı biçimde sayamıyor
İki çemberin temas ve örtüşmesini ayırt etme
- Aynı boyuttaki iki dolu çemberin birbirine değip değmediği ya da örtüşüp örtüşmediği Yes/No biçiminde soruluyor
- Görseller 672 adet ve çember boyutu, uzaklık, yön ve tuval boyutu değiştirilerek üretildi
- Çember çapı, tuval boyutunun 1/4, 1/5, 1/6 veya 1/7'si
- Çember çevreleri arasındaki mesafe, çapın -0,15 katından 0,5 katına kadar değişiyor
- Yönler 90°, 0°, -45°, 45°
- Tuval boyutları 384, 769 ve 1155 piksel
- Doğru cevap, çember çevreleri arasındaki mesafe
dile belirleniyord < 0: örtüşür ve temas ederd = 0: örtüşmez ama temas ederd > 0: ne örtüşür ne temas eder
- Ortalama doğruluklar: GPT-4o %72,69, Gemini-1.5 Pro %92,78, Sonnet-3 %84,52, Sonnet-3.5 %91,66
- Küçük aralıklarda VLM'ler sürekli hata yapıyor; büyük aralıklarda bile GPT-4o'nun kararsız kaldığı örnekler var
Kırmızı elipsle işaretlenen harfi bulma
- VLM'ler tek başına kırmızı daire gibi temel şekilleri ayırt edebiliyor ve İngilizce kelimeleri okuyabiliyor; ancak bir kelimenin üzerindeki belirli harf kırmızı bir elipsle işaretlendiğinde, tam olarak hangi harf olduğunu bulmakta zorlanıyor
- Kullanılan dizeler: Acknowledgement, Subdermatoglyphic, tHyUiKaRbNqWeOpXcZvM
- Bu üç dizede harf genişlikleri ve yükseklikleri çeşitlilik gösteriyor
- Dört model de yalnızca dizenin bulunduğu görüntü verildiğinde tüm harfleri okuyabiliyor
- Rastgele dize, kelimeye aşinalığın doğruluk üzerindeki etkisini ölçmek için eklendi
- Her dize ve işaretlenen harf kombinasyonu için 512×512 görseller üretildi; 3 elips çizgi kalınlığı, 2 yazı tipi boyutu ve tuval içinde 4 konum birleştirildi
- Acknowledgement: 360 görsel
- Subdermatoglyphic: 408 görsel
- tHyUiKaRbNqWeOpXcZvM: 480 görsel
- Ortalama doğruluklar: GPT-4o %70,18, Gemini-1.5 Pro %92,81, Sonnet-3 %73,34, Sonnet-3.5 %89,22
- Model hata yaptığında, işaretli harf yerine çoğunlukla bitişiğindeki harfi tahmin ediyor
Örtüşen şekilleri ve iç içe dikdörtgenleri sayma
- Olimpiyat logosundaki gibi örtüşen çemberleri veya beşgenleri sayma görevi, ayrı duran çemberleri sayabilen VLM'lerin örtüşmeli şekillerde de zorlanıp zorlanmadığını ölçüyor
- Örtüşen şekil görevi, 384, 769 ve 1155 piksellik tuvallerde aynı boyuttaki 5 ila 9 şekli iki sıra halinde yerleştiriyor
- Çember çapı
C/5veyaC/10 - Beşgen kenar uzunluğu
C/5veyaC/10 - Toplam 120 görsel üretildi
- Doğru cevaplar {5, 6, 7, 8, 9}; rastgele temel seviye %20
- Çember çapı
- Örtüşen çember doğruluğu: GPT-4o %42,50, Gemini-1.5 Pro %20,83, Sonnet-3 %31,66, Sonnet-3.5 %44,16
- Örtüşen beşgen doğruluğu: GPT-4o %19,16, Gemini-1.5 Pro %9,16, Sonnet-3 %11,66, Sonnet-3.5 %75,83
- İç içe dikdörtgen görevi, en dıştaki dikdörtgenin içine birbirine değmeyecek şekilde başka dikdörtgenler yerleştirip 2 ila 5 adet saydırıyor
- Toplam 120 görsel üretildi
- Doğruluklar: GPT-4o %55,83, Gemini-1.5 Pro %87,08, Sonnet-3 %65,00, Sonnet-3.5 %92,08
- Örneklerde yalnızca Sonnet-3.5, çok sayıda görselde dikdörtgenleri saymayı başarıyor
Tablo satır/sütun sayma ve metro rotası takibi
- Tablo satır/sütun sayma görevi, VLM'lerin tablo içeren girdilerde yüksek performans göstermesine rağmen basit bir ızgara yapısını gerçekten doğru sayıp sayamadığını inceliyor
- Izgaralar N×N, N×N' ve N'×N biçiminde; burada N 3 ila 9, N' ise N+1
- Tuval boyutları 500, 1250 ve 2000 piksel
- Çizgi kalınlığı 2 tür
- Boş ızgaralar ve her hücresinde rastgele kelime bulunan ızgaralar birlikte toplam 444 görsel oluşturuyor
- Satır ve sütunun ikisinin de doğru bilinmesi gerekiyor; ortalama doğruluklar GPT-4o %39,58, Gemini-1.5 Pro %39,39, Sonnet-3 %36,17, Sonnet-3.5 %74,26
- Boş ızgaralarda ortalama %34,37
- Metin içeren ızgaralarda ortalama %60,33
- Hücrelerde metin bulunması tüm VLM'lerin performansını artırıyor; özellikle Sonnet-3.5'te artış büyük
- Metro haritası görevi, A, B, C ve D adlı dört istasyon arasında belirli iki istasyonu bağlayan tek renkli rota sayısını saydırıyor
- 512 veya 1024 piksellik tuval kullanılıyor
- Görünmez 18×18 ızgara üzerinde derinlik öncelikli arama ile rotalar üretiliyor
- Her istasyonun tam olarak N∈{1, 2, 3} adet çıkan rotası var
- Toplam 180 harita üretildi
- Metro rotası ortalama doğrulukları: GPT-4o %47,89, Gemini-1.5 Pro %41,60, Sonnet-3 %23,24, Sonnet-3.5 %55,53
- İstasyon başına 1 rota olduğunda ortalama %59,16
- 2 rota olduğunda ortalama %40,69
- 3 rota olduğunda ortalama %26,35
- Bir istasyondan çıkan rota sayısı arttıkça VLM performansının daha da kötüleşme eğiliminde olduğu görülüyor
1 yorum
Hacker News yorumları
Eğlenceli, ama sonuç epey isabetsiz görünüyor. Özette “bunların görmesi, olsa olsa ayrıntıların bulanık göründüğü miyopluğa benziyor” demek aşırı bir ifade; ayrıca bu hipotezin düzgünce test edilip edilmediği de şüpheli.
İşte GPT-4v’nin oldukça zor ince ayrıntılı görsel görevleri başardığı örnekleri paylaşabilsem, bu sonuçlara karşı iyi bir itiraz olurdu. Şahsen şu makaleyi https://arxiv.org/abs/2404.04125 daha değerli buluyorum; tezi, büyük üretken yapay zeka modellerinin eğitim sırasında ilgili türde veriyi çok fazla gördüğü varsayımı altında oldukça iyi performans gösterdiği. Bilerek tuhaf görevler tasarlarsanız gerçekten kötü olabilirler ve AGI’ye dair ilk izlenim zayıflar; ama pratikte yalnızca modeli tökezletmek için yapılmış görevleri kullanmıyoruz. Belirli işlerde performans iyi olabilir; bu makale ise bu iki yön için yeterli somut kanıt sunmuyor.
Bu modeller gerçekte insan seviyesinde değilken insan seviyesine yakınmış gibi ima ediliyor. Makale, basit problemlerde bile modellerin beklenmedik biçimde şaşırdığı büyük bir uçurumun hâlâ bulunduğunu gösteriyor. Bu tür görevleri daha görünür kılmak gerekiyor ki insanlar bunların genel amaçlı kullanıma uygun olduğuna inanmadan önce güvenlik önlemleri ve yeterli uyarılar gerektiğini anlasın.
Ama modele “kör” demek ya da genel olarak performansının düşük olduğunu ima etmek, telefonu çıkarıp ChatGPT uygulamasına tek bir fotoğraf yüklemekle bile kolayca çürütülebilir. BeMyEyes’tan söz edip “AI savunucularını” eleştiren tepkiler de var, ama aylık 20 dolarlık abonelik ve bir telefonla hemen test edilebilir. Gerçek dünya görevlerinde şaşırtıcı derecede iyi çalışıyor; kusursuz olmasa da pratikte yeterince faydalı ve çoğu zaman alternatiflerden daha iyi, hatta bazen alternatifsiz.
Teknoloji, yalıtılmış niş görevlerde aşırı iyi olabilir. 10 yıl önceki OCR sistemleri de ayarlanmış tek bir görevde son derece güvenilirdi. Yapay zekanın vaat ettiği şey, geliştiricinin önceden belirlediği belirli bir nişe hapsolmayan yeni bir paradigmaydı; sıradan bir insanın hata yapmayacağı basit şeyleri istikrarlı biçimde kaçırıyorsa tüm değer önerisi çöker.
Dün GPT-4o ile epey şaşırtıcı bir deneyim yaşadım. Garaj kapısı son zamanlarda düşmeye başlamıştı; bakınca ev sahibinin tel halat kelepçesini yanlış taktığını ve burulma kablosunun gerginliğinin boşaldığını gördüm.
Parçanın adını bilmiyordum, ChatGPT’ye sordum ve beklendiği gibi parçayı tanımladı. Deneme amaçlı, fotoğrafta göze çarpan bir şey olup olmadığını sordum; kablonun ters takıldığını, gerginliğin bindiği tarafın gevşek ucu bastırıp sıkıca kavramak yerine onun üstünden geçtiğini doğru şekilde fark etti. Bunu teşhis etmek için kabloyu uzayda takip etmek ve geometriden hangi tarafta gerilim olduğunu çıkarsamak gerekiyor; elbette bunun şanslı bir tahmin olma ihtimalini dışlayamam. Asıl şaşırtıcı olan, iki somundan birinin bariz biçimde eksik olmasına rağmen, ikinci bir montaj sorunu olduğunu söyledikten sonra bile bunu fark etmemesiydi. Ekran görüntüsü: https://imgur.com/a/QqCNzOM
“never saddle a dead horse” ezber kuralını gündeme getirmesi de bu sorunun yaygın olduğuna kanıt. Tamir ettikten sonra aynı soruyu tekrar sormak iyi olurdu.
Diğer yanıtta söylendiği gibi, LLM’nin yalnızca şans eseri doğru tahmin etmiş olabileceğine şüpheyle yaklaşıyorum.
Şimdiye kadar VLM’ler nesne sayma ya da uzamsal ilişkiler gibi işlerde, örneğin kahvenin mikrodalga fırının sağında olup olmadığını anlamada pek iyi değildi.
VLM’ye yardımcı olmanın yolları var; Microsoft’un Set of Marks https://github.com/microsoft/SoM bunun başlıca örneği. Görseli VLM’ye göndermeden önce bölütleme ile alanların konturunu çıkarıp etiketleme yöntemi. Alanlara “sözcüklerle ifade edilebilir” etiketler vermek, VLM’nin görsel yeteneklerini temellendirmeye yardımcı oluyor; bu makalede de “Task 6: Counting the rows and columns of a grid” için, ızgaranın içinde sözcükler olduğunda performansın çok daha iyi olmasının nedeni bu.
Fotoselli “nöronların” ızgara şeklinde yerleştirildiği paralel analog bir bilgisayardı ve “boyut, konum, şekil ve aydınlatma şiddetinden bağımsız olarak nesne sayısını” sayabildiği söyleniyordu. Bu alandaki kişiler için Heinz Von Foerster’in 1962 tarihli “Perception of Form in Biological and Man Made Systems” makalesi ilginç olabilir: https://distributedmuseum.illinois.edu/exhibit/biological_computer_laboratory/, https://sites.evergreen.edu/arunchandra/wp-content/uploads/sites/395/2018/05/bcl082.pdf
Bir görüntüyü “mavi gökyüzü ve bulutların önündeki elektrik tellerine kuşlar konmuş” diye tarif edip, sonra bu açıklamanın gömmesiyle fotoğrafın gömmesini eşleştirmek gibi. Kuş olup olmadığını sorarsanız bilebilir, ama kaç tane olduğunu bilemez. Eğitim verisinde, bir nesnenin üzerinde oturan kuşların sayısını tarif etmek yaygın değilse ve bu sayı görüntü açıklamasındaki gerçek sayıyla yeterince sık örtüşmediyse durum böyledir. Nesne saymak istiyorsanız YOLO gibi bir şeye ihtiyaç vardır.
Vision Transformer, tokenizer aşamasında şaşırtıcı derecede fazla sıkıştırma yapıyor. Chameleon paper tokenizer’ın “512 × 512 görüntüyü, boyutu 8192 olan bir codebook’tan gelen 1024 ayrık token’a kodladığını” söylüyor.
Bu, token başına 256 piksel demek; pikselleri 24 bit sayarsak 256 * 24 = 6144 biti, log2(8192) olan 13 bite sıkıştırmak anlamına geliyor. An Image is Worth 32 Tokens for Reconstruction and Generation bunu daha da ileri götürüyor. Bu modeller benzer şekilde çalışıyorsa, bazı görsel görevlerde zorlanmaları tuhaf değil.
Yani bir ölçüde “görüyor”. Ancak bu tür sorulara yanıt verecek mantık eksik gibi görünüyor. Veri kümesinin tamamını burada doğrudan deneyebilirsiniz: https://huggingface.co/datasets/XAI/vlmsareblind/viewer/default/train
Genellemede yapısal bir başarısızlıktan çok bir kapasite sorunu da olabilir; ölçek daha da büyütülürse kendiliğinden çözülme ihtimali var.
Mevcut en iyi modeller olan GPT-4o, Gemini-1.5 Pro, Sonnet-3 ve Sonnet-3.5 bu seviyedeyse, performansları oldukça utandırıcı derecede kötü. Bu modeller, körlere rehberlik etmek ya da bir çocuğa geometri öğretmek gibi görüntü anlama yeteneklerine sahip oldukları iddiasıyla tanıtılıp satılıyor.
Başarısız oldukları görevler insanlar için gülünç derecede basit. Örneğin iki çizginin kaç kez kesiştiğini saymak, iki dairenin çakışıp çakışmadığını algılamak, bir kelimedeki daire içine alınmış harfi seçmek, Olimpiyat logosuna benzeyen bir çizimde kaç halka olduğunu saymak gibi. Bu yazı ilk sayfanın en üstünde olmalı.
Modelin “insanlar için apaçık” birçok durumu işleyememesi hiç şaşırtıcı değil. Makine öğrenmesi başından beri bu özelliğe sahipti ve insanların bu sistemlerle uğraşırken yaptığı klasik hata bu. İnsanlar, bir makine öğrenmesi modeli X görevinde insandan daha yüksek doğruluk gösterdiğinde, diğer tüm görevlerde de o yeteneğe sahip olacağını varsayıyor. Üstün yetenekli bir insanın başka görevlerde de iyi olma olasılığı yüksek olabilir; ama bu makine öğrenmesi modelleri için geçerli değil. Tersi de yanlış: Model Y görevinde iyi değil diye X görevindeki yeteneğinin de bir yanılsama olduğu ve güvenilemeyeceği sonucuna varmak doğru değil.
Beklenti koşu bandı gerçekten bu kadar hızlandı da, herhangi bir problem kategorisinde insan altı performans göstermek artık utanç verici mi oldu?
Keşfin kendisi ilginç, ama “Vision language models are blind” başlığı abartılı ve sonuçları yanıltıyor. VLM’lerin görüntü girdisini algılama ve işleme biçimi insanlardan çok farklı; düşük çözünürlükte görüntünün bloklara bölünüp ayrık token’lara eşlendiği de doğru.
Bu eşleme epey kayıplı olduğundan, pratikte ince ayrıntılara erişemiyorlar. Bu anlamda sonuçlar tamamen mantıklı ve şaşırtıcı değildi; ancak “kör” ifadesi güçlü çağrışımlar taşıyor ve bu çalışma bunu desteklemiyor. İlk örnek olan dört adet 2B çizgi grafiğe bakınca bile, Sonnet 3.5’e 5 kez sorduğumda 2 kez oldukça iyi cevap verdi. Üçüncü grafikte kesişim noktası aslında 2 iken 1 demesi yanlıştı; ama genel olarak oldukça iyi yaptı ve kalan 3 yanıtta da üçüncü grafiğe 1 cevabını verdi.
VLM’lerin nasıl çalıştığını yüzeysel bilen biri olarak bakınca, burada bedenlenmeden söz edenlerin bir ölçüde haklı olabileceği hissine kapılıyorum. İnsanlar görüntü algısını yinelemeli olarak iyileştirip ilgi alanlarına odaklanabilir; VLM ise tüm görüntüyü aynı sadakatle işlemek zorunda.
Bunu taklit etmenin bir yolu olup olmadığını merak ediyorum. Örneğin başlangıçta görsel token’lar düşük sadakatte olur, VLM de görüntünün belirli bir bölgesine daha yüksek çözünürlükle “odaklanmayı” sağlayan token’lar üretebilir. Ancak böyle “etkileşimli” verilerle modeli verimli biçimde eğitmek mümkün mü, pek emin değilim.
Mutlaka daha yüksek çözünürlük olmasa bile, daha güçlü sinirsel bağlantısallıkla belirli bir bölgeye odaklanma biçimi.
Yoksul ülkelerde kataraktı biraz daha geç alınan kişilerin, o andaki donanım açısından kusursuz görmeye sahip olmaları gerekse de, ömür boyu kalan eksikleri hâlâ var gibi görünüyor. Erken dönemdeki düşük çözünürlüklü öğrenmenin insanları ne kadar etkilediği tam bilinmiyor; bu, bağlantıcı sistemlerin geneline dair bir hakikatten çok insanın belirli nörobiyolojisiyle ilgili de olabilir. Yine de yapay sinir ağlarındaki bazı sonuçların eğitim paradigmasına büyük ölçüde bağlı olabileceği ve tüm kusurların yalnızca temel mimari güncellemeleriyle çözülemeyebileceği fikri ilginç.
Bir çocuğun bile çözebilecekmiş gibi duran basit testlerde başarısız olmaları ironik. Ama Gemini’ye görsel gürültüsü yüksek, el yazısıyla yazılmış Rusça el yazısı bir kartpostal okuttum; metni okuyup İngilizceye çevirdi.
Metnin Rusça olduğunu söylememe bile gerek kalmadı. Bir yandan LLM’lerin yapabildikleri inanılmaz derecede etkileyici; diğer yandan bu kadar basit görünen sorunlarda sık sık fena tökezliyorlar. Otonom araçlarda da neredeyse tüm insan sürücülerin kolayca kaçınacağı durumlarda kaza yapmaları gibi benzer bir tablo görüyoruz.
Algoritma açısından bakıldığında, bu tür görsel görevleri açıkça programlamak aslında oldukça zor.
Hesaplamalı geometri derslerini birkaç kez verdim; N adet doğru parçasının kesişimlerini verimli hesaplamak ilk düşünüldüğü kadar basit değil. Bir yerde bunu tanımak için hesaplama gerekiyor ve LLM bu görev için özel olarak eğitilmediğinden zorlanması şaşırtıcı değil.
Genel olarak temel geometri, öğrenme açısından daha az incelenmiş bir alan gibi görünüyor.
Bu modellerin öğrendiği akıl yürütme türleri ile belirli matematiksel akıl yürütme için gereken akıl yürütme türleri arasında fark var gibi.
Düzlem uzayındaki çizgileri görsel olarak alıp nerede kesiştiklerini hesaplamıyoruz. Kesişim noktasının neye benzediğini biliyor, birini görüyor, sayacı artırıyor, sonra bir sonrakini arıyoruz. Yaklaşık 5’ten azsa bir kerede işliyoruz; daha fazlaysa gerçekten sayıyoruz, bazen küçük gruplar hâlinde, bazen tek tek.
Tüm modeller, özellikle Claude 3.5 Sonnet, rastgeleden çok daha iyi göründüğüne göre kesinlikle kör değiller. Claude Sonnet 3.5’in rastgeleden daha iyi olmadığı tek görev, birden fazla yolu takip etmeyi gerektiren, yani A’dan C’ye cevabın 3 olduğu problemdi; onu çözmek benim de birkaç saniyemi aldı.
Sanki makalenin başlığı önce belirlenmiş, sonra yeni Claude 3.5 Sonnet soyut görüntülerle değerlendirilmiş gibi. “Bunların görmesi olsa olsa ayrıntıları bulanık gören miyopluğa benzer” cümlesi de mantıklı değil. Bu görüntüler modelin soyutlama becerisini değerlendiriyor, görme keskinliğini değil.