Anderson’un Açısı
GPU’lar Derin Sinir Ağlarını Eğitmek için Daha İyi, Sadece Daha Hızlı Olmayabilir

Polonya ve Japonya’dan araştırmacılar, Sony ile birlikte, GPU’lar yerine CPU’lar kullanılarak eğitilen makine öğrenimi sistemlerinin eğitim sürecinde daha az hata içerdiğini ve daha iyi sonuçlar ürettiğini keşfettiler. Bu, GPU’ların yalnızca bu işlemleri daha hızlı gerçekleştirdiği, daha iyi olmadığına dair yaygın anlayışla çelişiyor.
Araştırma, Derin Öngörüsel Sinir Ağlarının Eğitiminde GPU Belirsizliğinin Etkisi adlı çalışmadan geliyor ve Adam Mickiewicz Üniversitesi Psikoloji ve Bilişsel Bilimler Fakültesi ile iki Japon üniversitesinden birlikte SONY Bilgisayar Bilimleri Laboratuvarları ile gerçekleştirildi.
Çalışma, derin sinir ağlarının çeşitli donanım ve yazılım yapılandırmaları karşısında gösterdiği ‘belirsizlikler’, daha pahalı (ve giderek daha az bulunan) grafik işleme birimlerini daha fazla favori gösterdiğini ve CPU’larda eğitilen bir derin sinir ağıyla karşılaştırıldığında, aynı sayıda epoch (sistemlerin eğitim verilerini işleme sayısı) boyunca daha yüksek hata oranlarına sahip olduğunu ortaya koydu.

Bu ek örnekte, çeşitli GPU’lardan (alt sıralar) benzer sonuç kalitesi ve çeşitli CPU’lardan (ilk sıra) daha düşük sonuçlar elde edildiğini görüyoruz. Kaynak: https://arxiv.org/pdf/2109.01451.pdf
Garip Olaylar
Bu ön sonuçlar, popüler makine öğrenimi algoritmalarına uniform olarak uygulanmıyor ve basit otokodlayıcı mimarilerinde bu fenomen görünmüyor.
Bu çalışma, karmaşık sinir ağlarında eğitim etkinliği için olası bir ‘kaçış hızı’na işaret ediyor; aynı işlemleri daha düşük hızda ve daha uzun eğitim süreleriyle gerçekleştirmek, beklenen matematiksel yineleme rutinlerinin performans eşdeğerliğini sağlamıyor.
Araştırmacılar, bu performans farklılığının belirli sinir ağlarına özgü olabileceğini ve GPU’ya özgü işlemenin belirsiz yönlerinin, genellikle aşılmak üzere bir engel olarak görülmesine rağmen, önemli faydalar sağlayabileceğini ve gelecekteki sistemlerde kasıtlı olarak dahil edilebileceğini öne sürüyor. Makale, bu bulguların beyinle ilgili hesaplamalı işlemler hakkında daha derin içgörüler sunabileceğini de öneriyor.
Bu şekilde GPU’ların verimlilik ve sonuç kalitesini artıran peculiariteleri belirlemek, ‘kara kutu’ AI mimarilerine daha derin bir bakış açısı elde etme ve hatta CPU performansını iyileştirme potansiyeli taşıyor – ancak şimdilik temel nedenler belirsiz kalıyor.
Otokodlayıcı vs. PredNet
Anomalileri incelemek için araştırmacılar, temel bir otokodlayıcı ve Harvard Üniversitesi’nin 2016 yılında insan beyninin davranışını taklit etmeye ve araştırmaya yönelik PredNet adlı öngörülü sinir ağını kullandılar.
Her iki sistem de, veri etiketlerinden yoksun verilerle eğitim gören derin sinir ağlarıdır, ancak otokodlayıcı lineer olarak her bir görüntüyü işler ve sonra bir sonraki görüntüyü üreterek tekrarlayan bir işlem gerçekleştirir. Otokodlayıcı, MNIST el yazısı veritabanında eğitildi.

Araştırmacıların testlerinde kullanılan otokodlayıcı, 60.000 eğitim görüntüsünden (28×28 piksel, gri tonlama için anti-aliased) ve 10.000 test görüntüsünden oluşan MNIST veritabanında eğitildi.
PredNet ise karmaşık video girişini değerlendirir ve bu araştırmada, Florida, Orlando’daki Disney World’de bir günün body-worn video kayıtlarından oluşan FPSI verisetinde eğitildi (Disney, 2012 çalışmasının araştırma ortaklarından biriydi).

FPSI’den ilk kişi görüş açısına sahip video dizileri, Disney World’de bir gün.
İki mimari, karmaşıklık açısından çok farklıdır. Otokodlayıcı, hedef değerleri tahmin etmek yerine görüntüleri yeniden oluşturmak için tasarlanmıştır. PredNet ise dört katmandan oluşur; her katman, convolutional long short-term memory (LSTM) kullanan temsil nöronlarından oluşur.
Katmanlar, daha sonra ağı boyunca hata terimini üretmek için hedefle karşılaştırılan bağlamsal tahminler üretir. Her iki model de denetimsiz öğrenmeyi kullanır.

Otokodlayıcı ve PredNet’in mimarileri.
Her iki sistem de çeşitli donanım ve yazılım yapılandırmalarında test edildi; bunlar arasında CPU’lar (Intel i5-4590, i7-6800K, i5-7600K veya AMD Ryzen-5-3600) ve CPU’lar ile GPU’lar (Intel i5-7600K + NVIDIA GTX-750Ti, i5-7600K + GTX-970, i7-6700K + GTX-1080, i7-7700K + GTX-1080Ti, i7-9700 + RTX-2080Ti, i5-7600K + RTX-2060 super, AMD Ryzen-5-3600 + RTX-2070 super veya i5-9400 + Titan-RTX) bulunuyordu.
Etkileşimli işlem görüntüleyici htop kullanılarak, tüm eğitim işlemlerinin tek bir thread (Intel i7-6800K), dört thread (Intel i5-4590 ve i5-7600K) veya altı thread (AMD Ryzen-5-3600) üzerinde gerçekleştiği doğrulandı.
Eyrelti Noktaları
Otokodlayıcı için, tüm yapılandırmalar boyunca ortalama fark, cuDNN ile veya olmadan önemli değildi. PredNet için sonuçlar daha şaşırtıcıydı; CPU ve GPU eğitiminde kayıp değerlendirme ve kalite arasında önemli farklılıklar vardı.

Dört CPU ve sekiz GPU üzerinde PredNet eğitimi sonuçları; ağ, 5000 video karesinde 250 parti halinde eğitildi ve son 1000 kare (50 parti) için ortalama kayıp gösterildi. cuDNN devre dışı bırakıldı.
Araştırmacılar, ‘Mekanizma belirsiz olsa da, GPU donanımının DNN’lerin eğitimini ilerletme yeteneğine sahip olduğu görünüyor.’ sonucuna vardılar.
Sonuçlar, GPU’ların eyrelti noktalarını daha iyi atlayabileceğini gösteriyor – gradient descent’de bir eğimdeki dibin tarif ettiği alanlar.

Gradient descent’de eğimlerin dibindeki ‘eyrelti noktası’, isminden de anlaşılacağı gibi.
Eyrelti noktaları, bir engel olarak görülse de, son zamanlardaki stokastik gradient descent (SGD) optimizasyonuna ilişkin düşüncede kolayca aşılabilecek bir engel olarak görüldü, ancak yeni makale, GPU’ların yalnızca bu noktaları atlayabileceklerini değil, aynı zamanda eyrelti noktalarının etkisinin yeniden değerlendirilmesi gerektiğini öne sürüyor.












