• Buradasın

    Neural Network Sıkıştırma ve Gürültü Dayanıklılığı Sunumu

    youtube.com/watch?v=Ylhu9_YPWas

    Yapay zekadan makale özeti

    • Bu video, Stanford Üniversitesi Elektrik Bölümü'nde doktora yapan Berivan'ın, Deep Learning for Information Geometry workshop'ında sunduğu teknik bir sunumudur. Sunumda neural network sıkıştırma ve gürültü dayanıklılığı konuları ele alınmaktadır.
    • Sunum, büyük boyutlu neural network'lerin yaygın kullanımındaki sorunları ve bunları çözmek için kullanılan sıkıştırma tekniklerini detaylı olarak incelemektedir. Pruning, quantization ve bilgi distillation gibi sıkıştırma yöntemleri açıklanırken, analog depolama cihazlarının avantajları ve zorlukları da ele alınmaktadır. Ayrıca, neural networklerin gürültüye karşı dayanıklılığını artırmak için geliştirilen sparsity, sign protection, adaptive mapping ve adaptive redundancy gibi stratejiler sunulmaktadır.
    • Sunum sonrası soru-cevap bölümünde, PCM (Phase Change Memory) cihazlarının avantajları ve noise karakteristikleri hakkında sorular yanıtlanmakta, bu cihazların dijital modda kullanılışına göre daha az güç tüketimi sağladığı belirtilmektedir.
    00:07Sunum ve Çalışmanın Genel Amacı
    • Stanford Üniversitesi'nden bir PhD öğrencisi, "Deep Learning for Information Geometri" workshop'ında çalışmasını sunacak.
    • Konuşmacı, Stanford Elektrik Bölümünde doktora yapmakta ve neural network compression üzerine çalışmaktadır.
    • Çalışma, NERIS ve Woman in Machine Learning workshoplarında da sunulmuş olup hala devam etmektedir.
    01:33Neural Network'lerin Sorunları
    • Günümüzde neural network'ler çeşitli tasklar için kullanılıyor ve başarılı olmak için on milyondan fazla parametre gerekiyor.
    • Büyük neural network'lerin depolanması özellikle edge device'lar (IoT cihazlar, telefonlar, tabletler) için ciddi bir problem.
    • Büyük neural network'lerin hem train etmek hem de kullanmak için çok fazla zaman ve enerji tüketmesi, özellikle real-time response gerektiren uygulamalarda (otomatik sürüş) önemli bir sorun.
    03:16Çözüm Yaklaşımları
    • Sorunun çözümü iki aşamada gerçekleşiyor: compression ve efficient storage.
    • Compression, var olan büyük neural network'leri daha az bit kullanarak veya daha küçük bir şekilde temsil etmeye çalışmak veya daha küçük bir model train etmektir.
    • Efficient storage, küçük bir network varsa bile en etkili şekilde depolamayı ve en az resource kullanmayı amaçlamaktır.
    04:30Mevcut Çalışmalar ve Yeni Yaklaşım
    • Neural network compression alanında pek çok metot geliştirilmiş olsa da, storage konusunda çok fazla çalışma yok.
    • Mevcut yöntemler genellikle quantization uygulayıp, quantize edilmiş discrete elemanları digital storage device'larda depolamaktır.
    • Bu çalışmada analog storage device'larla çalışılmış ve bunların gürültülü olması nedeniyle neural network'lerin performansı ve noise'e karşı dayanıklılığı incelenmiştir.
    06:26Compression Teknikleri
    • Neural network compression aktif bir alan olup, 1990'larda bile insanlar bununla ilgileniyordu.
    • En yaygın network compression metotlarından biri pruning'dir.
    • Diğer metotlar arasında quantization, knowledge distillation, weight sharing ve low-rank decomposition bulunmaktadır.
    07:43Pruning Tekniği
    • Pruning, büyük bir neural network'ten bazı connection'ları (weight'leri) veya nöronları tamamen silmek anlamına gelir.
    • En yaygın pruning metodu, weight'lerin magnittude'larına bakarak en küçük weight'leri silmektir.
    • ResNet gibi derin neural network'lerde, %90 veya hatta %95'lik pruning yapıldığında bile performans korunabilmektedir.
    10:03Pruning Sonrası Tuning
    • Pruning sonrası performans düşüşü yaşanırsa, geri kalan weight'ler üzerinde re-training yapılabilmektedir.
    • Re-training sırasında, pruning sonrası elde edilen sparsity korunurken, geri kalan weight'ler üzerinde tuning yapılır.
    • Pruning sonrası weight distribution'ın daha da spars hale gelmesi, pruning işleminin tekrarlanabilir olduğunu göstermektedir.
    11:31Neural Network Sıkıştırma Teknikleri
    • 2016'daki Deep Compression makalesi oldukça popülerdir ve son zamanlarda daha ilginç fikirler ortaya çıkmaktadır.
    • Lottery Ticket Hypothesis makalesinde, ağın tamamen rastgele başlatıldığında bile ağın %70-80'ini silip eğitmek bile bazen işe yaramıştır.
    • Magnettee dışında, hangi nöronların performans üzerinde ne kadar etkisi var diye bakarak etkisi az olanları çıkarmak üzerine stratejiler geliştirilmiştir.
    13:46Pruning ve Quantization Teknikleri
    • Pruning genellikle spars network'lerde, özellikle deep ve convolutional neural network'lerde (image task'larında) çok iyi çalışmaktadır.
    • Quantization, computation'ları daha hızlı hale getirmek veya en az bit kullanarak ağları depolamak için kullanılır.
    • Quantization tekniklerinden birini uyguladıktan sonra oluşan hataları, training algoritması kullanarak azaltmak mümkündür.
    16:24Knowledge Distillation
    • Knowledge distillation sadece classification testleri için kullanılır ve iki tane ağ içerir: büyük olan teacher ve daha küçük olan student.
    • Teacher ağının output layerındaki activation function'ı (softmax) için temperature parametresi genellikle 1'den daha büyük seçilir, böylece daha smooth outputlar elde edilir.
    • Student ağının lost function'ında hem cross entropy hem de Kullback-Leibler divergens terimleri bulunur, bu sayede student teacher'a daha yakın output'lar üretmeye zorlanır.
    20:51Analog Storage Avantajları
    • Dijital ortamda storage için quantization yapmak gerekirken, analog storage alternatif bir çözüm olabilir.
    • Analog cihazlarda neural network'ler eğitildiğinde 32 bit ile sınırlı olunmaz ve her şey full precision'da yapılabilir.
    • Analog storage'ın dijital storage'a göre daha fazla kapasitesi olduğu ve çok fazla coding karmaşıklığı gerektirmediği bilinmektedir.
    24:00Analog Cihazların Zorlukları
    • Analog cihazlar dijital cihazlara göre daha kolay çalışmakta, ancak dijital cihazlar daha hassas olmaktadır.
    • Analog cihazların en büyük zorluklarından biri yüksek noise olmasıdır; PCM cihazında verilen voltaj değeri okunurken noise oluşur ve input-output ilişkisini tahmin etmek zordur.
    • Analog cihazlarda power constraint vardır ve kullanılabilecek inputların bir sınırı vardır, örneğin bu projede eksi bir'den bir'e kadar bir range kullanılmıştır.
    26:25Noise Response Problemi
    • PCM array'lerden elde edilen verilerde çok fazla noise vardır ve input-output ilişkisi lineer değildir.
    • Verilerin non-linear olduğu için formüle etmek zordur ve bu ilişki white Gaussian noise varsayımı gibi ideal durumdan uzaktır.
    • Eski çalışmaların varsayımları gerçek durumdan farklıdır çünkü response nazir değil ve variance'da değişiklikler vardır.
    28:24Inverse Function Çözümü
    • Noise problemi için bir inverse function bulup channel response'u birleştirerek ideal bir function elde etmek gerekir.
    • Sadece eksi sıfırvirgüldoksan'dan sıfıra kadar olan invertable gibi görünen kısmına odaklanılmıştır.
    • Herhangi bir wait'i depolamadan önce bulunan inverse functiondan geçirerek, outputun noise-free hali gibi düşünülmektedir.
    30:22Noise Azaltma Stratejileri
    • Noise problemi için aynı değeri çok fazla cihazda depolamak ve ortalamasını almak bir stratejidir, ancak bu çok fazla cihaz kullanmayı gerektirir.
    • Amac, en az sayıda cihaz kullanarak neural network'ün performansını korumaktır.
    • Digital senaryoda 32 bit için 32 cihaz gerekenken, analog cihazlarla bu sayıyı azaltmak istenmektedir.
    31:47Cihaz Sayısı ve Performans İlişkisi
    • Cihaz sayısı arttıkça noise etkisi azalır; bir cihazda depolama noise etkisi yüksekken, yüz cihazda depolama daha az etkili olur.
    • Cihaz sayısı arttıkça response identity'e daha yakın olur, ancak çok fazla cihaz kullanmak istenmemektedir.
    • Tabloda gösterildiği gibi 30 cihaz kullanıldığında accuracy %10'a düşerken, noise olmadan %95'tir, bu da neural network'ün performansının çok azaldığını gösterir.
    35:30Noise Identity Fonksiyonu ve Performans Sorunları
    • Noise identity fonksiyonu kullanıldığında, memory cell sayısı arttıkça performans artıyor ancak 1000 memory cell'e kadar çıkması gerekiyor.
    • Sparsity kullanılarak, sadece 10 memory cell ile bile baseline performans elde edilebiliyor.
    • Küçük weight'ler her zaman küçük değerlere map ediliyor ve bu değerler activation fonksiyonunun düşük değerli bölgede kullanılıyor.
    38:24İşaret Koruma Stratejisi
    • Sparsity nedeniyle ağırlıkların %99'unu activation fonksiyonun düşük değerli bölgesi kullanıyor ve bu işaret değişimi (sign flip) riskine maruz kalıyor.
    • İşaret koruma stratejisi olarak, işaret bilgisini ekstra bir bit kullanarak depolamaya karar verildi.
    • Bu strateji sayesinde 30 memory cell kullanılarak %10'dan %91'e kadar performans artışı elde edildi.
    39:47Adaptif Mapping Stratejisi
    • Adaptif mapping stratejisinde, büyük ve küçük weight'ler için farklı scale faktörleri (alfa) kullanıldı.
    • Büyük weight'ler için standart alfa kullanılırken, küçük weight'ler için daha büyük alfa değeri seçildi.
    • Büyük alfa değeri, küçük weight'leri noise'e karşı koruyarak performansı artırdı.
    41:49Adaptif Redundancy Stratejisi
    • Adaptif redundancy stratejisinde, büyük weight'ler için daha fazla memory cell kullanılmasına karar verildi.
    • Küçük weight'ler için az sayıda (1 gibi) memory cell kullanılırken, büyük weight'ler için 30-40 memory cell kullanılabilir.
    • Ortalama memory cell sayısı %99'u küçük weight'lerden oluştuğu için 1'e yakın kalıyor.
    43:36Sonuçlar ve Karşılaştırma
    • Adaptif mapping ve adaptif redundancy stratejileri birleştirildiğinde, sadece 1 memory cell kullanarak %95'e yakın performans elde edildi.
    • Bu yöntem, sadece 2 PCM array kullanılarak %94,80 accuracy'e ulaşıyor ve bu 4 bit quantization yapmış gibi bir performans sağlıyor.
    • Bu stratejiler, full precision depolama ile birlikte kullanılabilir ve network'un spars olmasından yararlanarak noise'e karşı koruma sağlıyor.
    46:19Kompresyonlu Nöral Ağlarda Stratejiler
    • Aynı stratejiler kompresyonlu nöral ağlarda da kullanılabilir ve basit bir yaklaşım benimsenmiştir.
    • Basene (referans performans) tamamen korunabilir veya çok yakın bir performans elde edilebilir.
    • Öğrenci ağı (student network) eğitilirken ek bir adım olarak gürültü (noise) eklendi ve bu gürültü eklendiğinde daha iyi sonuçlar elde edildi.
    47:36Gürültü Ekleme Sonuçları
    • Gürültü ekleme stratejisi, farklı gürültü türlerinde (Gaussian noise ve PCM'den gelen noise) daha iyi sonuçlar vermiştir.
    • Öğrenci ağını eğitirken gürültü ekleme, ağın gürültüye daha dayanıklı hale gelmesini sağlamıştır.
    48:25Soru-Cevap Oturumu
    • Atılberk, analog hafıza cihazının dijital modda kullanıldığında ne kadar daha verimli olduğunu sormuştur.
    • PCM array'i dijital modda iki bit depolayabildiği için, 32 bit için 16 PCM gerekirken analog modda sadece 2 PCM kullanılmıştır.
    • Bu durum, dijital modda kullanıldığında daha az cihaz kullanıldığı ve muhtemelen daha az güç tüketildiği anlamına gelebilir.
    50:48PCM Karakteristikleri Hakkında Soru
    • Batuhan, PCM karakteristikleri konusunda soru sormuştur.
    • PCM'de analog veri depolarken çeşitli kaynaklardan gelen gürültüler oluşur: veri verilirken, depolama sırasında, beklerken ve okuma sırasında.
    • Tasarım aşamasından gelen gürültü karakteristiklerinin kullanılabilirliği konusunda konuşmacı, collaborator room'a bu fikri ileteceğini belirtmiştir.

    Yanıtı değerlendir

  • Yazeka sinir ağı makaleleri veya videoları özetliyor