AWS PlatoBlockchain Veri Zekasındaki MosaicML Composer ile derin öğrenme eğitimi süresini ve maliyetini azaltın. Dikey Arama. Ai.

AWS'de MosaicML Composer ile derin öğrenme eğitimi süresini ve maliyetini azaltın

Geçtiğimiz on yılda gördük AWS müşterileri tarafından muazzam bir hızla benimsenen derin öğrenme (DL) bilimi. DL modellerinin çok sayıda ve ortaklaşa eğitilmiş parametreleri, görüntü ve konuşma analizi, doğal dil işleme (NLP), zaman serisi işleme ve daha fazlasını içeren çok sayıda müşteri kullanım durumunda iyileştirmeler getiren geniş bir temsil kapasitesine sahiptir. Bu yazıda, özellikle DL eğitiminde yaygın olarak bildirilen zorlukları ve açık kaynak kitaplığın nasıl çalıştığını vurguluyoruz. MosaicML Oluşturucu bunların çözülmesine yardımcı olur.

DL eğitiminin zorluğu

DL modelleri, iç içe geçmiş bir for döngüsünde yinelemeli olarak eğitilir. Bir döngü, eğitim veri kümesi öbeği boyunca yinelenir ve gerekirse bu döngü tüm veri kümesi üzerinde birkaç kez tekrarlanır. DL eğitimi üzerinde çalışan ML uygulayıcıları çeşitli zorluklarla karşı karşıyadır:

  • Eğitim süresi veri boyutuyla birlikte artar. Sürekli büyüyen veri kümeleriyle birlikte eğitim süreleri ve maliyetler de artıyor ve bilimsel keşiflerin ritmi yavaşlıyor.
  • DL komut dosyaları genellikle ortak kod gerektirir; özellikle de veri kümesini mini gruplara ve eğitimi dönemlere bölen yukarıda bahsedilen double for döngü yapısı.
  • Seçim paradoksu: Çeşitli eğitim optimizasyon makaleleri ve kütüphaneleri yayınlanıyor, ancak hangisinin önce test edileceği ve bunların etkilerinin nasıl birleştirileceği belli değil.

Son birkaç yılda birçok açık kaynak kütüphanesi ortaya çıktı. keras, PyTorch Yıldırım, Sarılma Yüz Transformatörleri, ve Ray Treni Özellikle kod ayrıntılarını azaltarak ve böylece sinir ağlarının programlanma şeklini basitleştirerek DL eğitimini daha erişilebilir hale getirmeye çalışıyoruz. Bu kitaplıkların çoğu geliştirici deneyimine ve kod kompaktlığına odaklanmıştır.

Bu yazıda, DL eğitimine farklı bir bakış açısı getiren yeni bir açık kaynak kütüphane sunuyoruz: MosaicML Oluşturucu öncelikli amacı algoritmik inovasyon yoluyla sinir ağı eğitim komut dosyalarını daha hızlı hale getirmek olan hız merkezli bir kütüphanedir. Bulut DL dünyasında, hıza odaklanmak akıllıca olacaktır çünkü bilgi işlem altyapısı genellikle kullanım başına, hatta saniyesine kadar ödeme yapılır. Amazon SageMaker Eğitimi—ve hızdaki iyileştirmeler para tasarrufuna dönüşebilir.

Tarihsel olarak, DL eğitimini hızlandırmak çoğunlukla model yinelemelerini paralel olarak hesaplayan makinelerin sayısını artırarak yapılıyordu. veri paralellik. Her ne kadar veri paralelliği bazen eğitimi hızlandırsa da (aşağıda vurgulandığı gibi yakınsamayı bozduğu için garanti edilmez) Goyal ve ark.), genel iş maliyetini azaltmaz. Uygulamada, dağıtılmış DL makineleri üst düzey ağ iletişimi ve sunucu içi GPU ara bağlantısıyla donatıldığından, makineler arası iletişim ek yükü ve daha yüksek makine birim maliyeti nedeniyle bunu artırma eğilimindedir.

MosaicML Composer veri paralelliğini desteklese de temel felsefesi veri paralelliği hareketinden farklıdır. Amacı, bilim uygulama düzeyinde yenilik yaparak daha fazla makine gerektirmeden eğitimi hızlandırmaktır. Bu nedenle AWS'nin kullandıkça öde ücret yapısı sayesinde maliyet tasarrufu sağlayacak şekilde zaman tasarrufu sağlamayı amaçlamaktadır.

Açık kaynak kitaplığı MosaicML Composer'la tanışın

MosaicML Composer, en son algoritmaları getirmeyi ve bunları model eğitimini hızlandıran ve model kalitesini artırmaya yardımcı olan yeni tarifler halinde birleştirmeyi kolaylaştırmak için özel olarak tasarlanmış açık kaynaklı bir DL eğitim kitaplığıdır. Bu yazının yazıldığı sırada PyTorch'u destekliyor ve adı verilen 25 teknik içeriyor. yöntemleri MosaicML dünyasında standart modeller, veri kümeleri ve karşılaştırmalarla birlikte

Besteci: pip aracılığıyla kullanılabilir:

pip install mosaicml

Composer'da uygulanan hızlandırma tekniklerine işlevsel API ile erişilebilir. Örneğin, aşağıdaki kod parçası aşağıdakileri uygular: Bulanıklaştırma Havuzu TorchVision ResNet'e teknik:

import logging

from composer import functional as CF
import torchvision.models as models
logging.basicConfig(level=logging.INFO)

model = models.resnet50()
CF.apply_blurpool(model)

İsteğe bağlı olarak şunları da kullanabilirsiniz: Eğitmen kendi teknik kombinasyonunuzu oluşturmak için:

from composer import Trainer
from composer.algorithms import LabelSmoothing, CutMix, ChannelsLast

trainer = Trainer(
    model=.. # must be a composer.ComposerModel
    train_dataloader=...,
    max_duration="2ep",  # can be a time, a number of epochs or batches
    algorithms=[
        LabelSmoothing(smoothing=0.1),
        CutMix(alpha=1.0),
        ChannelsLast(),
    ]
)

trainer.fit()

Composer'da uygulanan yöntem örnekleri

Composer'da bulunan yöntemlerden bazıları, örneğin görüntü büyütme teknikleri gibi bilgisayarlı görmeye özeldir. ColOut, Kesmekya da Aşamalı Görüntü Yeniden Boyutlandırma. Diğerleri dizi modellemeye özeldir, örneğin Sıra Uzunluğu Isınma or AliBi. İlginç bir şekilde, birçoğu kullanım durumundan bağımsızdır ve bilgisayar görüşü ve NLP'nin ötesinde çeşitli PyTorch sinir ağlarına uygulanabilir. Bu genel sinir ağı eğitim hızlandırma yöntemleri şunları içerir: Etiket Yumuşatma, Seçici Arka Pervane, Stokastik Ağırlık Ortalaması, Katman Dondurma, ve Keskinliğin Farkında Minimizasyon (SAM).

MosaicML ekibi tarafından özellikle etkili bulunan birkaç tanesine derinlemesine bakalım:

  • Keskinliğin Farkında Minimizasyon (SAM) Her optimizasyon adımı için bir gradyanı iki kez hesaplayarak hem model kaybı fonksiyonunu hem de keskinliğini en aza indiren bir optimize edicidir. Verimi cezalandıracak ekstra işlemi sınırlamak için SAM düzenli aralıklarla çalıştırılabilir.
  • Doğrusal Önyargılarla Dikkat (ALiBi)esinlenerek Basın ve ark., Transformers modellerine özeldir. Konumsal yerleştirme ihtiyacını ortadan kaldırır ve bunların yerine dikkat ağırlıklarına yönelik öğrenilmemiş bir önyargıyı koyar.
  • Seçici Arka Pervaneesinlenerek Jiang ve ark., geriye yayılımı (hata eğimini takip ederek model ağırlıklarını iyileştiren algoritmalar) yalnızca yüksek kayıp fonksiyonuna sahip kayıtlar üzerinde çalıştırmanıza olanak tanır. Bu yöntem, gereksiz bilgi işlemden kaçınmanıza ve verimi artırmanıza yardımcı olur.

Bu tekniklerin tek bir kompakt eğitim çerçevesinde mevcut olması, makine öğrenimi uygulayıcıları için önemli bir katma değerdir. Ayrıca değerli olan, MosaicML ekibinin her teknik için ürettiği, test ettiği ve derecelendirdiği eyleme geçirilebilir saha geri bildirimidir. Ancak bu kadar zengin bir araç kutusu göz önüne alındığında şunu merak edebilirsiniz: Hangi yöntemi kullanmalıyım? Birden fazla yöntemin kullanımını birleştirmek güvenli midir? MosaicML Explorer'a girin.

MosaicML Gezgini

MosaicML ekibi, DL eğitim yöntemlerinin değerini ve uyumluluğunu ölçmek için kâşifBeş veri kümesi ve yedi model üzerinde düzinelerce DL eğitim deneyini gösteren türünün ilk örneği olan canlı kontrol paneli. Kontrol paneli resimleri pareto optimal sınırı maliyet/zaman/kalite değiş tokuşunda bulunur ve en yüksek puanı alan yöntem kombinasyonlarına göz atmanıza ve bunları bulmanıza olanak tanır. yemek tarifleri belirli bir model ve veri kümesi için MosaicML dünyasında. Örneğin, aşağıdaki grafikler, 125M parametreli bir GPT2 eğitimi için, 24.11 şaşkınlığını koruyan en ucuz eğitimin AliBi, Sıra Uzunluğu Isınma ve Ölçek Çizelgesi birleştirilerek elde edildiğini ve AWS Cloud'da yaklaşık 145.83 ABD doları tutarında bir maliyete ulaştığını göstermektedir! Ancak lütfen bu maliyet hesaplamasının ve bu yazıda takip edenlerin yalnızca EC2 isteğe bağlı hesaplamaya dayandığını, ortamınıza ve iş gereksinimlerinize bağlı olarak diğer maliyet hususlarının geçerli olabileceğini unutmayın.

GPT-2 eğitimi için MosaicML Explorer'ın ekran görüntüsü

AWS'de Composer ile dikkate değer başarılar

MosaicML ekibi, Composer kitaplığını AWS'de çalıştırarak çok sayıda etkileyici sonuç elde etti. MosaicML ekibi tarafından bildirilen maliyet tahminlerinin yalnızca isteğe bağlı işlem ücretinden oluştuğunu unutmayın.

Sonuç

Dizüstü bilgisayarınızdan GPU donanımlı büyük bulut sunucularına kadar herhangi bir uyumlu platformda Composer'ı kullanmaya başlayabilirsiniz. Kütüphane sezgisel özelliklere sahiptir Hoş Geldiniz Turu ve Başlamak dokümantasyon sayfaları. Composer'ı AWS'de kullanmak, Composer maliyet optimizasyon bilimini, Spot bilgi işlem (Amazon EC2, Amazon Adaçayı Yapıcı), Tasarruf Planı, SageMaker otomatik model ayarı, ve dahası. MosaicML ekibi bir öğretici AWS'de Composer'ın. MLPerf sonuçlarını nasıl yeniden oluşturabileceğinizi ve AWS'de ResNet-50'yi yalnızca 76.6 dakikada standart %1 ilk 27 doğrulukla nasıl eğitebileceğinizi adım adım gösterir.

Eğitimi çok yavaş olan sinir ağlarıyla sorun yaşıyorsanız veya DL eğitim maliyetlerinizi kontrol altında tutmak istiyorsanız AWS'de MosaicML'yi deneyin ve ne oluşturduğunuzu bize bildirin!


yazarlar hakkında

AWS PlatoBlockchain Veri Zekasındaki MosaicML Composer ile derin öğrenme eğitimi süresini ve maliyetini azaltın. Dikey Arama. Ai.Bandiş Şah MosaicML'de Mühendislik Müdürü olup, verimli derin öğrenme ile büyük ölçekli dağıtılmış sistemler ve performanslı bilgi işlem arasında köprü kurmak için çalışmaktadır. Bandish, makine öğrenimi ve kurumsal uygulamalara yönelik sistemler oluşturma konusunda on yıldan fazla deneyime sahiptir. Arkadaşları ve ailesiyle vakit geçirmekten, yemek yapmaktan ve ilham almak için Star Trek'i tekrar tekrar izlemekten hoşlanıyor.

AWS PlatoBlockchain Veri Zekasındaki MosaicML Composer ile derin öğrenme eğitimi süresini ve maliyetini azaltın. Dikey Arama. Ai.Olivier Cruchant Fransa merkezli AWS'de Makine Öğrenimi Uzmanı Çözüm Mimarıdır. Olivier, küçük girişimlerden büyük kuruluşlara kadar AWS müşterilerinin üretim düzeyinde makine öğrenimi uygulamaları geliştirmesine ve dağıtmasına yardımcı olur. Boş zamanlarında araştırma makalelerini okumaktan ve arkadaşları ve ailesiyle vahşi doğayı keşfetmekten hoşlanır.

Zaman Damgası:

Den fazla AWS Makine Öğrenimi