Tsinghua Berkeley ICLR Makalesi: Altı Budama Yöntemini Yeniden Düşünmek

Xinzhiyuan Raporu

Ağ Budama Yaygın olarak kullanılan model sıkıştırma yöntemlerinden biridir ve derinlik modelinin ağır hesaplamasını azaltmak için yaygın olarak kullanılır.

Tipik bir budama algoritmasının genellikle üç aşaması vardır; Eğitim (Büyük model), Budama ile İnce ayar . Budama işleminde, belirli standartlara göre, fazla ağırlıklar budanır ve hassasiyeti en üst düzeye çıkarmak için önemli ağırlıklar korunur.

Budama genellikle parametre sayısını büyük ölçüde azaltır, alanı sıkıştırır ve hesaplama miktarını azaltır.

Bununla birlikte, budama yöntemleri iddia ettikleri kadar etkili mi?

ICLR 2019'a gönderilen en son makale, ağ budamayla ilgili tüm güncel makalelerin sonuçlarıyla eşleşiyor gibi görünüyor çelişki , Bu makale, Song Han tarafından ICLR2016'nın en iyi makalesi ödülüne layık görülen "Deep Compression: Compressing Deep Neural Networks with Pruning, Trained Quantization and Huffman Coding" dahil olmak üzere yaygın olarak kullanılan birkaç model budama yönteminin sonuçlarını sorguladı.

Bu makale hızla dikkat çekti ve bazı insanlar endüstride modelleri eğitmek ve dağıtmak için iş akışımızı bile değiştirebileceğini düşündü. Makalenin yazarları UC Berkeley ve Tsinghua Üniversitesi'nden. Sorguladıkları modelin yazarı ile OpenReview hakkında bazı ilginç geri bildirimleri var. İlgilenen okuyucular bunu kontrol edebilir. adres:

https://openreview.net/forum?id=rJlnB3C5Ym

Kağıt adresi:

https://arxiv.org/pdf/1810.05270.pdf

Bu yazıda yazar, ortak inançlarla çelişen birkaç gözlem buldu. En gelişmiş 6 budama algoritmasını kontrol ettiler ve buldular Budanmış modelin ince ayarı, rastgele başlatma ağırlıklarıyla eğitilmiş ağın performansından yalnızca biraz daha iyidir, hatta daha da kötüsü. .

Yazar şöyle dedi: "Önceden tanımlanmış bir hedef ağ mimarisini kullanan budama algoritmaları için, tüm boru hattından kurtulabilir ve hedef ağı doğrudan sıfırdan eğitebilirsiniz. Gözlemlerimiz, birden çok ağ mimarisine, veri kümesine ve görevlere sahip çeşitli budama algoritmaları içindir. Tutarlı."

Yazar, bu bulgunun birkaç sonucu olduğu sonucuna varmıştır:

1) Büyük, aşırı parametreli bir modeli eğitmek, sonuçta verimli bir küçük modelle sonuçlanacaktır. gerekli değil ;

2) Budamadan sonra küçük modeli elde etmek için büyük modelin "önemli" ağırlıklarını elde edin Mutlaka yararlı değil

3) Budanmış yapının kendisi, bir dizi "önemli" ağırlık değil, nihai modelin iyileştirilmesinin nedenidir. Bu, bazı budama algoritmalarının yürütülmüş olarak kabul edilebileceğini gösterir " Ağ yapısı araması "(Ağ mimarisi araması).

Ağ budamasının arkasındaki iki ortak inancı yıkın

Aşırı parametrelendirme, derin sinir ağlarının ortak bir özelliğidir ve yüksek hesaplama maliyetine ve yüksek bellek kullanımına yol açar. Düzeltici bir önlem olarak, ağ budamasının sınırlı hesaplama bütçelerine sahip derin ağların verimliliğini artırabilen etkili bir iyileştirme tekniği olduğu kanıtlanmıştır.

Ağ budama süreci genellikle üç aşamadan oluşur: 1) büyük, aşırı parametreli bir modelin eğitilmesi, 2) eğitilmiş büyük modelin belirli standartlara göre budanması ve 3) budanmış modelin ince ayarının yapılması Kaybedilen performansı yeniden kazanın.

Ağ budamanın üç aşaması

Bu budama prosedürünün arkasında genellikle iki ortak inanç vardır.

Her şeyden önce, İnsanlar geniş, aşırı parametreleştirilmiş bir ağı eğitmeye başlamanın önemli olduğunu düşünüyor Çünkü doğruluktan önemli ölçüde ödün vermeden bir dizi yedekli parametrenin güvenli bir şekilde silinebildiği yüksek performanslı bir model sağlar. Bu nedenle, bu genellikle daha küçük ağları doğrudan sıfırdan eğitmekten daha iyi bir yöntem olarak kabul edilir ve aynı zamanda yaygın olarak kullanılan bir temel yöntemdir.

İkincisi, Budanmış yapı ve ilgili ağırlıkları, nihai etkili modeli elde etmek için gerekli kabul edilir. .

Bu nedenle, mevcut budama tekniklerinin çoğu sıfırdan eğitim yerine ince ayarlı budama modelini seçer. Budamadan sonra tutulan ağırlıklar genellikle kritik olarak kabul edilir, bu nedenle önemli ağırlık setlerinin doğru bir şekilde nasıl seçileceği çok aktif bir araştırma konusudur.

Bu çalışmada, yukarıda belirtilenlerin Ne inanç doğru değil .

En son budama algoritmasının, birden çok ağ mimarisine sahip çoklu veri kümeleri üzerindeki ampirik değerlendirmesine dayanarak, iki şaşırtıcı gözlem yaptık.

Şekil 2: Önceden tanımlanmış ve önceden tanımlanmamış hedef mimariler arasındaki fark

Birincisi, önceden tanımlanmış bir hedef ağ mimarisine sahip bir budama algoritması için (Şekil 2), küçük bir hedef modelin rastgele başlatmadan doğrudan eğitilmesi, budama yöntemiyle elde edilen modelle aynı (veya daha iyi) performansı sağlayabilir. bu şartlar altında, Büyük bir modelle başlamanıza gerek yok , Ancak hedef modeli doğrudan sıfırdan eğitebilirsiniz.

İkinci olarak, önceden tanımlanmış bir hedef ağı olmayan budama algoritmaları için, budama modelini sıfırdan eğitmek, ince ayar ile karşılaştırılabilir veya hatta daha iyi performans sağlayabilir. Bu gözlem, bu budama algoritmaları için, Önemli olan, elde edilen ağırlık değil, elde edilen model mimarisidir. Her ne kadar hedef yapıyı bulmak büyük bir modelin eğitimini gerektiriyor.

Sonuç iddialarımız Mevcut ağ budama algoritmalarını yeniden düşünmek . Eğitimin ilk aşamasında aşırı parametreleştirmenin daha önce düşünüldüğü kadar yararlı olmadığı görülmektedir. Ek olarak, ağırlıkların büyük bir modelden miras alınması zorunlu olarak optimal değildir ve budama kriteri tarafından ağırlıklar "önemli" kabul edilse bile, budanan modeli kötü bir yerel minimumda tutabilir.

Aksine, sonuçlarımız, otomatik budama algoritmalarının değerinin, "önemli" ağırlıkları seçmek yerine etkili yapıları tanımlamada ve örtük mimari araması gerçekleştirmede yattığını gösteriyor. Bu hipotezi dikkatlice tasarlanmış deneylerle doğruladık ve budama modelindeki modellerin etkili model mimarisi için tasarım rehberliği sağlayabileceğini gösterdik.

Sıfırdan küçük bir model nasıl eğitilir

Bu bölümde, küçük bir hedef modelin sıfırdan nasıl eğitileceği açıklanmaktadır.

Hedef Budanmış Mimariler

Önce ağ budama yöntemlerini iki kategoriye ayırıyoruz. Budama boru hattında, hedef budama modelinin mimarisi insanlar (yani, önceden tanımlanmış) veya budama algoritmaları (yani, otomatik) tarafından belirlenebilir (bkz. Şekil 2).

Veri seti, ağ mimarisi ve budama yöntemi

Ağ budama ile ilgili literatürde, CIFAR-10, CIFAR-100 ve ImageNet veri setleri fiili kıyaslamalardır; VGG, ResNet ve DenseNet yaygın ağ mimarileridir.

Önceden tanımlanmış hedef mimariler için üç budama yöntemini değerlendirdik: Li et al. (2017), Luo et al. (2017), He et al. (2017b) ve hedef modelleri otomatik olarak keşfetmek için üç budama yöntemini değerlendirdik. Methods Liu ve diğerleri (2017), Huang ve Wang (2018), Han ve diğerleri (2015).

Eğitim bütçesi

Önemli bir soru, bu budanmış küçük modeli sıfırdan eğitmek için ne kadar zaman harcamalıyız? Küçük modeller bir çağda çok daha az hesaplama gerektirdiğinden, büyük modelleri eğitirken aynı sayıda dönemle eğitim almak haksızlık olabilir.

Deneylerimizde, aynı döneme ait küçük budama modellerini eğitmek için Scratch-E'yi ve aynı miktarda hesaplama bütçesini eğitmek için Scratch-B'yi kullanıyoruz.

Uygulama (Uygulama)

Ayarlarımızı orijinal kağıda olabildiğince yakın yapmak için aşağıdaki protokolü kullandık:

1) Liu ve diğerleri (2017) ve Huang ve Wang (2018) gibi önceki budama yönteminin eğitim ayarları halka açıksa, orijinal uygulamayı kullanın;

2) Li ve diğerleri (2017) ve Han ve diğerleri (2015) gibi daha basit budama yöntemleri için budama yöntemini yeniden uyguladık ve orijinal kağıda benzer sonuçlar aldık;

3) Diğer iki yöntem (Luo vd., 2017; He vd., 2017b), budanmış model halka açıktır, ancak eğitim ayarı yoktur, bu nedenle hedef modeli sıfırdan eğitmeyi seçiyoruz.

Modelin eğitimi için sonuçlar ve kod burada bulunabilir:

https://github.com/Eric-mingjie/rethinking-networks-pruning

Deneyler ve sonuçlar

Bu bölümde, sıfırdan eğitim budama modellerini ve miras alınan ağırlıklara ve ayrıca önceden tanımlanmış ve otomatik olarak keşfedilen hedef mimarilere dayalı ince ayar yöntemlerini karşılaştıran deneysel sonuçları göstereceğiz. Ayrıca, görüntü sınıflandırmadan nesne algılamaya aktarım öğrenme deneylerini de içerir.

Tablo 1: L1 normuna (doğruluk) dayalı kanal budamasının sonuçları. "Budama modeli", büyük bir modelden budama için bir modeldir. Orijinal model ve budama modelinin konfigürasyonları orijinal kağıttan yapılmıştır.

Tablo 2: ThiNet'in sonuçları (doğruluğu). "VGG-GAP" ve "ResNet50-30%", ThiNet'te yapılandırılan budama modelini belirtir. Bu makaledeki yöntem ile orijinal kağıt arasındaki farklı çerçevelerin etkisine uyum sağlamak için, budama olmaksızın büyük modele göre göreceli doğruluk düşüşünü karşılaştırdık. Örneğin, VGG-Conv budanmış model için -1.23'tür, bu da soldaki 71.03 doğruluğunun azaldığı anlamına gelir, bu da orijinal kağıtta budanmamış büyük VGG-16'nın bildirilen doğruluğu anlamına gelir.

Tablo 3: Regresyon tabanlı özellik yeniden yapılandırma sonuçları (doğruluk). Tablo 2'ye benzer şekilde, göreceli doğruluk düşüşünü, budama olmaksızın büyük modele göre karşılaştırıyoruz.

Tablo 4: Ağ zayıflamasının sonuçları (doğruluk) "Budama oranı" tüm ağdaki budama kanallarının toplam yüzdesini gösterir. Her model, orijinal kağıtla aynı oranı kullanır.

Tablo 5: Seyrek yapı kullanılarak seçilen artık blokların budama sonuçları (doğruluğu). Orijinal kağıtta ince ayara gerek yoktur, bu nedenle "ince ayar" sütun yerine "budanmış" bir sütun vardır

Tablo 6: Yapılandırılmamış budamanın sonuçları (doğruluğu) Budama oranı, tüm evrişim ağırlık setlerinde budama parametrelerinin oranını gösterir.

Tablo 7: Algılama görevleri için kullanılan budama sonuçları (mAP). Prune-C, budama sınıflandırmasının eğitim öncesi ağırlığını ifade eder ve Prune-D, ağırlık algılama görevine aktarıldıktan sonra budama anlamına gelir. Scratch-E / B, sınıflandırma budama modelini sıfırdan eğitmek ve algılama görevine geçmek anlamına gelir.

Kısacası, önceden tanımlanmış bir hedef mimari için budama yöntemi için, küçük modeli eğitmek için büyük modelle (Scratch-E) aynı sayıda yinelemenin kullanılması genellikle üç adımlı çıktı modeliyle aynı doğruluğu elde etmek için yeterlidir. Ek olarak, hedef mimari önceden tanımlanmıştır.Pratik uygulamalarda, insanlar genellikle küçük modelleri doğrudan sıfırdan eğitmeye daha isteklidir.

Ek olarak, büyük bir modelinkine eşdeğer bir hesaplama bütçesine (hesaplama gücü) sahipseniz, sıfırdan eğitilen modelin performansı ince ayarlı modellerde daha da yüksek olabilir.

tartışma ve sonuç

Gelecekte, özellikle önceden tanımlanmış hedeflerle mimari budama için budama yöntemlerini değerlendirmek için nispeten yüksek performanslı temel yöntemlerin kullanılması gerektiğini öneriyoruz. Yüksek doğruluğa ek olarak, önceden tanımlanmış bir hedef modeli sıfırdan eğitmek, geleneksel ağ budamaya göre aşağıdaki avantajlara sahiptir:

Model daha küçük olduğundan, modeli eğitmek için daha az GPU kaynağı kullanılabilir ve orijinal büyük modeli eğitmekten daha hızlı olabilir.

Bazen katman katman ince ayar yapılması gereken ve / veya farklı ağ mimarileri için özelleştirilmesi gereken budama standartları ve prosedürlerini uygulamaya gerek yoktur.

Budama sürecine dahil olan diğer hiperparametreleri ayarlamaktan kaçınabilirsiniz.

Sonuçlarımız, verimli mimariler veya seyrek desenler bulmak için budama yöntemlerini kullanabilir; bu, otomatik budama yöntemleriyle gerçekleştirilebilir. Ek olarak, bazı durumlarda geleneksel budama yöntemleri, sıfırdan eğitime göre çok daha hızlıdır, örneğin:

Büyük ölçekli önceden eğitilmiş modeller sağlanmıştır ve eğitim bütçesi küçüktür.

Farklı boyutlarda birden fazla model elde etmek gerekir, bu durumda büyük bir model eğitilebilir ve farklı ölçeklerde budanabilir.

Özetle, deneylerimiz, küçük bir budama modelini sıfırdan eğitmenin neredeyse her zaman tipik bir "eğitim-budama-ince ayar" işlemiyle elde edilene eşit veya bundan daha yüksek bir doğruluk sağlayabileceğini göstermektedir. Bu, aşırı parametreleştirmenin gerekliliği konusundaki anlayışımızı değiştirdi ve verimli mimariler bulmak ve mimari tasarım için rehberlik sağlamak için kullanılabilecek otomatik budama algoritmalarının değerini daha da kanıtladı.

Kağıt adresi:

Ağ Kesmenin Değerini Yeniden Düşünmek

https://arxiv.org/pdf/1810.05270.pdf

Xinzhiyuan AI DÜNYA 2018

Dünya Yapay Zeka Zirvesi Tam inceleme

Xinzhiyuan, 20 Eylül'de Pekin'deki Ulusal Kongre Merkezi'nde AI WORLD 2018 Dünya Yapay Zeka Zirvesi'ne ev sahipliği yaptı. Makine zekası ve insan kaderi.

Xinzhiyuan AI World 2018'in büyük olayını gözden geçirin:

IQIYI

Sabah: https://www.iqiyi.com/v_19rr54cusk.html

Öğleden sonra: https://www.iqiyi.com/v_19rr54hels.html

Sina:

Sichuan güveci neden bu kadar kokulu? Alttaki malzemede gizli olan sır "açığa çıkar" ...
önceki
Enerji krizi + yeni emisyon düzenlemeleri, 1970'lerin klasik arabaları nelerdir?
Sonraki
Github2.2K yıldız PyTorch kaynak listesi: 450 NLP / CV / SP, kağıt uygulaması, öğreticiler, örnekler
"Nerdesin koca, doğurmak üzereyim!"
Ücretsiz klinik hizmeti Fuxing Medical Huzurevine girdi
Mercedes-Benz'in satışları artıyor Bir 4S mağazasından nasıl bir cevap bulduk?
Pekin-Guangdong savaşı ve Su-Shanghai çatışması Süper Lig'in bu turunu patlattı, SIPG Wanda'nın rekorunu kırdı ve bir parti kazanmak için koştu.
AlphaGo gibi ajanlar nasıl yapılır? Markov zincirini anlamalısın
1,1 milyar genç işitme kaybıyla karşı karşıya, siz de onlardan biri olabilirsiniz!
Chuangku'nun liderliğinde, üç ana akım küçük SUV'u nasıl seçmelisiniz?
"Derin Öğrenme Devrimi": GAN İnanılmazdım ve şimdi insanlar çok aceleci AI
Yeni yılın başında Jingdezhen'de 200'den fazla önde gelen kadro nereye gitti ...
Aynı zamanda, 100,000 yuan değerinde 7 koltuklu bir aile arabası üzerinde çalışıyor.Kim F7 veya Song MAX'ı satın almaya değer?
Kahve kültürü olan o kadar çok ülke var ki ona neden kahve krallığı denilsin?
To Top