Bilgisayarla görme tarihi – 3

Lale Akarun
Bilgisayarla görme tarihi – 3

21. yüzyılın ilk on yılında, bilgisayarla görmede önemli atılımlar kaydedildi. Bu atılımların yapılmasında, bilgisayar donanımlarının hem bellek kapasitesi hem de hesaplama gücü açısından çok gelişmesi önemli rol oynadı. Moore Yasası diye bilinen prensibe göre, bir çipe sığdırılan transistör sayısı, her iki yılda ikiye katlanarak, 1970’lerde binlerden, 2020’de, on milyarlı sayılara ulaştı.

Transistör sayısının artması, doğrudan bellek kapasitesinin artması demek oluyordu. Şöyle düşünelim: Diyelim tuğla taşıyacaksınız ve bir kişi bir tuğla taşıyabiliyor. Kişi sayısını artırarak taşınan tuğla sayısını aynı oranda artırabilirsiniz. Ancak tuğlaları üst üste dizerek duvar örecekseniz, kişi sayısını artırmak işe yaramaz; çünkü her bir tuğla bir öncekinin üstüne gelmelidir. İşin hızlanabilmesi için, aynı anda paralel yapılabilen birimlere bölünmesi gerekir. Bunu, bir fabrikadaki üretim hatlarına benzetebiliriz: Her bir üretim hattı, birbirinden bağımsızdır. Beş üretim hattınız varsa, beş katı ürünü, örneğin beş otomobili paralel üretebilirsiniz.

Bilgisayarın hesaplama birimi CPU, birbiri üstüne dizilen tuğlalara benzer şekilde, bilgisayar komutlarını birbiri ardına yerine getiren bir çekirdek barındırır. Bir çipe gittikçe daha çok transistör sığdırıldığında, donanım tasarımcıları, bir çipe birden çok çekirdek yerleştirmeye başladılar. Bu çekirdeklerin verimli olarak çalışabilmesi için, aynı anda paralel çalışabilen bilgisayar programları gerekiyordu. Peki bir çipe on binlerce, hatta yüzbinlerce çekirdek koyabiliyorsanız, bu derece paralellik sağlayabilir misiniz?


Yapay öğrenmeye geçiş

Görüntülerin yüzbinlerce pikselden oluştuğundan bahsetmiştik. Bu imgelerle yapılan işler, yüksek paralellik barındırır. Örneğin komşu pikselleri alıp, birtakım katsayılarla çarpıp toplamını geri yazarız. Her pikselde aynı işi yaptığımız için, yüz bin çekirdeğimiz varsa, bu işi aynı anda paralel yapabiliriz. Böyle bir işlem nerede kullanılır? Bilgisayarlarla görme uygulamaları gelişmeden epey önce, böyle bir işlem, bilgisayar oyunları için kullanılıyordu. Grafik işlemci denilen GPU’lar da bu amaçla geliştirildi.

NVIDIA firmasının ilk GPU çipi GeForce, 1999 yılında çıktı ve 2000’lerde yaygın kullanılmaya başlandı. Bu çipler, ilk başlarda oyun konsolu denilen özel donanımlar üzerinde bulunuyor ve ayrı bir kullanıcı grubuna pazarlanıyordu. Bilgisayar oyunu meraklılarının ve onların ana babalarının bu alana yatırdığı kaynaklarla, bu sektör gelişti ve gittikçe daha kuvvetli GPU çipleri geliştirildi. Çok geçmeden, GPU’ların bilgisayarla görmede de kullanılabileceği fark edildi ve bu, büyük bir atılıma yol açtı. 2010’lara gelindiğinde, bilgisayar donanımları, yapay öğrenmedeki büyük atılıma hazırdı.

Yapay öğrenme nedir ve yapay zekadan ne farkı vardır? Yapay zeka, bilgisayarların genel yapay zekaya, yani insanlarınkine benzer bir zekaya sahip olmasını kasteden, çok daha geniş bir kavram. Yapay öğrenme ise, veriden öğrenme olarak tanımlayabileceğimiz bir kavram. Ne öğrenmek istiyorsanız, ona ait büyük veriye ihtiyacınız var.

Örneğin otomobil tanımak istiyorsunuz. Eski, klasik yöntemlerde, otomobili tarif ederdiniz: Otomobilin dört tekerleği olur, dört kapısı olur; ön camı, arka camı, yan camları olur, vs. Tabii ki bu tanıma uymayan pek çok otomobil olabilir; örneğin iki kapılı. Onlar için de istisnalar tanımlamanız gerekirdi. Veriden öğrenmede, bu tanımları yapmak yerine, çok sayıda otomobil resmini bilgisayara verip bunlar otomobildir demeniz yeterli. Örneğin bir milyon otomobil resmi: Her cins, her renk, her açıdan, değişik geri planlar önünde çekilmiş. Bu yaklaşıma denetimli öğrenme diyoruz.

Bu yaklaşım, bebeklerin öğrenmesine benziyor: Doğduğu andan itibaren pek çok görüntü gören bebek, nesne tanımayı böyle öğrenir: “Bak oğlum, araba.” 2000’li yıllarda, bilgisayarla görme sistemleri, yeni doğmuş bebekler gibi öğrenmeye hazırdı.

Lale Akarun

*Bu yazı, HBT Dergi 386. sayıda yayınlanmıştır.

Lale Akarun