Hinton kapsül ağından sonraki en son: büyük ölçekli dağıtılmış sinir ağlarını eğitmek için "çevrimiçi damıtma" özelliğini kullanın

Kaynak: arXiv

Derleme: Xiao Qin, Craig

Xin Zhiyuan Rehberi Toronto Üniversitesi'nde derin öğrenme alanında büyük bir inek ve bilgisayar bilimi profesörü olan Geoffrey Hinton, son yıllarda damıtma fikri üzerine bazı son teknoloji çalışmalar yaptı. Bugün Hinton tarafından yazarlardan biri olan Google Brain, DeepMind ve diğer araştırmacılardan biri olarak sunulan daha fazla damıtma çalışmasını tanıtıyoruz: çevrimiçi damıtma yoluyla büyük ölçekli dağıtılmış sinir ağı eğitimi. Bu çalışma, Codistillation kavramını ortaya koymaktadır Büyük ölçekli deneyler sayesinde, kodistilasyon yönteminin doğruluğu artırdığı ve eğitimi hızlandırdığı ve pratikte kullanımının kolay olduğu bulunmuştur.

Kağıt adresi: https://arxiv.org/pdf/1804.03235.pdf

Toronto Üniversitesi'nde derin öğrenme alanında büyük bir inek ve bilgisayar bilimi profesörü olan yüksek profilli "Kapsül ağları" nı önerdikten sonra, damıtma Bu fikir, Bilgiyi Bir Sinir Ağında Damıtma vb. Dahil olmak üzere bazı son teknoloji ürünü çalışmalar yaptı. Bugün Hinton tarafından yazarlardan biri, Google Brain, DeepMind ve diğer araştırmacılar olarak sunulan daha fazla damıtma çalışmasını sunuyoruz: Büyük ölçekli dağıtılmış sinir ağı eğitimi, çevrimiçi damıtma yoluyla gerçekleştirilir. Bu çalışma, Codistillation kavramını ortaya koymaktadır Büyük ölçekli deneyler sayesinde, kodistilasyon yönteminin doğruluğu artırdığı ve eğitimi hızlandırdığı ve pratikte kullanımının kolay olduğu bulunmuştur.

Neredeyse tüm temel modellerle çalışırken Entegrasyon (topluluk) ile Damıtma (damıtma) Ve diğer teknolojiler modelin kalitesini artırabilir. Bununla birlikte, artan test süresi maliyeti (birleştirme için) ve eğitim boru hattının karmaşıklığı (damıtma için) nedeniyle, bu teknolojilerin endüstriyel bir ortamda kullanılması zordur.

Geoffrey Hinton ve diğerleri dahil olmak üzere Google, Google Brain, DeepMind'den araştırmacılar, ICLR 2018'e gönderilen makalelerinde " Çevrimiçi damıtma yoluyla büyük ölçekli dağıtılmış sinir ağı eğitimi "'De, karmaşık çok seviyeli ayarlar veya çok sayıda yeni hiperparametre gerektirmeyen nispeten basit bir damıtma yöntemi varyasyonu tartışılmaktadır.

Araştırmacının öne sürdüğü ilk iddia şudur: Çevrimiçi damıtma, çok büyük veri kümelerine uyum sağlamak ve hızı ikiye katlamak için ek paralellik kullanmamıza olanak tanır. Daha da önemlisi, ek paralelizmin senkron veya asenkron stokastik gradyan iniş için iyi olmadığı noktaya ulaşmış olsak bile, eğitimi yine de hızlandırabiliriz. Ayrık veri alt kümeleri üzerinde eğitilen iki sinir ağı, her bir modeli diğer modelin öngörüsüne katılmaya teşvik ederek bilgiyi paylaşabilir. Bu tahminler başka bir modelin eski bir versiyonundan gelebilir, bu nedenle nadiren iletilen ağırlıklar kullanılarak güvenli bir şekilde hesaplanabilir.

Gazetenin öne sürdüğü ikinci iddia ise: Çevrimiçi damıtma, modelin doğru tahminini daha tekrarlanabilir hale getirebilen uygun maliyetli bir yöntemdir. Araştırmacılar, Criteo Display Ad Challenge veri kümesi, ImageNet ve sinir dili modellemesi için en büyük veri kümesi (6 × 1011 jeton içeren) üzerinde deneyler yaparak bu iddiaları desteklediler.

Codistillation: dağıtılmış SGD'den daha iyi

Ticari değeri olan büyük ölçekli sinir ağı eğitim problemleri için, eğitim süresi büyük ölçüde hızlandırılabilirse veya son modelin kalitesi büyük ölçüde iyileştirilebilirse, uygulayıcılar eğitim için daha fazla makineye yatırım yapmaya istekli olacaklardır. Şu anda, senkronize ve asenkron formları (Chen ve diğerleri, 2016) dahil olmak üzere dağıtılmış stokastik gradyan inişi (SGD), birden fazla birbirine bağlı makinede büyük ölçekli sinir ağı eğitimi için ana algoritmadır. Bununla birlikte, makine sayısı arttıkça, yüksek kaliteli bir modeli eğitmek için gereken zamandaki gelişme derecesi azalacak ve daha fazla makine eklenene kadar eğitim süresi daha fazla kısaltılamaz. Altyapının sınırlamaları ve optimizasyon engelleri birlikte dağıtılmış minibatch SGD'nin ölçeklenebilirliğini sınırlar.

Dağıtılmış SGD'nin kesin ölçeklenebilirlik sınırları, algoritmanın uygulama ayrıntılarına, altyapının özel koşullarına ve donanımın yeteneklerine bağlı olacaktır, ancak deneyimlerimize göre, Gerçek ayarlarda, 100'den fazla GPU çalışanı üzerinde etkili bir şekilde ölçeklendirmek çok zor olabilir. Sinir ağlarını eğitmek için hiçbir algoritma süresiz olarak genişletilemez, ancak dağıtılmış SGD sınırından biraz daha fazla genişletilse bile, çok değerlidir.

Dağıtılmış SGD'ye işçi ekleme sınırına ulaştığımızda, Modelin başka bir kopyasını eğitmek için ek makineler kullanın ve doğruluğu artırmak için bir topluluk oluşturun (Veya üyeleri daha az adımda topluluk halinde eğiterek eğitimin doğruluğunu artırın). Ensemble, pratik uygulamalarda çok yararlı olan daha kararlı ve tekrarlanabilir tahminler yapabilir. Ancak topluluk, test maliyetini artırır ve gecikmeleri veya diğer maliyet kısıtlamalarını etkileyebilir.

Test süresinin maliyetini artırmadan toplulukla neredeyse aynı faydaları elde etmek için, iki aşamalı tek bir model elde etmek için n-yollu bir modelin grubunu damıtabiliriz: İlk olarak, dağıtılmış SGD'nin n-way topluluğunu eğitmek için nM makinesini kullanıyoruz ve ardından öğrenci ağını n-way topluluğu simüle etmek için eğitmek için M makinesini kullanıyoruz. Eğitim sürecine başka bir aşama ekleyerek ve daha fazla makine kullanarak, damıtma genellikle daha yakın bir öğretmen topluluğu modelinin kalite iyileştirmesi karşılığında eğitim süresini ve karmaşıklığını artırır.

Zaman ve boru hattı karmaşıklığı açısından, ek eğitim maliyetinin uygulayıcıların toplu damıtma kullanmasını engellediğine inanıyoruz, ancak bu yöntem temelde sonuçları her zaman iyileştiriyor. Bu yeni çalışmada, kod damıtma dediğimiz basit bir çevrimiçi damıtma varyantını tanımlıyoruz. Codistillation, i-inci modelin kayıp fonksiyonuna diğer modellerin ortalama tahmin edilen değeriyle eşleşecek bir terim ekler ve modelin n kopyasını paralel olarak eğitebilir.

Büyük ölçekli deneyler sayesinde, dağıtılmış SGD ile karşılaştırıldığında, daha fazla bilgi işlem kaynağının etkin bir şekilde kullanılmasına izin vererek, Codistillation, doğruluğu artırır ve eğitim hızını artırır ve hızlanma etkisi bile SGD yöntemine daha fazla işçi eklemenin etkisini aşar. Spesifik olarak, kod damıtma, eğitim süresini artırmadan bir model grubunu damıtmanın faydasını sağlar. Çok aşamalı Distilasyon eğitim süreci ile karşılaştırıldığında, Codistillation'ın pratikte kullanımı da oldukça basittir.

Bu çalışmanın ana katkısı, kod damıtmanın büyük ölçekli deneysel doğrulamasıdır. Diğer bir katkı, kod damıtmanın gerçekleştirilmesi için farklı tasarım seçeneklerini ve düşünceleri keşfetmemiz ve pratik öneriler ortaya koymamızdır.

Genel olarak, uygulamada, kod damıtmanın kalite iyileştirmesinin dikkatlice ayarlanmış çevrimdışı damıtmadan daha az önemli olduğuna inanıyoruz.Daha ilginç bir araştırma yönü, kod damıtmayı dağıtılmış bir eğitim algoritması olarak incelemektir.

Bu yazıda, yürütülen damıtmaya atıfta bulunmak için kod damıtma kullanıyoruz:

  • Tüm modeller aynı mimariyi kullanır;

  • Tüm modelleri eğitmek için aynı veri kümesini kullanın;

  • Herhangi bir model tam olarak birleşmeden önce eğitim sırasında damıtma kaybını kullanın.

  • kod damıtma algoritması

    Deneyler ve sonuçlar

    Dağıtılmış eğitimin ölçeklenebilirliğini incelemek için, önemli bir büyük ölçekli sinir ağı eğitim problemini temsil eden bir göreve ihtiyacımız var. Nöral dil modelleme, ağdaki çok miktarda metin olması ve ayrıca sinirsel dil modellerinin eğitim maliyetinin çok yüksek olabilmesi nedeniyle ideal bir test platformudur. Nöral dil modelleri, dağıtılmış SGD'yi (makine çevirisi ve konuşma tanıma gibi) uygulamak için yaygın olarak kullanılan önemli sorunların temsilcisidir, ancak dil modellemenin değerlendirilmesi ve daha basit boru hatlarının kullanılması daha kolaydır. Potansiyel ölçeklenebilirliği olabildiğince net bir şekilde iyileştirmek için, yeterince büyük bir veri kümesi seçtik, bu da mevcut SGD paralelleştirme stratejisi aracılığıyla bir ifade modeli eğitmek tamamen imkansızdır. Sonuçlarımızın dil modellemesinin belirli özelliklerine özgü olmadığını doğrulamak için, ImageNet'te bazı büyük ölçekli kod damıtma sonuçlarını da doğruladık (Russakovsky ve diğerleri, 2015). Tahminleri azaltma sürecinde kodlamanın faydalarını kanıtlamak ve algoritmanın diğer özelliklerini incelemek için, daha küçük ve daha ucuz deneyler kullanabiliriz, ancak ölçeklenebilirliği incelerken, gerçekten dağıtılmış SGD sınırına ulaşmak önemlidir.

    1. Ortak Tarama üzerine RNN eğitimi için dağıtılmış SGD sınırına ulaşın

    İlk deney grubumuzda amacımız, Ortak Tarama sinir dili modeli ayarımızda SGD'yi etkili bir şekilde kullanabilen maksimum GPU sayısını kabaca belirlemekti. Veri setimiz İngilizce Wikipedia'dan iki kat daha büyük olduğundan, verileri yeniden gözden geçirme konusunda endişelenmenize gerek yoktur, bu da bağımsız kopyaları nispeten büyük ölçekli deneylerde bile daha benzer hale getirecektir. 32 ve 128 çalışanla eşzamansız SGD kullanmaya çalışıyoruz ve gerekirse eğitim hızının GPU hesaplama süresi nedeniyle darboğazdan etkilenmesini sağlamak için parametre sunucularının sayısını artırarak ağırlık atıyoruz. Eğitimin istikrarını korumayı ve RNN'ler ile çok sayıda GPU'nun asenkron SGD'si arasındaki farkı önlemeyi zor bulduk. Bazı çalışan geliştirme planlarını ve farklı öğrenme oranlarını denedik, ancak sonunda senkronizasyon algoritmalarına odaklanmaya karar verdik, bu da sonuçlarımızı altyapımıza ve uygulamaya özgü özelliklere daha az bağımlı hale getirdi. Degradenin kararlılığını belirli koşullardan bağımsız olarak analiz etmek zordur ve uygulama ile altyapı arasındaki farkın eşzamanlı SGD olarak soyutlanması daha kolaydır. Eşzamansızlığın iyi çalışması için daha fazla çaba gerektirse de, eski kademeli değişikliklerin öğrenme ilerlemesi üzerindeki zayıflatıcı etkisi iyi bilinen bir sorundur.Mitliagkas ve diğerleri (2016), eşzamansızlığın etkili bir şekilde momentumu artırabileceğine inanmaktadır, bu yüzden ayırt etmek kolaydır. sebep. Ön deneylerde, kod damıtmadan elde edilen kazançların, temel algoritma olarak asenkron veya senkronize SGD'yi seçmeyle ilgisi yok gibi görünüyor.

    SGD'yi aynı anda senkronize etmek için kullanılabilecek maksimum GPU sayısı, altyapı kısıtlamalarının etkisine, kuyruk gecikmesine ve toplu iş boyutuna bağlıdır. Tamamen senkronize edilmiş bir SGD, çok daha büyük bir bağımsız algoritma grubuna eşdeğerdir. Etkili parti boyutunu artırmak, gradyan tahminindeki gürültüyü azaltabilir, böylece daha büyük bir adım boyutu sağlar ve daha yüksek kaliteli güncellemeler elde etmesi beklenir, böylece daha hızlı yakınsama hızı elde edilir. Etkili ve sınırsız eğitim verileri göz önüne alındığında (256 GPU ile bile, tüm yaygın tarama eğitimi verilerine erişmiyoruz), sezgisel olarak etkili parti boyutunu artırmayı ve nihayetinde adım süresini artırmayı umuyoruz. Dil modelini tamamen senkronize SGD kullanarak Common Crawl'da eğittik ve 128 ve 32, 64, 128 ve 256 GPU'luk toplu iş boyutlarını kullandık. Bu nedenle, etkin parti boyutu 4096 ile 32768 arasında değişmektedir. Genel olarak, öğrenme oranını artırma ihtiyacını beklemeliyiz, çünkü etkin parti boyutunu artırdık, bu nedenle her GPU için 0.1, 0.2 ve 0.4 öğrenme oranlarını denedik. 32 ve 64 GPU'lar için 0.1 en iyi performansı gösterdi çünkü orijinal üç öğrenme oranından hiçbiri 256 GPU için iyi performans göstermedi. Ayrıca, 256'lık en iyi performans öğrenme oranı olan 0.3'lük ek bir orta seviye öğrenme oranı denedik.

    Şekil 1a, her GPU numarası için en uygun öğrenme oranını kullanarak, denediğimiz farklı GPU sayıları için genel adımların bir işlevi olarak doğrulama hatasını kullanır. Sayının (ve dolayısıyla etkin parti boyutunun) artırılması, en iyi doğrulama hatasına ulaşmak için gereken adım sayısını 128 GPU'ya kadar düşürür ve bu noktada ek bir iyileştirme yoktur. Şekil 1b, aynı sayıda GPU'nun doğrulama hatasını Duvar zamanı ile karşılaştırır. Bu özel deneylerde, 128 GPU ile senkronize edilmiş SGD, eğitim süresi ve nihai doğruluk açısından en güçlü temeldir. Bu nedenle, deneyin geri kalanını 128 bit senkronize SGD ile karşılaştırmaya odaklıyoruz ve bir alt rutin olarak senkronize SGD kullanarak kod damıtmayı inceliyoruz, ancak aynı zamanda asenkron algoritmalar için de geçerli.

    2. Eşzamanlı SGD ile CODISTILLATION

    Common Crawl'da dil modelleme için, 128 GPU'lu senkronize SGD, standart dağıtılmış eğitimin en iyi sonuçlarını, en azından denediğimiz konfigürasyonu elde eder ve eğitim süresini iyileştirmek için 256 GPU kullanamıyoruz. Ek GPU'lar temel eşzamanlı SGD'ye yardımcı olmuyor gibi görünse de hipotezimiz, iki set 128 GPU kullanırsak (kontrol noktalarını periyodik olarak değiş tokuş etmek için eşzamanlı SGD kullanırsak) çift yönlü kod damıtma, o zaman ek 128 GPU eğitim süresini artıracaktır.

    Bir problem, kod damıtmanın sadece emin çıktı dağılımlarını cezalandırmanın veya etiketleri yumuşatmanın bir yöntemi olmasıdır, bu yüzden onu iki etiket yumuşatma taban çizgisiyle de karşılaştırıyoruz. Birinci taban çizgisi, kod damıtma kaybı terimini, tek tip dağılıma uyan bir terimle değiştirir ve ikinci temel çizgi, unigram dağılımına uyan bir terim kullanır. Ön deneyde takas hiperparametrelerini manuel olarak ayarlayın. Bir diğer önemli karşılaştırma, her biri 128 GPU ve senkronize SGD'ye sahip iki sinir ağının entegrasyonudur.

    Şekil 2a, 128 GPU'luk iki grubun yanı sıra, senkronize edilmiş SGD'nin eğitim eğrisini ve etiket yumuşatma temelini (her biri 128 GPU kullanır) ve doğrulama çapraz bilgilerini çizmek için 128 GPU taban çizgisini içeren iki örneğin eğitim eğrisini kullanır ve Senkronize eğitim adımları.

    Tartışma ve gelecekteki çalışma

    Damıtma, özellikle sonradan ziyade model eğitim sürecinde çok esnek bir araçtır. Eğitimi hızlandırmak, kaliteyi iyileştirmek, yeni ve daha etkili iletişim yollarını eğitmek ve tahmin kaybını azaltmak için kullanılabilir. Ancak yine de tartışmamız gereken birçok sorun var. Örneğin, birbirimizi kodlamak için temel olarak model eşleştirmeye odaklanıyoruz. Eşleştirme yararlıysa, diğer topolojiler de yararlıdır. Tamamen bağlantılı grafikler modeli çok benzer hale getirebilir, o kadar hızlı ki halka yapısı da ilginç hale gelebilir. Ayrıca, öğretmen modellerinin tahminlerinin doğruluğunun sınırlamalarını da araştırmadık. Öğretmen modellerini pozitif olarak ölçmek mümkün olabilir, böylece çok büyük modeller için bile büyük ölçüde normal eğitim kadar ucuzdurlar.

    Bazı çelişkiler, kötü modeller arasında kod yazmanın bağımsız model eğitiminden daha hızlı öğrenebilmesidir. Öğretmen modellerinin yaptığı hatalar bir dereceye kadar öğrenci modelinin daha iyi yapmasına yardımcı olabilir ve bu, verilerdeki gerçek etiketleri görmekten daha iyidir. Öğretmen modellerinin ideal özelliklerini tanımlamak, gelecekteki çalışmalar için heyecan verici bir yoldur. Bu çalışmada, sadece kontrol noktalarından tahminler çıkarıyoruz, çünkü tahminler tanımlanabilir ve ağın iç yapısından farklı olarak, yanlış bir simetri yoktur. Başka bir deyişle, bir kontrol noktasından daha fazla bilgi çıkarmak, personel iletişim gradyanına dokunmayan aynı problemi tahmin etmekten daha fazlası olabilir ve öğretmen modellerinin daha güçlü bir moderatör olarak kullanılmasına izin verir. Belki de codistillation tabanlı yöntemler, bant genişliği kısıtlı bir ortamda McMahan ve diğerleri (2017) tarafından önerilen ortak öğrenmeyi geliştirmek için kullanılabilir.

    Topluluğa katıl

    Xinzhiyuan AI teknolojisi + endüstri topluluğu işe alımı, AI teknolojisi + endüstri inişiyle ilgilenen öğrencilere hoş geldiniz, gruba katılmak için küçük bir asistan WeChat hesabı ekleyin: aiera2015_1; incelemeyi geçtikten sonra, topluluğa katıldıktan sonra gruba katılmaya davet edeceğiz, grubu değiştirdiğinizden emin olun Açıklamalar (isim-şirket-pozisyon; profesyonel grup incelemesi katıdır, lütfen anlayın).

    Mart ayında seyahat etmek, üç veya beş gün kalmaya uygun yerler!
    önceki
    Kiraz çiçekleri açmış, yemeye hazır! Her türlü mat eleştiri, anında kızınızın kalbini ateşler!
    Sonraki
    Jingdezhen belediye başkanı Liu Feng, Çin Jiangxi Ağına konuk oluyor "Beş türden bir hükümet" kurmak belediye başkanının söyleyecek bir şeyi var
    Sri Lanka'nın nesi bu kadar iyi? Sadece ne zaman gideceğimi biliyorum!
    Merkezi hükümetin yoksulluğun azaltılmasına yönelik ilk özel teftişi, 26 yer ve birimde hangi sorunların ortaya çıktığı
    Kiraz çiçeklerini izlemek için neden Japonya'ya gitmelisiniz! Arkadaş çevrenizi en üst düzeye çıkarmak için bu popüler yerleri kaçırmayın
    Şiir En kibirli şiir, hava Changhong'dan geçiyor
    Gezici çim ekici Liu Haoran yine burada! Birçok yıldızı büyüleyen bir ülke
    "Altı Ciddi Vaka Grubu" grubunu yeniden nasıl bir "büyük dava" getirdi?
    Çin robotik alanında lider durumda ancak yapay zeka araştırması dikey çözümleri desteklemek için yeterli değil
    Kötü güçleri bildirmenin ödülleri olduğu doğru mu? emin olabilirsiniz! Birisi zaten parayı aldı
    Bahar lezzetleri sıkıştırılıyor, bu restoranlar Chunguang'ı neşelendiriyor!
    Az önce, Kamu Güvenliği Bakanlığı 2018 Ulusal İsimler Raporunu yayınladı.Adınız listede mi?
    Google'ın büyük hareketi: arama tamamen yapay zeka tabanlıdır ve anahtar kelimeler olmadan kolayca "rezervasyon" yapabilirsiniz
    To Top