Makine öğrenimi (ML) uygulamalarının devreye alınması karmaşıktır ve genellikle hiper ölçeklendirme yeteneği gerektirir ve ultra düşük gecikme gereksinimlerine ve katı maliyet bütçelerine sahiptir. Dolandırıcılık tespiti, ürün önerileri ve trafik tahmini gibi kullanım örnekleri, iş başarısı için milisaniyelerin önemli ve kritik olduğu örneklerdir. Katı hizmet düzeyi sözleşmelerinin (SLA'lar) karşılanması gerekir ve tipik bir talep, ön işleme, veri dönüştürme, özellik mühendisliği, model seçim mantığı, model toplama ve son işleme gibi birden çok adım gerektirebilir.
Makine öğrenimi modellerini optimize edilmiş maliyet ve bilgi işlem verimliliğiyle ölçekte dağıtmak göz korkutucu ve külfetli bir görev olabilir. Her modelin, harici veri kaynaklarının yanı sıra temel bilgi işlem kaynaklarının CPU/GPU gücü gibi çalışma zamanı ortamına dayalı kendi yararları ve bağımlılıkları vardır. Bir uygulama, tek bir çıkarım isteğine hizmet vermek için birden fazla makine öğrenimi modeli gerektirebilir. Belirli senaryolarda, bir istek birden fazla model arasında akabilir. Herkese uyan tek bir yaklaşım yoktur ve makine öğrenimi uygulayıcılarının, yinelenen makine öğrenimi barındırma zorluklarını ele almak için denenmiş ve kanıtlanmış yöntemler araması önemlidir. Bu, makine öğrenimi modeli barındırma için tasarım modellerinin gelişmesine yol açtı.
Bu gönderide, makine öğrenimi uygulamaları oluşturmak için yaygın tasarım modellerini keşfediyoruz. Amazon Adaçayı Yapıcı.
Makine öğrenimi uygulamaları oluşturmak için tasarım kalıpları
Makine öğrenimi uygulamalarını barındırmak için kullanılacak aşağıdaki tasarım modellerine bakalım.
Tek model tabanlı makine öğrenimi uygulamaları
Makine öğrenimi kullanım durumunuz bir isteği yerine getirmek için tek bir model gerektirdiğinde bu harika bir seçenektir. Model, giriş trafiğine dayalı olarak ölçeklenebilme özelliğine sahip, özel olarak ayrılmış bir bilgi işlem altyapısı üzerinde devreye alınır. Bu seçenek, istemci uygulamasının düşük gecikmeli (milisaniye veya saniye düzeyinde) çıkarım gereksinimi olduğu durumlarda da idealdir.
Çoklu model tabanlı makine öğrenimi uygulamaları
Barındırmayı daha uygun maliyetli hale getirmek için bu tasarım deseni, aynı kiracı altyapısında birden çok modeli barındırmanıza olanak tanır. Birden çok makine öğrenimi modeli, en çok kullanılan makine öğrenimi modellerinin bellekte önbelleğe alınması da dahil olmak üzere ana bilgisayar veya kapsayıcı kaynaklarını paylaşabilir, bu da bellek ve bilgi işlem kaynaklarının daha iyi kullanılmasına neden olur. Dağıtmayı seçtiğiniz model türlerine bağlı olarak, model ortak barındırma aşağıdaki yöntemleri kullanabilir:
- Çok modelli barındırma – Bu seçenek, tek bir uç noktada paylaşılan bir sunum kapsayıcısı kullanarak birden çok modeli barındırmanıza olanak tanır. Bu özellik, paylaşılan bir sunum kapsayıcısı aracılığıyla sunabileceğiniz çok sayıda benzer modele sahip olduğunuzda ve tüm modellere aynı anda erişmeniz gerekmediğinde idealdir.
- Çok konteynerli barındırma – Bu seçenek, benzer kaynak gereksinimlerine sahip farklı hizmet yığınlarında çalışan birden çok modeliniz olduğunda ve tek tek modellerin uç nokta bulut sunucularının tam kapasitesini kullanmak için yeterli trafiği olmadığında idealdir. Çok kapsayıcı barındırma, tek bir uç noktada farklı modeller veya çerçeveler kullanan birden çok kapsayıcı dağıtmanıza olanak tanır. Modeller, kendi bağımsız sunum yığınıyla tamamen heterojen olabilir.
- Model toplulukları – Birçok üretim kullanım durumunda, genellikle belirli bir alt modele girdi besleyen birçok yukarı akış modeli olabilir. Toplulukların yararlı olduğu yer burasıdır. Topluluk kalıpları, bir veya daha fazla temel modelden elde edilen çıktıların karıştırılmasını içerir. genelleme hatası tahminin. Temel modeller farklı olabilir ve farklı algoritmalar tarafından eğitilebilir. Model toplulukları, tek modellerden daha iyi performans gösterebilir çünkü topluluk yaklaşımı kullanıldığında modelin tahmin hatası azalır.
Aşağıdakiler, topluluk modellerinin yaygın kullanım durumları ve bunlara karşılık gelen tasarım modeli diyagramlarıdır:
- dağıt-topla – Bir saçılma-toplama modelinde, bir dizi modele bir çıkarım talebi yönlendirilir. Daha sonra yanıtları toplamak ve bunları tek bir çıkarım yanıtına damıtmak için bir toplayıcı kullanılır. Örneğin, bir görüntü sınıflandırma kullanım durumu, görevi gerçekleştirmek için üç farklı model kullanabilir. Dağılım toplama modeli, üç farklı model üzerinde yürütülen çıkarımlardan elde edilen sonuçları birleştirmenize ve en olası sınıflandırma modelini seçmenize olanak tanır.
- model agregası – Bir toplama modelinde, birden çok modelden elde edilen çıktıların ortalaması alınır. Sınıflandırma modellerinde, en çok oyu alan sınıfı belirlemek için birden fazla modelin tahminleri değerlendirilir ve topluluğun nihai çıktısı olarak ele alınır. Örneğin, bir meyve kümesini portakal veya elma olarak sınıflandırmak için iki sınıflı bir sınıflandırma probleminde, iki model bir portakalı ve bir model bir elmayı oylarsa, o zaman toplam çıktı bir portakal olacaktır. Toplama, tek tek modellerdeki yanlışlıkla mücadeleye yardımcı olur ve çıktıyı daha doğru hale getirir.
- Dinamik seçim – Topluluk modelleri için başka bir model, verilen girdi nitelikleri için model seçimini dinamik olarak gerçekleştirmektir. Örneğin, meyve resimlerinin belirli bir girişinde, giriş bir portakal içeriyorsa, portakallara özel olduğundan A modeli kullanılacaktır. Giriş bir elma içeriyorsa, elmalar için özel olduğundan B modeli kullanılacaktır.
- Seri çıkarım ML uygulamaları – Çıkarım ardışık düzeni olarak da bilinen bir seri çıkarım modeliyle, kullanım senaryolarının, çıkarımlar oluşturmak için önceden eğitilmiş bir makine öğrenimi modelini çağırmadan önce gelen verileri önceden işleme gereksinimleri vardır. Ek olarak, bazı durumlarda, oluşturulan çıkarımların daha fazla işlenmesi gerekebilir, böylece aşağı akış uygulamaları tarafından kolayca tüketilebilirler. Bir çıkarım ardışık düzeni, tahminler için kullanılan çıkarım isteği verilerini işlemek için model eğitimi sırasında kullanılan ön işleme kodunun aynısını yeniden kullanmanıza olanak tanır.
- İş mantığı – Makine öğrenimini üretmek her zaman iş mantığını içerir. İş mantığı kalıpları, makine öğrenimi modeli çıkarımı olmayan bir makine öğrenimi görevini gerçekleştirmek için gereken her şeyi içerir. Bu, modelin şu adresten yüklenmesini içerir: Amazon Basit Depolama Hizmeti (Amazon S3), örneğin girişi doğrulamak için veritabanı aramaları, özellik deposundan önceden hesaplanmış özelliklerin alınması vb. Bu iş mantığı adımları tamamlandıktan sonra, girdiler ML modellerine geçirilir.
makine öğrenimi çıkarım seçenekleri
Model dağıtımı için kullanım durumunuzdan geriye doğru çalışmak önemlidir. Tahminin sıklığı nedir? Uygulamanıza canlı trafik ve müşterilerinize gerçek zamanlı yanıt bekliyor musunuz? Aynı kullanım durumu için farklı veri alt kümeleri için eğitilmiş birçok modeliniz var mı? Tahmin trafiği dalgalanıyor mu? Çıkarımda gecikme bir endişe kaynağı mı? Bu ayrıntılara bağlı olarak, önceki tüm tasarım modelleri aşağıdaki dağıtım seçenekleri kullanılarak uygulanabilir:
- Gerçek zamanlı çıkarım – Gerçek zamanlı çıkarım, gerçek zamanlı, etkileşimli, düşük gecikmeli gereksinimlerinizin olduğu çıkarım iş yükleri için idealdir. Gerçek zamanlı makine öğrenimi çıkarımı iş yükleri, bir uygulamanın tek bir isteğe hizmet vermek için yalnızca bir makine öğrenimi modeli gerektirdiği tek model tabanlı bir makine öğrenimi uygulamasını veya bir uygulamanın tek bir isteğe hizmet vermek için birden çok makine öğrenimi modeli gerektirdiği çok model tabanlı bir makine öğrenimi uygulamasını içerebilir. rica etmek.
- Gerçek zamana yakın (eşzamansız) çıkarım – Gerçek zamana yakın çıkarım ile gelen istekleri sıraya alabilirsiniz. Bu, yüzlerce MB olan girdilerde çıkarım yapmak için kullanılabilir. Neredeyse gerçek zamanlı olarak çalışır ve kullanıcıların girdiyi çıkarım için kullanmasına ve bir S3 kovasından uç noktadan çıktıyı okumasına olanak tanır. Daha uzun ön işleme süreleri gerektiren büyük yüklerin olduğu NLP ve bilgisayarla görme durumlarında özellikle kullanışlı olabilir.
- Toplu çıkarım – Toplu çıkarım, büyük bir veri kümesinde çevrimdışı çıkarım yapmak için kullanılabilir. Çevrimdışı çalıştığı için toplu çıkarım en düşük gecikmeyi sunmaz. Burada çıkarım isteği, bir toplu çıkarım işinin planlanmış veya olay tabanlı tetikleyicisiyle işlenir.
- Sunucusuz çıkarım – Sunucusuz çıkarım, trafik patlamaları arasında boşta kalma dönemleri olan ve bir boşta kalma süresinden sonraki ilk çalıştırma için fazladan birkaç saniyelik gecikmeyi (soğuk başlatma) tolere edebilen iş yükleri için idealdir. Örneğin, formları işlemek veya belgelerden verileri analiz etmek için bir sohbet robotu hizmeti veya bir uygulama. Bu durumda, çıkarım isteklerinin hacmine göre işlem kapasitesini otomatik olarak sağlayabilen ve ölçeklendirebilen bir çevrimiçi çıkarım seçeneği isteyebilirsiniz. Ve boşta kalma süresi boyunca, sizden ücret alınmaması için bilgi işlem kapasitesini tamamen kapatabilmelidir. Sunucusuz çıkarım, bilgi işlem kaynaklarını otomatik olarak başlatarak ve trafiğe bağlı olarak bunları ölçeklendirerek sunucuları seçme ve yönetmenin farklılaştırılmamış ağır yükünü ortadan kaldırır.
Doğru makine öğrenimi çıkarım seçeneğini belirlemek için uygunluk işlevlerini kullanın
Doğru barındırma seçeneğine karar vermek, uygulamalarınız tarafından oluşturulan son kullanıcıları etkilediği için önemlidir. Bu amaçla, kavramını ödünç alıyoruz. uygunluk fonksiyonlarıNeal Ford ve AWS Çözüm Ortağı ThinkWorks'teki meslektaşları tarafından çalışmalarında ortaya atılmıştır. Evrimsel Mimariler İnşa Etmek. Fitness işlevleri, müşterinin amaçlarına dayalı olarak çeşitli barındırma seçeneklerinin kuralcı bir değerlendirmesini sağlar. Uygunluk işlevleri, mimarinizin planlı gelişimine izin vermek için gerekli verileri elde etmenize yardımcı olur. Çözümünüzün belirlediğiniz hedeflere ulaşmaya ne kadar yakın olduğunu değerlendirmek için ölçülebilir değerler belirlerler. Uygunluk fonksiyonları, istenen bir değişim sürecini yönlendirmek için mimari geliştikçe uyarlanabilir ve uyarlanmalıdır. Bu, mimarlara ekip özerkliğini korurken ekiplerine rehberlik edecek bir araç sağlar.
ML modellerini ve uygulamalarını barındırmak için doğru ML çıkarım seçeneğini seçerken müşterilerin önemsediği beş ana uygunluk işlevi vardır.
Fitness fonksiyonu | Açıklama |
Ücret |
Bir ML modelini ve ML uygulamasını ölçeklenebilir bir çerçevede dağıtmak ve sürdürmek kritik bir iş sürecidir ve maliyetler, model barındırma altyapısı, barındırma seçeneği, ML çerçeveleri, ML modeli özellikleri, optimizasyonlar, ölçekleme politikası hakkında yapılan seçimlere bağlı olarak büyük ölçüde değişebilir. ve dahası. İş yükleri, maliyetin kontrol altında kalmasını sağlamak için donanım altyapısını en iyi şekilde kullanmalıdır. Bu uygunluk işlevi, özellikle genel toplam sahip olma maliyetinin (TCO) bir parçası olan altyapı maliyetine atıfta bulunur. Altyapı maliyetleri, depolama, ağ ve bilgi işlem için birleşik maliyetlerdir. Operasyonel maliyetler ile güvenlik ve uyum maliyetleri dahil olmak üzere toplam sahip olma maliyetinin diğer bileşenlerini anlamak da kritik öneme sahiptir. Operasyonel maliyetler, makine öğrenimi altyapısının işletim, izleme ve bakımının birleşik maliyetleridir. İşletme maliyetleri, her bir senaryoya göre gereken mühendis sayısı ve mühendislerin belirli bir süre boyunca toplanan yıllık maaşı olarak hesaplanır. Kendi kendine yönetilen makine öğrenimi çözümlerini kullanan müşteriler Amazon Elastik Bilgi İşlem Bulutu (Amazon EC2), Amazon Elastik Konteyner Hizmeti (Amazon ECS) ve Amazon Elastik Kubernetes Hizmeti (Amazon EKS) işletim araçlarını kendilerinin oluşturması gerekiyor. SageMaker kullanan müşteriler önemli ölçüde daha az toplam sahip olma maliyetine maruz kalır. SageMaker çıkarımı, tam olarak yönetilen bir hizmettir ve çıkarım için makine öğrenimi modellerini dağıtmak için kullanıma hazır yetenekler sağlar. Makine öğrenimi çıkarımı iş yükleriniz için bulut sunucuları sağlamanız, örnek sağlığını izlemeniz, güvenlik güncellemelerini veya yamaları yönetmeniz, operasyonel ölçümler yaymanız veya izleme oluşturmanız gerekmez. Yüksek kullanılabilirlik ve esneklik sağlamak için yerleşik yeteneklere sahiptir. SageMaker, kök biriminin şifrelenmesi dahil olmak üzere beklemede ve aktarımda uçtan uca şifreleme ile güvenliği destekler ve Amazon Elastik Blok Mağazası (Amazon EBS) hacmi, Amazon Sanal Özel Bulut (Amazon VPC) desteği, AWS Özel Bağlantı, müşteri tarafından yönetilen anahtarlar, AWS Kimlik ve Erişim Yönetimi (IAM) ayrıntılı erişim kontrolü, AWS CloudTrail denetimler, eğitim için düğümler arası şifreleme, etiket tabanlı erişim kontrolü, ağ izolasyonu ve Etkileşimli Uygulama Proxy'si. Tüm bu güvenlik özellikleri, SageMaker'da kutudan çıkar çıkmaz sağlanır ve işletmeleri 3 yıllık bir süre boyunca onlarca geliştirme ayı süren mühendislik çalışmalarından kurtarabilir. SageMaker, HIPAA'ya uygun bir hizmettir ve PCI, SOC, GDPR ve ISO sertifikalıdır. SageMaker ayrıca FIPS uç noktalarını da destekler. TCO hakkında daha fazla bilgi için bkz. Amazon SageMaker'ın toplam sahip olma maliyeti. |
çıkarım gecikmesi | Birçok makine öğrenimi modeli ve uygulaması, çıkarım gecikmesinin bir hizmet düzeyi hedefi tarafından belirtilen sınırlar içinde olması gereken gecikme açısından kritik öneme sahiptir. Çıkarım gecikmesi, model boyutu ve karmaşıklığı, donanım platformu, yazılım ortamı ve ağ mimarisi gibi çok sayıda faktöre bağlıdır. Örneğin, daha büyük ve daha karmaşık modellerin çıkarım yapması daha uzun sürebilir. |
Verim (saniye başına işlem sayısı) | Model çıkarımı için, performansın ayarlanması ve makine öğrenimi uygulamasının iş hedefine ulaşılması için verimi optimize etmek çok önemlidir. Çip tasarımında matematiksel işlemlerin düşük düzeyli uygulamaları da dahil olmak üzere makine öğreniminin tüm yönlerinde hızla ilerlemeye devam ettikçe, donanıma özgü kitaplıklar performans optimizasyonunda daha büyük bir rol oynuyor. Yük boyutu, ağ atlamaları, atlamaların doğası, model grafiği özellikleri, modeldeki operatörler ve model barındırma örneklerinin CPU, GPU ve bellek profili gibi çeşitli faktörler, makine öğrenimi modelinin verimini etkiler. |
Ölçeklendirme yapılandırma karmaşıklığı | Makine öğrenimi modellerinin veya uygulamalarının değişen trafik talebini karşılayabilecek ölçeklenebilir bir çerçeve üzerinde çalışması çok önemlidir. Ayrıca, CPU ve GPU kaynaklarının maksimum kullanımına izin verir ve bilgi işlem kaynaklarının gereğinden fazla sağlanmasını önler. |
Beklenen trafik modeli | Makine öğrenimi modelleri veya uygulamaları, sürekli gerçek zamanlı canlı trafikten saniyede binlerce isteklik periyodik zirvelere ve seyrek, öngörülemeyen istek modellerinden daha büyük veri kümelerindeki çevrimdışı toplu isteklere kadar değişen farklı trafik modellerine sahip olabilir. Makine öğrenimi modeliniz için doğru barındırma seçeneğini belirlemek için beklenen trafik modelinden geriye doğru çalışmanız önerilir. |
Modelleri SageMaker ile dağıtma
SageMaker her geliştiriciye ve veri bilimciye makine öğrenimi modellerini uygun ölçekte hızlı bir şekilde oluşturma, eğitme ve dağıtma yeteneği sağlayan, tam olarak yönetilen bir AWS hizmetidir. SageMaker çıkarımı ile makine öğrenimi modellerinizi barındırılan uç noktalara dağıtabilir ve çıkarım sonuçları alabilirsiniz. SageMaker, iş yükü gereksinimlerinizi karşılamak için çok çeşitli donanım ve özellikler sunarak, donanım hızlandırmalı 70'in üzerinde bulut sunucusu tipi seçmenize olanak tanır. SageMaker, iş yükünüz için hangisinin en uygun olacağından emin olmamanız durumunda, SageMaker Inference Recommender adlı yeni bir özelliği kullanarak çıkarım örneği tipi önerisi de sağlayabilir.
Gerçek zamanlı çıkarım, eşzamansız, toplu ve hatta sunucusuz uç noktalar gibi kullanım durumlarınızı en iyi şekilde karşılamak için dağıtım seçeneklerini seçebilirsiniz. Ayrıca SageMaker, canary, Mavi-yeşil, gölgeve model dağıtımı için A/B testinin yanı sıra çok modelli, çok kapsayıcılı uç noktalar ve elastik ölçeklendirme ile uygun maliyetli dağıtım. SageMaker çıkarımı ile uç noktalarınız için performans metriklerini şurada görüntüleyebilirsiniz: Amazon Bulut İzleme, uç noktaları otomatik olarak ölçeklendir trafiğe dayalı olarak ve kullanılabilirliği kaybetmeden modellerinizi üretimde güncelleyin.
SageMaker, tahminlerde bulunmaya başlayabilmeniz için modelinizi devreye almanız için dört seçenek sunar:
- Gerçek zamanlı çıkarım – Bu, milisaniyelik gecikme gereksinimleri, 6 MB'a kadar veri yükü boyutları ve 60 saniyeye kadar işlem süreleri olan iş yükleri için uygundur.
- Toplu dönüştürme – Bu, önceden mevcut olan büyük veri yığınları üzerinde çevrimdışı tahminler için idealdir.
- asenkron çıkarım – Bu, saniyenin altında gecikme gereksinimleri, 1 GB'a kadar veri yükü boyutları ve 15 dakikaya kadar işlem süreleri olmayan iş yükleri için tasarlanmıştır.
- Sunucusuz çıkarım – Sunucusuz çıkarımla, temel altyapıyı yapılandırmak veya yönetmek zorunda kalmadan çıkarım için makine öğrenimi modellerini hızla dağıtabilirsiniz. Ayrıca, yalnızca aralıklı iş yükleri için ideal olan çıkarım isteklerini işlemek için kullanılan işlem kapasitesi için ödeme yaparsınız.
Aşağıdaki şema, ilişkili uygunluk işlevi değerlendirmeleriyle birlikte SageMaker barındırma modeli dağıtım seçeneklerini anlamanıza yardımcı olabilir.
Dağıtım seçeneklerinin her birini daha ayrıntılı olarak inceleyelim.
SageMaker'da gerçek zamanlı çıkarım
Sürekli trafiğiniz varsa ve 6 MB'a kadar yük boyutları ve 60 saniyeye kadar işlem süreleriyle istekleriniz için daha düşük ve tutarlı gecikme süresine ihtiyacınız varsa SageMaker gerçek zamanlı çıkarımı önerilir. Modelinizi SageMaker barındırma hizmetlerine dağıtırsınız ve çıkarım için kullanılabilecek bir uç nokta elde edersiniz. Bu uç noktalar tamamen yönetilir ve otomatik ölçeklendirmeyi destekler. Gerçek zamanlı çıkarım, ürünler ve hizmetler için kişiselleştirilmiş öneriler veya işlemsel dolandırıcılık algılama kullanım durumları gibi öngörülebilir trafik modelleriyle düşük gecikmeli, senkronize bir yanıt beklediğiniz kullanım durumları için popülerdir.
Tipik olarak, bir istemci uygulaması, dağıtılan bir modelden çıkarımlar elde etmek için SageMaker HTTPS uç noktasına istekler gönderir. Bir modelin birden çok varyantını aynı SageMaker HTTPS uç noktasına dağıtabilirsiniz. Bu, üretimdeki bir modelin varyasyonlarını test etmek için kullanışlıdır. Otomatik ölçeklendirme, iş yükünüzdeki değişikliklere yanıt olarak bir model için sağlanan örnek sayısını dinamik olarak ayarlamanıza olanak tanır.
Aşağıdaki tablo, uygunluk işlevlerine dayalı olarak SageMaker gerçek zamanlı çıkarımını değerlendirme konusunda rehberlik sağlar.
Fitness fonksiyonu | Açıklama |
Ücret |
Gerçek zamanlı uç noktalar, çıkarım isteklerine eşzamanlı yanıt sunar. Uç nokta her zaman çalışır durumda olduğundan ve gerçek zamanlı eşzamanlı çıkarım yanıtı sağlamaya hazır olduğundan, örneği kullanmak için ödeme yaparsınız. Özellikle uç noktalar temeldeki örnekleri tam olarak kullanmıyorsa, birden çok uç nokta dağıttığınızda maliyetler hızla artabilir. Modeliniz için doğru örneği seçmek, modelleriniz için en düşük maliyetle en yüksek performanslı örneğe sahip olmanıza yardımcı olur. Mümkün olan en düşük maliyetle istikrarlı ve öngörülebilir performansı sürdürmek için trafiğe bağlı olarak kapasiteyi dinamik olarak ayarlamak için otomatik ölçeklendirme önerilir. SageMaker, erişimi Graviton2 ve Graviton3 tabanlı ML bulut sunucusu ailelerine genişletir. AWS Graviton işlemciler, Amazon EC64 üzerinde çalışan bulut iş yükleriniz için en iyi fiyat performansını sunmak üzere 2-bit Arm Neoverse çekirdekleri kullanılarak Amazon Web Services tarafından özel olarak oluşturulmuştur. Graviton tabanlı örneklerle, makine öğrenimi modellerinizi SageMaker'da dağıtırken maliyeti ve performansı optimize etmek için daha fazla seçeneğiniz olur. SageMaker ayrıca destekler Inf1 örnekleri, yüksek performans ve uygun maliyetli makine öğrenimi çıkarımı sağlar. 1–16 ile AWS Inferentia yongaları örnek başına, Inf1 bulut sunucuları performansı ölçeklendirebilir ve AWS GPU tabanlı bulut sunucularına kıyasla üç kata kadar daha yüksek verim ve %50'ye kadar daha düşük çıkarım başına maliyet sağlayabilir. Inf1 örneklerini SageMaker'da kullanmak için, eğitilmiş modellerinizi kullanarak derleyebilirsiniz. Amazon SageMaker Neo ve derlenmiş modeli SageMaker'da konuşlandırmak için Inf1 örneklerini seçin. Ayrıca keşfedebilirsiniz SageMaker için Tasarruf Planları talep fiyatına kıyasla %64'e varan maliyet tasarrufundan yararlanmak için. Bir uç nokta oluşturduğunuzda SageMaker, uç noktayı barındıran her makine öğrenimi bilgi işlem örneğine bir EBS depolama birimi ekler. Depolama biriminin boyutu, bulut sunucusu tipine bağlıdır. Gerçek zamanlı uç noktalar için ek maliyet, GB-aylık sağlanan depolama maliyetinin yanı sıra uç nokta bulut sunucusunda işlenen GB verileri ve uç nokta eşgörünümü dışında işlenen GB verilerini içerir. |
çıkarım gecikmesi | Gerçek zamanlı çıkarım, milisaniyelik gecikme gereksinimleri olan kalıcı bir uç noktaya ihtiyacınız olduğunda idealdir. 6 MB'a kadar yük boyutlarını ve 60 saniyeye kadar işlem sürelerini destekler. |
çıktı |
İdeal bir çıkarım verimi değeri, model, model girdi boyutu, toplu iş boyutu ve uç nokta bulut sunucusu tipi gibi faktörlere bağlıdır. En iyi uygulama olarak, girdi istekleri ve kaynak kullanımı için CloudWatch ölçümlerini inceleyin ve optimum aktarım hızı elde etmek için uygun bulut sunucusu tipini seçin. Bir iş uygulaması, verim için optimize edilmiş veya gecikme için optimize edilmiş olabilir. Örneğin, dinamik gruplama, gerçek zamanlı çıkarım kullanarak gecikmeye duyarlı uygulamalar için verimi artırmaya yardımcı olabilir. Bununla birlikte, yığın boyutunun sınırları vardır ve bunlar olmadan çıkarım gecikmesi etkilenebilir. Çıktıyı iyileştirmek için parti boyutunu artırdıkça çıkarım gecikmesi de artacaktır. Bu nedenle, gerçek zamanlı çıkarım, gecikmeye duyarlı uygulamalar için ideal bir seçenektir. SageMaker, iş uygulamaları biraz daha yüksek bir gecikmeyi tolere edebiliyorsa, gerçek zamanlı çıkarıma kıyasla daha yüksek verim sağlamak için optimize edilmiş eşzamansız çıkarım ve toplu dönüştürme seçenekleri sunar. |
Ölçeklendirme yapılandırma karmaşıklığı |
SageMaker gerçek zamanlı uç nokta desteği otomatik ölçeklendirme kutudan dışarı. İş yükü arttığında, otomatik ölçeklendirme daha fazla örneği çevrimiçi hale getirir. İş yükü azaldığında, otomatik ölçeklendirme gereksiz bulut sunucularını kaldırarak bilgi işlem maliyetinizi düşürmenize yardımcı olur. Otomatik ölçeklendirme olmadan, yoğun trafik veya risk modelinin kullanılamaması için provizyon sağlamanız gerekir. Modelinize giden trafik gün boyunca sabit olmadığı sürece, kullanılmayan kapasite fazlası olacaktır. Bu, düşük kullanıma ve kaynakların israf edilmesine yol açar. SageMaker ile, beklenen trafik modeline göre farklı ölçeklendirme seçeneklerini yapılandırabilirsiniz. Belirli bir CloudWatch metriğine göre ölçeklendirme yapmak istediğinizde basit ölçeklendirme veya hedef izleme ölçeklendirmesi idealdir. Bunu, belirli bir metrik seçerek ve eşik değerleri ayarlayarak yapabilirsiniz. Bu seçenek için önerilen metrikler ortalamadır Gelişmiş yapılandırmaya ihtiyacınız varsa, alarm ihlalinin boyutuna göre ölçeklendirilecek örnek sayısını dinamik olarak ayarlamak için bir adım ölçeklendirme ilkesi belirleyebilirsiniz. Bu, talep belirli bir düzeye ulaştığında daha agresif bir yanıt yapılandırmanıza yardımcı olur. Talebin gün, hafta, ay veya yılda belirli bir zamanlamayı takip ettiğini bildiğiniz zaman, planlanmış ölçeklendirme seçeneğini kullanabilirsiniz. Bu, otomatik ölçeklendirme eyleminin ne zaman başlayacağının ve duracağının sınırlarını oluşturan başlangıç ve bitiş zamanlarının yanı sıra tek seferlik bir program veya yinelenen bir program veya cron ifadeleri belirtmenize yardımcı olur. Daha fazla ayrıntı için bkz. Amazon SageMaker'da otomatik ölçeklendirme çıkarım uç noktalarını yapılandırma ve Otomatik ölçeklendirmeyi kullanarak bir Amazon SageMaker uç noktasını yük testi yapın ve optimize edin. |
Trafik paterni | Gerçek zamanlı çıkarım, sürekli veya düzenli trafik modeline sahip iş yükleri için idealdir. |
SageMaker'da eşzamansız çıkarım
SageMaker eşzamansız çıkarım, SageMaker'da gelen istekleri kuyruğa alan ve bunları eşzamansız olarak işleyen yeni bir yetenektir. Bu seçenek, büyük yük boyutlarına (1 GB'a kadar), uzun işlem sürelerine (15 dakikaya kadar) ve gerçek zamana yakın gecikme gereksinimlerine sahip istekler için idealdir. Eşzamansız çıkarım için örnek iş yükleri, anormallikleri saptamak için yüksek çözünürlüklü biyomedikal görüntüleri veya ekokardiyogramlar gibi videoları işleyen sağlık şirketlerini içerir. Bu uygulamalar, günün farklı saatlerinde gelen trafik patlamalarını alır ve düşük maliyetle neredeyse gerçek zamanlı işleme gerektirir. Bu istekler için işlem süreleri dakikalar mertebesinde değişebilir ve gerçek zamanlı çıkarım çalıştırma ihtiyacını ortadan kaldırır. Bunun yerine girdi yükleri, Amazon S3 gibi bir nesne deposundan otomatik kuyruğa alma ve önceden tanımlanmış eşzamanlılık eşiği ile eşzamansız olarak işlenebilir. SageMaker, işlendikten sonra çıkarım yanıtını önceden döndürülen Amazon S3 konumuna yerleştirir. İsteğe bağlı olarak, başarı veya hata bildirimlerini şu şekilde almayı seçebilirsiniz: Amazon Basit Bildirim Servisi (Amazon SNS'si).
Aşağıdaki tablo, uygunluk işlevlerine dayalı olarak SageMaker eşzamansız çıkarımını değerlendirme konusunda rehberlik sağlar.
Fitness fonksiyonu | Açıklama |
Ücret | Eşzamansız çıkarım, büyük yüklere ve yoğun trafiğe sahip, maliyet açısından hassas iş yükleri için mükemmel bir seçimdir. Eşzamansız çıkarım, işlenecek istek olmadığında örnek sayısını otomatik olarak sıfıra ölçeklendirerek maliyetlerden tasarruf etmenizi sağlar, böylece yalnızca uç noktanız istekleri işlerken ödeme yaparsınız. Sıfır örnek olduğunda alınan istekler, uç nokta ölçeği büyüdükten sonra işlenmek üzere sıraya alınır. |
çıkarım gecikmesi | Eşzamansız çıkarım, gerçek zamana yakın gecikme gereksinimleri için idealdir. İstekler bir kuyruğa alınır ve bilgi işlem kullanılabilir olur olmaz işlenir. Bu genellikle gecikmede onlarca milisaniye ile sonuçlanır. |
çıktı | Zaman uyumsuz çıkarım, gecikmeye duyarlı olmayan kullanım durumları için idealdir çünkü uygulamaların aktarım hızından taviz vermesi gerekmez. Eşzamansız çıkarım uç noktası, istekleri bırakmak yerine sıraya aldığından, istekler ani trafik artışları sırasında bırakılmaz. |
Ölçeklendirme yapılandırma karmaşıklığı |
SageMaker destekler otomatik ölçeklendirme eşzamansız bitiş noktası için. Gerçek zamanlı barındırılan uç noktaların aksine, eşzamansız çıkarım uç noktaları, minimum kapasiteyi sıfıra ayarlayarak örnekleri sıfıra indirmeyi destekler. Eşzamansız uç noktalar için SageMaker, dağıtılan bir model (varyant) için hedef izleme ölçeklendirmesi için bir ilke yapılandırması oluşturmanızı şiddetle tavsiye eder. Birkaç dakikalık soğuk başlatma cezasını tolere edebilen kullanım durumları için, isteğe bağlı olarak, bekleyen istek olmadığında uç nokta örnek sayısını sıfıra indirebilir ve yeni istekler geldikçe yeniden ölçeklendirebilir, böylece yalnızca süre boyunca ödeme yaparsınız. uç noktalar aktif olarak istekleri işliyor. |
Trafik paterni | Eşzamansız uç noktalar, gelen istekleri sıraya alır ve bunları eşzamansız olarak işler. Aralıklı veya seyrek trafik modelleri için iyi bir seçenektir. |
SageMaker'da toplu çıkarım
SageMaker toplu dönüştürme, önceden mevcut olan büyük veri yığınları üzerinde çevrimdışı tahminler için idealdir. Toplu dönüştürme özelliği, verileri dönüştürmek ve çıkarımlar oluşturmak için yüksek performanslı ve yüksek verimli bir yöntemdir. Büyük veri yığınlarıyla uğraştığınız, saniyeden kısa gecikme süresine ihtiyaç duymadığınız veya eğitim verilerini hem ön işlemeye hem de dönüştürmeye ihtiyaç duyduğunuz senaryolar için idealdir. Reklamcılık ve pazarlama ya da sağlık hizmetleri gibi belirli alanlardaki müşterilerin, genellikle kullanım senaryosunun amacının yüksek aktarım hızı olduğu ve gecikmenin sorun olmadığı hiper ölçekli veri kümeleri üzerinde çevrimdışı tahminler yapması gerekir.
Bir toplu dönüştürme işi başladığında, SageMaker işlem örneklerini başlatır ve çıkarım iş yükünü bunlar arasında dağıtır. İşler tamamlandığında kaynakları serbest bırakır, böylece yalnızca işinizin yürütülmesi sırasında kullanılan kadarını ödersiniz. İş tamamlandığında, SageMaker tahmin sonuçlarını belirttiğiniz bir S3 demetine kaydeder. Toplu çıkarım görevleri genellikle yatay ölçeklendirme için iyi adaylardır. Bir kümedeki her çalışan, diğer çalışanlarla bilgi alışverişine ihtiyaç duymadan farklı bir veri alt kümesi üzerinde çalışabilir. AWS, yatay ölçeklendirmeye olanak tanıyan birden çok depolama ve bilgi işlem seçeneği sunar. SageMaker toplu dönüşümü için örnek iş yükleri, bir çevrimdışı işin periyodik olarak çalışacak şekilde programlanabildiği müşteri kaybını tahmin etmeye yönelik bankacılık uygulamaları gibi çevrimdışı uygulamaları içerir.
Aşağıdaki tablo, uygunluk işlevlerine dayalı olarak SageMaker toplu dönüşümünü değerlendirme konusunda rehberlik sağlar.
Fitness fonksiyonu | Açıklama |
Ücret | SageMaker toplu dönüştürme, büyük veya küçük toplu veri kümelerinde tahminler çalıştırmanıza olanak tanır. Kullanım süresine bağlı olarak, seçtiğiniz bulut sunucusu türü için ücretlendirilirsiniz. SageMaker, işin başlangıcında kaynakların sağlanmasını yönetir ve iş tamamlandığında bunları serbest bırakır. Ek veri işleme maliyeti yoktur. |
çıkarım gecikmesi | Olay tabanlı veya planlanmış çağrıyı kullanabilirsiniz. Gecikme, çıkarım verilerinin boyutuna, iş eşzamanlılığına, modelin karmaşıklığına ve işlem örneği kapasitesine bağlı olarak değişiklik gösterebilir. |
çıktı |
Toplu dönüştürme işleri, petabaytlarca veriden çok küçük veri kümelerine kadar çeşitli veri kümelerinde yapılabilir. Daha büyük veri kümelerini küçük veri yığınları halinde yeniden boyutlandırmaya gerek yoktur. gibi parametreler için en uygun değerleri kullanarak toplu dönüştürme işlerini hızlandırabilirsiniz. MaxPayloadInMB, MaxConcurrentTransformsya da Toplu Strateji. için ideal değer Toplu işleme, gecikme pahasına belirli bir süre içinde daha fazla sayıda çıkarımın tamamlanmasına yardımcı olduğundan verimi artırabilir ve kaynaklarınızı optimize edebilir. Daha yüksek verim için model dağıtımını optimize etmek için genel kılavuz, verim azalana kadar parti boyutunu artırmaktır. |
Ölçeklendirme yapılandırma karmaşıklığı | Gecikmeye duyarlı olmayan çevrimdışı çıkarım için SageMaker toplu dönüşümü kullanılır. |
Trafik paterni | Çevrimdışı çıkarım için, olay tabanlı bir tetikleyici kullanılarak bir toplu dönüştürme işi planlanır veya başlatılır. |
SageMaker'da sunucusuz çıkarım
SageMaker sunucusuz çıkarım, temel alınan altyapıyı yapılandırmanız veya yönetmeniz gerekmeden makine öğrenimi modellerini çıkarım için dağıtmanıza olanak tanır. Modelinizin aldığı çıkarım isteklerinin hacmine bağlı olarak SageMaker sunucusuz çıkarım, bilgi işlem kapasitesini otomatik olarak sağlar, ölçeklendirir ve kapatır. Sonuç olarak, boşta kalma süresi için değil, yalnızca çıkarım kodunuzu çalıştırmak için gereken işlem süresi ve işlenen veri miktarı için ödeme yaparsınız. Modelinizi sunucusuz bir çıkarım uç noktasına dağıtmak veya kendi kapsayıcınızı getirmeyi seçmek için SageMaker'ın yerleşik algoritmalarını ve makine öğrenimi çerçevesi sunan kapsayıcılarını kullanabilirsiniz. Trafik öngörülebilir ve kararlı hale gelirse, kapsayıcı görüntünüzde değişiklik yapmanıza gerek kalmadan sunucusuz bir çıkarım uç noktasından bir SageMaker gerçek zamanlı uç noktasına kolayca güncelleme yapabilirsiniz. Sunucusuz çıkarımla, CloudWatch'taki çağrı sayısı, hatalar, gecikme, ana bilgisayar ölçümleri ve hatalar gibi yerleşik ölçümler dahil olmak üzere diğer SageMaker özelliklerinden de yararlanırsınız.
Aşağıdaki tablo, uygunluk işlevlerine dayalı olarak SageMaker sunucusuz çıkarımını değerlendirme konusunda rehberlik sağlar.
Fitness fonksiyonu | Açıklama |
Ücret | Çalıştırdıkça öde modeliyle, seyrek veya aralıklı trafik kalıplarınız varsa, sunucusuz çıkarım uygun maliyetli bir seçenektir. Yalnızca uç noktanın isteği işlediği süre için ödeme yaparsınız ve bu nedenle, trafik modeli aralıklıysa maliyetlerden tasarruf edebilirsiniz. |
çıkarım gecikmesi |
Sunucusuz uç noktalar, kullanım modellerine bağlı olarak saniyeler içinde on ila binlerce çıkarımdan anında ölçeklendirme yeteneğiyle düşük çıkarım gecikmesi (milisaniyeden saniyeye kadar) sunar ve bu da onu kesintili veya öngörülemeyen trafiğe sahip makine öğrenimi uygulamaları için ideal hale getirir. Sunucusuz uç noktalar talep üzerine bilgi işlem kaynakları sağladığından, uç noktanız bir boşta kalma süresinden sonraki ilk çalıştırma için fazladan birkaç saniye gecikme (soğuk başlatma) yaşayabilir. Soğuk başlatma süresi, modelinizin boyutuna, modelinizin indirilmesinin ne kadar sürdüğüne ve kapsayıcınızın başlangıç süresine bağlıdır. |
çıktı | Sunucusuz uç noktanızı yapılandırırken, bellek boyutunu ve maksimum eşzamanlı çağrı sayısını belirleyebilirsiniz. SageMaker sunucusuz çıkarım, seçtiğiniz bellekle orantılı olarak bilgi işlem kaynaklarını otomatik olarak atar. Daha büyük bir bellek boyutu seçerseniz kapsayıcınızın daha fazla vCPU'ya erişimi olur. Genel bir kural olarak, bellek boyutu en az modelinizin boyutu kadar büyük olmalıdır. Seçebileceğiniz bellek boyutları 1024 MB, 2048 MB, 3072 MB, 4096 MB, 5120 MB ve 6144 MB'dir. Seçtiğiniz bellek boyutu ne olursa olsun, sunucusuz uç noktalarda 5 GB kısa ömürlü disk depolama alanı bulunur. |
Ölçeklendirme yapılandırma karmaşıklığı | Sunucusuz uç noktalar, bilgi işlem kaynaklarını otomatik olarak başlatır ve trafiğe bağlı olarak bunları ölçeklendirerek örnek türlerini seçme veya ölçeklendirme politikalarını yönetme ihtiyacını ortadan kaldırır. Bu, sunucuları seçme ve yönetme gibi farklılaştırılmamış ağır yükleri ortadan kaldırır. |
Trafik paterni | Sunucusuz çıkarım, seyrek veya aralıklı trafik modellerine sahip iş yükleri için idealdir. |
SageMaker'da tasarım kalıplarını barındıran model
SageMaker çıkarım uç noktaları, makine öğrenimi modellerini barındırmak için Docker kapsayıcılarını kullanır. Konteynerler, yazılımı Docker'ı destekleyen herhangi bir platformda tutarlı bir şekilde çalışan standartlaştırılmış birimler halinde paketlemenize olanak tanır. Bu, platformlar arasında taşınabilirlik, değişmez altyapı konuşlandırmaları ve daha kolay değişiklik yönetimi ve CI/CD uygulamaları sağlar. SageMaker, Apache MXNet, TensorFlow, PyTorch, Sklearn ve Hugging Face gibi popüler çerçeveler için önceden oluşturulmuş yönetilen kapsayıcılar sağlar. Kullanılabilir SageMaker kapsayıcı görüntülerinin tam listesi için bkz. Kullanılabilir Derin Öğrenme Kapsayıcıları Resimleri. SageMaker'ın desteklenen bir kapsayıcı olmaması durumunda, kendi kapsayıcınızı (BYOC) oluşturabilir ve modeliniz için gerekli olan bağımlılıkları yükleyerek kendi özel görüntünüzü gönderebilirsiniz.
SageMaker'da bir model dağıtmak için bir kapsayıcıya (SageMaker tarafından yönetilen çerçeve kapsayıcılar veya BYOC) ve kapsayıcıyı barındırmak için bir bilgi işlem anına ihtiyacınız vardır. SageMaker, modellerin tek bir kapsayıcıda barındırılabildiği veya paylaşılan bir kapsayıcıda birlikte barındırılabildiği tasarım modellerini barındıran yaygın makine öğrenimi modeli için birden çok gelişmiş seçeneği destekler.
Gerçek zamanlı bir makine öğrenimi uygulaması, tek bir tahmin isteğine hizmet vermek için tek bir model veya birden çok model kullanabilir. Aşağıdaki şemada, bir makine öğrenimi uygulaması için çeşitli çıkarım senaryoları gösterilmektedir.
Önceki çıkarım senaryolarının her biri için uygun bir SageMaker barındırma seçeneğini keşfedelim. Verilen kullanım durumu için doğru seçenek olup olmadığını değerlendirmek için uygunluk işlevlerine başvurabilirsiniz.
Tek model tabanlı bir makine öğrenimi uygulamasını barındırma
Dağıtım senaryosuna bağlı olarak SageMaker barındırma hizmetlerini kullanarak tek model tabanlı makine öğrenimi uygulamalarını barındırmak için birkaç seçenek vardır.
Tek model uç noktası
SageMaker tek model uç noktaları, düşük gecikme süresi ve yüksek verim için özel örneklerde barındırılan bir kapsayıcıda bir model barındırmanıza olanak tanır. Bu uç noktalar tamamen yönetilir ve otomatik ölçeklendirmeyi destekler. Tek modelli uç noktayı, bulut sunucusu türü ve sayısı gibi uç nokta altyapısı yapılandırmasında ilettiğiniz, tedarik edilmiş bir uç nokta olarak veya SageMaker'ın bilgi işlem kaynaklarını otomatik olarak başlattığı ve trafiğe bağlı olarak bunları ölçeklendirerek ihtiyacını ortadan kaldırdığı sunucusuz bir uç nokta olarak yapılandırabilirsiniz. örnek türlerini seçmek veya ölçeklendirme politikalarını yönetmek için. Sunucusuz uç noktalar, aralıklı veya öngörülemeyen trafiğe sahip uygulamalar içindir.
Aşağıdaki diyagram, tek modelli uç nokta çıkarım senaryolarını göstermektedir.
Aşağıdaki tablo, sağlanan tek modelli bir uç nokta için uygunluk işlevlerini değerlendirme konusunda rehberlik sağlar. Sunucusuz uç nokta uygunluk işlevi değerlendirmeleri için bu gönderideki sunucusuz uç nokta bölümüne bakın.
Fitness fonksiyonu | Açıklama |
Ücret | Seçtiğiniz bulut sunucusu tipinin kullanımı için ücretlendirilirsiniz. Uç nokta her zaman çalışır durumda ve kullanılabilir olduğundan, maliyetler hızla artabilir. Modeliniz için doğru örneği seçmek, modelleriniz için en düşük maliyetle en yüksek performanslı örneğe sahip olmanıza yardımcı olur. Mümkün olan en düşük maliyetle istikrarlı ve öngörülebilir performansı sürdürmek için trafiğe bağlı olarak kapasiteyi dinamik olarak ayarlamak için otomatik ölçeklendirme önerilir. |
çıkarım gecikmesi | Tek modelli uç nokta, milisaniyelik gecikme gereksinimleriyle gerçek zamanlı, etkileşimli, senkronize çıkarım sağlar. |
çıktı | Verim, model girdi boyutu, toplu iş boyutu, uç nokta bulut sunucusu tipi vb. gibi çeşitli faktörlerden etkilenebilir. Girdi istekleri ve kaynak kullanımı için CloudWatch ölçümlerini gözden geçirmeniz ve optimum aktarım hızı elde etmek için uygun bulut sunucusu türünü seçmeniz önerilir. SageMaker, makine öğrenimi modellerini dağıtırken kaynakları yönetmek ve çıkarım performansını optimize etmek için özellikler sağlar. Yapabilirsiniz Neo kullanarak model performansını optimize edinveya uç noktanız için bir GPU örneği kullanarak SageMaker tarafından barındırılan modellerinizin daha iyi verimi için Inf1 örneklerini kullanın. |
Ölçeklendirme yapılandırma karmaşıklığı | Otomatik ölçeklendirme kutunun dışında desteklenir. SageMaker uygun bir seçim yapmanızı önerir. ölçeklendirme yapılandırması yaparak yük testleri. |
Trafik paterni | Tek modelli bir uç nokta, öngörülebilir trafik modellerine sahip iş yükleri için idealdir. |
Birden çok modeli birlikte barındırma
Çok sayıda modelle uğraşırken, her birini özel bir kapsayıcı ve bulut sunucusuyla ayrı bir uç noktaya dağıtmak, maliyette önemli bir artışa neden olabilir. Ek olarak, üretimdeki bu kadar çok modeli yönetmek, özellikle tüm modelleri aynı anda çalıştırmanız gerekmediğinde, ancak yine de her zaman kullanılabilir olmalarına ihtiyaç duyduğunuzda zorlaşır. Birden çok modeli aynı temel bilgi işlem kaynaklarında birlikte barındırmak, makine öğrenimi devreye alımlarını geniş ölçekte yönetmeyi kolaylaştırır ve uç noktanın ve temel bilgi işlem kaynaklarının artan kullanımı sayesinde barındırma maliyetlerinizi düşürür. SageMaker, homojen modeller için çok modelli uç nokta (MME) ve heterojen modeller için çok kapsayıcı uç nokta (MCE) gibi gelişmiş model ortak barındırma seçeneklerini destekler. Homojen modeller, paylaşılan bir hizmet kapsayıcısında aynı makine öğrenimi çerçevesini kullanırken, heterojen modeller, tek bir uç noktada farklı modeller veya çerçeveler kullanan birden çok hizmet veren kapsayıcı dağıtmanıza olanak tanır.
Aşağıdaki şemada, SageMaker kullanılarak model ortak barındırma seçenekleri gösterilmektedir.
SageMaker çoklu model uç noktaları
SageMaker MME'ler tek bir uç noktada paylaşılan bir sunum kapsayıcısı kullanarak birden çok modeli barındırmanıza olanak tanır. Bu, aynı kullanım durumu, çerçeve veya çıkarım mantığına hitap eden çok sayıda modeli dağıtmak için ölçeklenebilir ve uygun maliyetli bir çözümdür. MME'ler, arayan tarafından çağrılan modele dayalı olarak istekleri dinamik olarak sunabilir. Ayrıca, SageMaker modelleri belleğe yüklemeyi ve onlara gelen trafik modellerine göre ölçeklendirmeyi yönettiği için konuşlandırma yükünü de azaltır. Bu özellik, paylaşılan bir sunum kapsayıcısı aracılığıyla sunabileceğiniz çok sayıda benzer modele sahip olduğunuzda ve tüm modellere aynı anda erişmeniz gerekmediğinde idealdir. Çok modelli uç noktalar, modelleriniz arasında bellek kaynaklarının zaman paylaşımını da sağlar. Bu, modeller boyut ve başlatma gecikmesi açısından oldukça benzer olduğunda en iyi şekilde çalışır ve MME'lerin örnekleri tüm modellerde etkili bir şekilde kullanmasına izin verir. SageMaker MME'leri, hem CPU hem de GPU destekli modelleri barındırmayı destekler. GPU destekli modelleri kullanarak, uç noktanın ve bunun altında yatan hızlandırılmış bilgi işlem örneklerinin artan kullanımıyla model dağıtım maliyetlerinizi düşürebilirsiniz. MME'lerin gerçek dünyadaki kullanım durumu için bkz. Çok kiracılı SaaS kullanım örnekleri için makine öğrenimi çıkarımı nasıl ölçeklenir.
Aşağıdaki tablo, MME'ler için uygunluk fonksiyonlarını değerlendirme konusunda rehberlik sağlar.
Fitness fonksiyonu | Açıklama |
Ücret |
MME'ler, binlerce modeli tek bir uç noktada barındırmak için paylaşılan bir hizmet kabının kullanılmasını sağlar. Bu, tek model uç noktaları kullanmaya kıyasla uç nokta kullanımını iyileştirerek barındırma maliyetlerini önemli ölçüde azaltır. Örneğin, bir ml.c10.large örneği kullanarak dağıtılacak 5 modeliniz varsa, SageMaker fiyatlandırması10 tek model kalıcı uç noktaya sahip olmanın maliyeti: 10 * 0.102 USD = saat başına 1.02 USD. Oysa 10 modeli barındıran bir MME ile 10 kat maliyet tasarrufu elde ediyoruz: 1 * 0.102 USD = saatte 0.102 USD. |
çıkarım gecikmesi |
Varsayılan olarak, MME'ler düşük gecikmeli çıkarım sağlamak için sık kullanılan modelleri bellekte ve diskte önbelleğe alır. Önbelleğe alınan modeller, yalnızca yeni hedeflenen bir modeli barındırmak için bir kapsayıcının belleği veya disk alanı tükendiğinde kaldırılır veya diskten silinir. MME'ler, modellerin geç yüklenmesine izin verir; bu, modellerin ilk kez çalıştırıldığında belleğe yüklenmesi anlamına gelir. Bu, bellek kullanımını optimize eder; ancak, ilk yükte yanıt süresinde ani artışlara neden olarak soğuk başlatma sorununa neden olur. Bu nedenle, MME'ler, nadiren kullanılan modeller çağrılırken ortaya çıkan, ara sıra soğuk çalıştırmayla ilgili gecikme cezalarını tolere edebilen senaryolar için de çok uygundur. Makine öğrenimi uygulamalarının gecikme ve aktarım hızı hedeflerini karşılamak için, GPU bulut sunucuları CPU bulut sunucularına tercih edilir (GPU'ların sunduğu bilgi işlem gücü göz önüne alındığında). GPU için MME desteğiyle, binlerce derin öğrenme modelini tek bir SageMaker uç noktasının arkasında konuşlandırabilirsiniz. MME'ler, bir GPU çekirdeğinde birden çok model çalıştırabilir, birden çok modelde bir uç noktanın arkasında GPU örneklerini paylaşabilir ve gelen trafiğe göre modelleri dinamik olarak yükleyebilir ve kaldırabilir. Bununla, maliyetten önemli ölçüde tasarruf edebilir ve en iyi fiyat performansını elde edebilirsiniz. Kullanım durumunuz önemli ölçüde daha yüksek saniye başına işlem (TPS) veya gecikme gereksinimleri gerektiriyorsa, modelleri ayrılmış uç noktalarda barındırmanızı öneririz. |
çıktı |
İdeal bir MME çıkarım verimi değeri, model, yük boyutu ve uç nokta bulut sunucusu tipi gibi faktörlere bağlıdır. Daha yüksek miktarda örnek belleği, daha fazla modelin yüklü ve çıkarım isteklerine hizmet vermeye hazır olmasını sağlar. Modeli yüklemek için zaman kaybetmenize gerek yok. Daha yüksek miktarda vCPU, aynı anda daha benzersiz modelleri çalıştırmanıza olanak tanır. MME'ler, G/Ç performansını etkileyebilecek şekilde modeli örnek belleğe ve bellekten dinamik olarak yükler ve kaldırır. GPU'lu SageMaker MME'leri şu şekilde çalışır: NVIDIA Triton Çıkarım Sunucusuçıkarım sunma sürecini basitleştiren ve yüksek çıkarım performansı sağlayan açık kaynaklı bir çıkarım sunma yazılımıdır. SageMaker, modeli NVIDIA Triton kapsayıcısının belleğine GPU ile hızlandırılmış bir örnek üzerinde yükler ve çıkarım isteğini yerine getirir. GPU çekirdeği, bir bulut sunucusundaki tüm modeller tarafından paylaşılır. Model kapsayıcı belleğinde zaten yüklüyse sonraki istekler daha hızlı sunulur çünkü SageMaker'ın modeli yeniden indirip yüklemesi gerekmez. Başarılı üretim dağıtımlarında uygun bir performans testi ve analizi önerilir. SageMaker, uç noktanızı optimize etmenize yardımcı olacak uç nokta kullanımını ve önbellek isabet oranını belirleyebilmeniz için çok modelli uç noktalar için CloudWatch ölçümleri sağlar. |
Ölçeklendirme yapılandırma karmaşıklığı | SageMaker çoklu model uç noktaları, modellerin trafik modellerine göre ölçeklenmesini sağlamak için modellerin kopyalarını yöneten otomatik ölçeklendirmeyi tam olarak destekler. Bununla birlikte, uç noktanın otomatik olarak ölçeklendirilmesi için bulut sunucularının en uygun boyutunu belirlemek üzere uygun bir yük testi önerilir. Çok fazla modelin boşaltılmasını önlemek için MME filosunu doğru boyutlandırmak önemlidir. Yüzlerce modelin birkaç büyük örneğe yüklenmesi bazı durumlarda kısılmaya neden olabilir ve daha fazla ve daha küçük örnek kullanılması tercih edilebilir. SageMaker'da otomatikleştirilmiş model ölçeklendirmenin avantajlarından yararlanmak için, sahip olduğunuzdan emin olun. örnek otomatik ölçeklendirme kurulumu ek bulut sunucusu kapasitesi sağlamak için. Uç nokta filosuna daha fazla bulut sunucusu eklemek için uç nokta düzeyinde ölçeklendirme politikanızı özel parametrelerle veya dakika başına çağrı sayısıyla (önerilir) ayarlayın. Bir otomatik ölçeklendirme olayını tetiklemek için kullanılan başlatma oranları, uç nokta tarafından sunulan tüm model setindeki toplu tahmin setine dayalıdır. |
Trafik paterni | Paylaşılan bir sunum kapsayıcısı aracılığıyla hizmet verebileceğiniz çok sayıda benzer boyutta modeliniz olduğunda ve tüm modellere aynı anda erişmeniz gerekmediğinde MME'ler idealdir. |
SageMaker çoklu kapsayıcı uç noktaları
SageMaker MCE'ler tek bir uç noktada farklı modeller veya çerçeveler kullanan 15 adede kadar kapsayıcı dağıtmayı ve düşük gecikmeli çıkarım ve maliyet tasarrufu için bunları bağımsız olarak veya sırayla çağırmayı destekler. Modeller, kendi bağımsız sunum yığınıyla tamamen heterojen olabilir. Tek bir bulut sunucusunda farklı çerçevelerden birden çok modeli güvenli bir şekilde barındırmak, maliyetten %90'a kadar tasarruf etmenizi sağlayabilir.
MCE çağırma kalıpları aşağıdaki gibidir:
- çıkarım ardışık düzenleri – Bir MME'deki kapsayıcılar, aynı zamanda bir dizi olarak da bilinen doğrusal bir sırayla çağrılabilir. seri çıkarım ardışık düzeni. Genellikle ön işleme, model çıkarımı ve son işlemeyi bağımsız kaplara ayırmak için kullanılırlar. Geçerli kapsayıcının çıktısı, bir sonrakine girdi olarak iletilir. SageMaker'da tek bir boru hattı modeli olarak temsil edilirler. Bir çıkarım işlem hattı, işlem hattındaki kaplardan birinin çağrılan modele göre dinamik olarak istekler sunabileceği bir MME olarak konuşlandırılabilir.
- Doğrudan çağırma - İle doğrudan çağırma, bir MCE'de barındırılan belirli bir çıkarım kapsayıcısına bir istek gönderilebilir.
Aşağıdaki tablo, MCE'ler için uygunluk fonksiyonlarını değerlendirme konusunda rehberlik sağlar.
Fitness fonksiyonu | Açıklama |
Ücret | MCE'ler, tek bir uç noktada 15 adede kadar farklı makine öğrenimi kapsayıcısı çalıştırmanıza ve bunları bağımsız olarak çağırmanıza olanak tanıyarak maliyet tasarrufu sağlar. Bu seçenek, benzer kaynak gereksinimlerine sahip farklı hizmet yığınlarında çalışan birden çok modeliniz olduğunda ve tek tek modellerin uç nokta bulut sunucularının tam kapasitesini kullanmak için yeterli trafiği olmadığında idealdir. Bu nedenle MCE'ler, tek modelli bir uç noktadan daha uygun maliyetlidir. MCE'ler eşzamanlı çıkarım yanıtı sunar; bu, uç noktanın her zaman kullanılabilir olduğu ve örneğin çalışma süresi için ödeme yaptığınız anlamına gelir. Örneklerin sayısına ve türüne bağlı olarak maliyet artabilir. |
çıkarım gecikmesi | MCE'ler, nadiren erişilen ancak yine de düşük gecikmeli çıkarım gerektiren her model için farklı makine öğrenimi çerçeveleri ve algoritmaları ile makine öğrenimi uygulamalarını çalıştırmak için idealdir. Modeller her zaman düşük gecikmeli çıkarım için kullanılabilir ve soğuk başlatma sorunu yoktur. |
çıktı | MCE'ler, çok kapsayıcı bir uç noktada en fazla 15 kapsayıcıyla sınırlıdır ve kaynak çekişmesi nedeniyle GPU çıkarımı desteklenmez. SageMaker, doğrudan çağırma modunu kullanan çok kapsayıcılı uç noktalar için, diğer yaygın uç noktalarda olduğu gibi yalnızca örnek düzeyinde ölçümler sağlamakla kalmaz, aynı zamanda kapsayıcı başına ölçümleri de destekler. En iyi uygulama olarak, girdi istekleri ve kaynak kullanımı için CloudWatch ölçümlerini gözden geçirin ve optimum aktarım hızı elde etmek için uygun bulut sunucusu tipini seçin. |
Ölçeklendirme yapılandırma karmaşıklığı | MCE'ler otomatik ölçeklendirmeyi destekler. Bununla birlikte, otomatik ölçeklendirmeyi yapılandırmak için her kapsayıcıdaki modelin her çıkarım isteğinde benzer CPU kullanımı ve gecikme süresi göstermesi önerilir. Bu, çok kapsayıcılı uç noktaya giden trafiğin düşük CPU kullanım modelinden yüksek CPU kullanım modeline geçmesi, ancak genel çağrı hacminin aynı kalması, uç noktanın ölçeklenmemesi ve yeterli örnek bulunmayabilmesi nedeniyle önerilir. yüksek CPU kullanım modeline yönelik tüm istekleri işlemek için. |
Trafik paterni | MCE'ler, sürekli veya düzenli trafik modellerine sahip iş yükleri ve bir uç nokta bulut sunucusunun tam kapasitesini doyurmaya yetecek kadar trafiğe sahip olmayan farklı çerçevelerde (TensorFlow, PyTorch veya Sklearn gibi) modeller barındırmak için idealdir. |
Çok modelli bir makine öğrenimi uygulamasını barındırma
Birçok iş uygulamasının, tüketicilerine tek bir tahmin isteği sunmak için birden fazla makine öğrenimi modeli kullanması gerekir. Örneğin, kullanıcılarına tavsiyelerde bulunmak isteyen bir perakende şirketi. Bu kullanım durumundaki makine öğrenimi uygulaması, farklı ürün kategorileri önermek için farklı özel modeller kullanmak isteyebilir. Şirket, bireysel kullanıcı bilgilerini kullanarak önerilere kişiselleştirme eklemek isterse, özel modellerin sayısı daha da artar. Her bir özel modeli ayrı bir bilgi işlem örneğinde barındırmak yalnızca maliyeti yüksek olmakla kalmaz, aynı zamanda tüm modeller sıklıkla kullanılmazsa barındırma kaynaklarının yetersiz kullanılmasına da yol açar. SageMaker, çoklu model tabanlı makine öğrenimi uygulamaları için verimli barındırma seçenekleri sunar.
Aşağıdaki diyagram, SageMaker kullanan tek bir uç nokta için çok modelli barındırma seçeneklerini göstermektedir.
Seri çıkarım ardışık düzeni
Çıkarım işlem hattı, veriler üzerinde çıkarım isteklerini işleyen 2-15 kapsayıcıdan oluşan doğrusal bir diziden oluşan bir SageMaker modelidir. Önceden eğitilmiş SageMaker yerleşik algoritmalarının herhangi bir kombinasyonunu ve Docker kapsayıcılarında paketlenmiş kendi özel algoritmalarınızı tanımlamak ve dağıtmak için bir çıkarım ardışık düzeni kullanırsınız. Ön işleme, tahminler ve son işleme veri bilimi görevlerini birleştirmek için bir çıkarım ardışık düzeni kullanabilirsiniz. Bir konteynerin çıktısı, bir sonrakine girdi olarak iletilir. Bir ardışık düzen modeli için kapları tanımlarken, kapların çalıştırılacağı sırayı da belirtirsiniz. SageMaker'da tek bir boru hattı modeli olarak temsil edilirler. Çıkarım ardışık düzeni, ardışık düzendeki kaplardan birinin çağrılan modele göre dinamik olarak istekler sunabileceği bir MME olarak konuşlandırılabilir. Ayrıca çalıştırabilirsiniz toplu dönüştürme bir çıkarım boru hattı ile iş. Çıkarım ardışık düzenleri tam olarak yönetilir.
Aşağıdaki tablo, bir seri çıkarım ardışık düzeni kullanarak makine öğrenimi modeli barındırma için uygunluk işlevlerini değerlendirme konusunda rehberlik sağlar.
Fitness fonksiyonu | Açıklama |
Ücret | Seri çıkarım işlem hattı, tek bir uç noktada 15 adede kadar farklı makine öğrenimi kapsayıcısı çalıştırmanıza olanak tanıyarak çıkarım kapsayıcılarını barındırmanın uygun maliyetli olmasını sağlar. Bu özelliği kullanmanın ek maliyeti yoktur. Yalnızca bir uç noktada çalışan bulut sunucuları için ödeme yaparsınız. Örneklerin sayısına ve türüne bağlı olarak maliyet artabilir. |
çıkarım gecikmesi | Bir makine öğrenimi uygulaması bir çıkarım ardışık düzeni olarak dağıtıldığında, farklı modeller arasındaki veriler kapsayıcı alanından ayrılmaz. Özellik işleme ve çıkarımlar, kapsayıcılar aynı EC2 bulut sunucularında birlikte bulunduğundan düşük gecikmeyle çalışır. |
çıktı | Bir çıkarım boru hattı modeli içinde, SageMaker çağrıları bir HTTP istekleri dizisi olarak işler. Ardışık düzendeki ilk kapsayıcı, ilk isteği işler, ardından ara yanıt, ikinci kaba bir istek olarak gönderilir ve bu, ardışık düzendeki her bir kapsayıcı için böyle devam eder. SageMaker, istemciye son yanıtı verir. Verim, model, model girdi boyutu, toplu iş boyutu ve uç nokta bulut sunucusu tipi gibi faktörlere bağlıdır. En iyi uygulama olarak, girdi istekleri ve kaynak kullanımı için CloudWatch ölçümlerini inceleyin ve optimum aktarım hızı elde etmek için uygun bulut sunucusu tipini seçin. |
Ölçeklendirme yapılandırma karmaşıklığı | Seri çıkarım ardışık düzenleri, otomatik ölçeklendirmeyi destekler. Bununla birlikte, otomatik ölçeklendirmeyi yapılandırmak için her kapsayıcıdaki modelin her çıkarım isteğinde benzer CPU kullanımı ve gecikme süresi göstermesi önerilir. Bu, çok kapsayıcılı uç noktaya giden trafiğin düşük CPU kullanımlı modelden yüksek CPU kullanımlı modele geçmesi, ancak genel çağrı hacminin aynı kalması durumunda uç noktanın ölçeğinin genişletilmemesi ve bunun için yeterli örnek bulunmayabileceği için önerilir. yüksek CPU kullanım modeline yönelik tüm istekleri yönetin. |
Trafik paterni |
Seri çıkarım ardışık düzenleri, aynı uç noktada sırayla çalışan modellerle öngörülebilir trafik kalıpları için idealdir. |
Model topluluklarını dağıtma (Triton DAG):
SageMaker ile entegrasyon sunar NVIDIA Triton Çıkarım Sunucusu içinden Triton Çıkarım Sunucusu Konteynerleri. Bu kapsayıcılar, NVIDIA Triton Inference Server'ı, yaygın makine öğrenimi çerçeveleri için desteği ve SageMaker'da performansı optimize etmenize izin veren kullanışlı ortam değişkenlerini içerir. NVIDIA Triton kapsayıcı görüntüleri ile makine öğrenimi modellerine kolayca hizmet verebilir ve NVIDIA Triton tarafından sağlanan performans optimizasyonlarından, dinamik gruplamadan ve çoklu çerçeve desteğinden yararlanabilirsiniz. Triton, çıkarım maliyetini daha da düşürerek GPU ve CPU kullanımını en üst düzeye çıkarmaya yardımcı olur.
Makine öğrenimi uygulamalarının bir tahmin isteğini yerine getirmek için birkaç model kullandığı iş amaçlı kullanım durumlarında, her modelin farklı bir çerçeve kullanması veya ayrı bir örnekte barındırılması, iş yükünün ve maliyetin yanı sıra genel gecikmede artışa neden olabilir. SageMaker NVIDIA Triton Çıkarım Sunucusu, TensorFlow GraphDef, TensorFlow SavedModel, ONNX, PyTorch TorchScript, TensorRT ve Python/C++ model biçimleri ve daha fazlası gibi tüm ana çerçevelerden modellerin dağıtımını destekler. Triton model topluluğu, bir veya daha fazla modelden oluşan bir boru hattını veya ön işleme ve son işleme mantığını ve aralarındaki giriş ve çıkış tensörlerinin bağlantısını temsil eder. Bir topluluğa yönelik tek bir çıkarım isteği, tüm ardışık düzenin çalışmasını tetikler. Triton ayrıca, çıkarım verimini artırmak için bireysel çıkarım isteklerini birleştiren birden çok yerleşik programlama ve kümeleme algoritmasına sahiptir. Bu zamanlama ve gruplandırma kararları, çıkarım talep eden müşteri için şeffaftır. Modeller, maksimum esneklik ve heterojen bilgi işlem gereksinimlerini desteklemek için CPU'lar veya GPU'lar üzerinde çalıştırılabilir.
Çok modelli uç noktalarda birden çok GPU destekli modelin barındırılması şu şekilde desteklenir: SageMaker Triton Çıkarım Sunucusu. NVIDIA Triton Çıkarım Sunucusu, bir MME API sözleşmesi, MME'lerle entegre etmek için. Farklı çerçeve arka uçları için bir model havuzu yapılandırması oluşturan NVIDIA Triton Çıkarım Sunucusunu, otomatik ölçeklendirmeli bir MME dağıtmak için kullanabilirsiniz. Bu özellik, yapay zeka uygulamalarında benzersiz son kullanıcı deneyimlerini karşılamak için hassas şekilde ayarlanmış yüzlerce hiper kişiselleştirilmiş modeli ölçeklendirmenize olanak tanır. Kesirli GPU'lar kullanan çıkarım uygulamanız için gerekli fiyat performansını elde etmek için de bu özelliği kullanabilirsiniz. Daha fazla bilgi edinmek için bkz. Amazon SageMaker çok modelli uç noktalarıyla GPU'da birden çok derin öğrenme modeli çalıştırın.
Aşağıdaki tablo, Triton çıkarım kapsayıcılarında GPU destekli MME'ler kullanan makine öğrenimi modeli barındırma için uygunluk işlevlerini değerlendirme konusunda rehberlik sağlar. Tek modelli uç noktalar ve sunucusuz uç nokta uygunluk işlevi değerlendirmeleri için bu gönderideki önceki bölümlere bakın.
Fitness fonksiyonu | Açıklama |
Ücret | Triton Inference Server kullanan GPU desteğine sahip SageMaker MME'leri, tek bir SageMaker uç noktasının arkasında çok sayıda derin öğrenme modelini devreye almak için ölçeklenebilir ve uygun maliyetli bir yol sağlar. MME'lerle birden çok model, GPU örneğini bir uç noktanın arkasında paylaşır. Bu, birden çok modeli barındırmanın doğrusal olarak artan maliyetini ortadan kaldırmanıza ve altyapıyı tüm modellerde yeniden kullanmanıza olanak tanır. Örneğin çalışma süresi için ödeme yaparsınız. |
çıkarım gecikmesi |
Triton Inference Sunuculu SageMaker, ultra düşük (tek haneli milisaniye) çıkarım gecikmesi ile verimi ve donanım kullanımını en üst düzeye çıkarmak için özel olarak oluşturulmuştur. Çok çeşitli desteklenen makine öğrenimi çerçevelerine (TensorFlow, PyTorch, ONNX, XGBoost ve NVIDIA TensorRT dahil) ve NVIDIA GPU'lar, CPU'lar ve AWS Çıkarımları. SageMaker Triton Inference Server'ı kullanan GPU için MME desteğiyle, binlerce derin öğrenme modelini tek bir SageMaker uç noktasının arkasında konuşlandırabilirsiniz. SageMaker, modeli NVIDIA Triton kapsayıcısının belleğine GPU ile hızlandırılmış bir örnek üzerinde yükler ve çıkarım isteğini yerine getirir. GPU çekirdeği, bir bulut sunucusundaki tüm modeller tarafından paylaşılır. Model kapsayıcı belleğinde zaten yüklüyse sonraki istekler daha hızlı sunulur çünkü SageMaker'ın modeli yeniden indirip yüklemesi gerekmez. |
çıktı |
MME'ler, Triton Inference Server ile GPU üzerinde aynı anda birden fazla derin öğrenme veya makine öğrenimi modeli çalıştırma yetenekleri sunar. Bu, SageMaker tamamen yönetilen model konuşlandırması ile hizmet veren NVIDIA Triton çoklu çerçeve, yüksek performanslı çıkarımı kolayca kullanmanıza olanak tanır. Triton, tüm NVIDIA GPU-, x86-, Arm® CPU- ve AWS Inferentia tabanlı çıkarımları destekler. İş hacmini ve kullanımı en üst düzeye çıkarmak için dinamik gruplama, eşzamanlı çalıştırmalar, optimum model yapılandırması, model topluluğu ve akışlı ses ve video girişleri sunar. Ağ ve yük boyutu gibi diğer faktörler, çıkarımla ilişkili ek yükte çok az rol oynayabilir. |
Ölçeklendirme yapılandırma karmaşıklığı |
MME'ler, bir otomatik ölçeklendirme ilkesi kullanarak yatay olarak ölçeklenebilir ve aşağıdakiler gibi metriklere dayalı olarak ek GPU bilgi işlem örnekleri sağlayabilir: Triton çıkarım sunucusuyla, Triton ile modelinizi içeren özel bir kapsayıcıyı kolaylıkla oluşturabilir ve onu SageMaker'a getirebilirsiniz. SageMaker Inference, istekleri işleyecek ve kullanım arttıkça konteyneri otomatik olarak ölçeklendirerek AWS üzerinde Triton ile model dağıtımını kolaylaştıracaktır. |
Trafik paterni |
MME'ler, aynı uç noktada DAG'ler olarak çalışan modellerle öngörülebilir trafik modelleri için idealdir. SageMaker, MME uç noktasına giden trafiği şekillendirmekle ilgilenir ve en iyi fiyat performansı için GPU örneklerinde en uygun model kopyalarını tutar. Modelin yüklendiği örneğe trafiği yönlendirmeye devam eder. Bulut sunucusu kaynakları yüksek kullanım nedeniyle kapasiteye ulaşırsa, SageMaker daha sık kullanılan modelleri yüklemek için kaynakları boşaltmak için kapsayıcıdan en az kullanılan modelleri kaldırır. |
En iyi uygulamalar
Aşağıdaki en iyi uygulamaları göz önünde bulundurun:
- Modeller arasında yüksek uyum ve düşük bağlantı – Modelleri, yüksek uyumluluğa sahip (tek işletme işlevselliğini yönlendiren) aynı kapsayıcıda barındırın ve yükseltme kolaylığı ve yönetilebilirlik için bunları bir araya getirin. Aynı zamanda, bir modeli diğer modelleri etkilemeden kolayca yükseltebilmek için bu modelleri birbirinden ayırın (farklı kapsayıcıda barındırın). Bir uç noktanın arkasında farklı kapsayıcıları kullanan birden çok modeli barındırın ve ardından bağımsız olarak çağırın veya seri çıkarım işlem hattı olarak model ön işleme ve son işleme mantığını ekleyin.
- çıkarım gecikmesi – Tek iş işlevselliğine dayalı modelleri gruplandırın ve atlama sayısını en aza indirmek ve dolayısıyla genel gecikmeyi en aza indirmek için bunları tek bir kapsayıcıda barındırın. Gruplandırılmış modellerin birden çok çerçeve kullanması gibi başka uyarılar da vardır; birden çok kapsayıcıda barındırmayı seçebilir, ancak gecikmeyi azaltmak ve maliyeti en aza indirmek için aynı ana bilgisayarda çalıştırabilirsiniz.
- Makine öğrenimi modellerini yüksek tutarlılıkla mantıksal olarak gruplandırın – Mantıksal grup, homojen (örneğin, tüm XGBoost modelleri) veya heterojen (örneğin, birkaç XGBoost ve birkaç BERT) olan modellerden oluşabilir. Birden çok iş işlevinde paylaşılan modellerden oluşabilir veya yalnızca bir iş işlevini yerine getirmeye özgü olabilir.
- Paylaşılan modeller – Mantıksal grup paylaşılan modellerden oluşuyorsa, modelleri yükseltme kolaylığı ve gecikme, SageMaker uç noktalarının mimarisinde önemli bir rol oynayacaktır. Örneğin, gecikme bir öncelikse, birden çok atlamadan kaçınmak için tüm modelleri tek bir SageMaker uç noktasının arkasındaki tek bir konteynere yerleştirmek daha iyidir. Dezavantajı ise, modellerden herhangi birinin yükseltilmesi gerekirse, bu, bu modeli barındıran tüm ilgili SageMaker uç noktalarının yükseltilmesine neden olacaktır.
- Paylaşılmayan modeller – Mantıksal grup yalnızca iş özelliğine özgü modellerden oluşuyorsa ve diğer gruplarla paylaşılmıyorsa, paketleme karmaşıklığı ve gecikme boyutları elde edilmesi gereken anahtar olacaktır. Bu modelleri, tek bir SageMaker uç noktasının arkasındaki tek bir kapsayıcıda barındırmanız önerilir.
- Donanımın verimli kullanımı (CPU, GPU) – CPU tabanlı modelleri bir arada gruplandırın ve CPU'yu verimli bir şekilde kullanabilmeniz için bunları aynı ana bilgisayarda barındırın. Benzer şekilde, GPU tabanlı modelleri birlikte gruplandırın, böylece onları verimli bir şekilde kullanabilir ve ölçeklendirebilirsiniz. Aynı ana bilgisayarda hem CPU hem de GPU gerektiren hibrit iş yükleri vardır. Yalnızca CPU ve yalnızca GPU modellerinin aynı ana bilgisayarda barındırılması, yüksek uyum ve uygulama gecikmesi gereksinimleri tarafından yönlendirilmelidir. Ek olarak, başarısızlık durumunda etki üzerindeki maliyet, ölçeklendirme yeteneği ve patlama yarıçapı, araştırılması gereken temel boyutlardır.
- Fitness fonksiyonları – Bir makine öğrenimi barındırma seçeneği seçmek için uygunluk işlevlerini kılavuz olarak kullanın.
Sonuç
Makine öğrenimi barındırma söz konusu olduğunda, herkese uyan tek bir yaklaşım yoktur. Makine öğrenimi uygulayıcılarının makine öğrenimi barındırma sorunlarını çözmek için doğru tasarım modelini seçmeleri gerekir. Uygunluk işlevlerinin değerlendirilmesi, doğru makine öğrenimi barındırma seçeneğinin seçilmesi konusunda kuralcı rehberlik sağlar.
Barındırma seçeneklerinin her biri hakkında daha fazla ayrıntı için bu dizideki aşağıdaki gönderilere bakın:
yazarlar hakkında
Dhaval Patel AWS'de Baş Makine Öğrenimi Mimarıdır. Dağıtılmış bilgi işlem ve Yapay Zeka ile ilgili sorunlar üzerinde büyük kuruluşlardan orta ölçekli girişimlere kadar çeşitli kuruluşlarla çalıştı. NLP ve Computer Vision alanları dahil olmak üzere Derin öğrenmeye odaklanmaktadır. Müşterilerin SageMaker'da yüksek performanslı model çıkarımı yapmasına yardımcı olur.
Deepali Rajale Amazon Web Services'ta AI/ML Uzmanı Teknik Hesap Yöneticisidir. En iyi uygulamalarla makine öğrenimi çözümlerinin uygulanması konusunda teknik rehberlik sağlayan kurumsal müşterilerle birlikte çalışır. Boş zamanlarında yürüyüş yapmaktan, film izlemekten ve ailesi ve arkadaşlarıyla takılmaktan hoşlanıyor.
Saurabh Trikande Amazon SageMaker Inference için Kıdemli Ürün Yöneticisidir. Müşterilerle çalışma konusunda tutkulu ve makine öğrenimini demokratikleştirme hedefiyle motive oluyor. Karmaşık makine öğrenimi uygulamaları, çok kiracılı makine öğrenimi modelleri, maliyet optimizasyonları ve derin öğrenme modellerinin dağıtımını daha erişilebilir hale getirmeyle ilgili temel zorluklara odaklanıyor. Saurabh boş zamanlarında yürüyüş yapmaktan, yenilikçi teknolojiler hakkında bilgi edinmekten, TechCrunch'ı takip etmekten ve ailesiyle vakit geçirmekten hoşlanıyor.
- SEO Destekli İçerik ve Halkla İlişkiler Dağıtımı. Bugün Gücünüzü Artırın.
- Plato blok zinciri. Web3 Metaverse Zekası. Bilgi Güçlendirildi. Buradan Erişin.
- Kaynak: https://aws.amazon.com/blogs/machine-learning/model-hosting-patterns-in-amazon-sagemaker-part-1-common-design-patterns-for-building-ml-applications-on-amazon-sagemaker/
- 1
- 10
- 100
- 11
- 39
- 7
- 70
- a
- kabiliyet
- Yapabilmek
- Hakkımızda
- hızlandırılmış
- erişim
- erişilen
- ulaşılabilir
- Karşılamak
- Hesap
- doğru
- Başarmak
- elde
- karşısında
- Action
- aktif
- ilave
- Ek
- Ayrıca
- adres
- ilerlemek
- ileri
- avantaj
- reklâm
- etkiler
- Sonra
- toplanma
- Toplayıcı
- agresif
- anlaşmalar
- AI
- AI / ML
- alarm
- algoritmalar
- Türkiye
- Izin
- veriyor
- zaten
- her zaman
- Amazon
- Amazon EC2
- Amazon Adaçayı Yapıcı
- Amazon Web Servisleri
- miktar
- analiz
- çözümlemek
- ve
- ve altyapı
- yıllık
- Başka
- Apache
- api
- Apple
- Uygulama
- uygulamaları
- yaklaşım
- uygun
- uygulamalar
- mimari
- ARM
- yapay
- yapay zeka
- yönleri
- değerlendirme
- ilişkili
- öznitelikleri
- ses
- denetimler
- Oto
- Otomatik
- Otomatik
- otomatik olarak
- kullanılabilirliği
- mevcut
- ortalama
- AWS
- Arka
- arka çıkılmış
- Bankacılık
- baz
- merkezli
- Çünkü
- müşterimiz
- olur
- önce
- arkasında
- olmak
- yarar
- İYİ
- en iyi uygulamalar
- Daha iyi
- arasında
- biyomedikal
- Engellemek
- Borçlanma
- sınırları
- kutu
- ihlal
- mola
- getirmek
- Getiriyor
- Bütçeler
- inşa etmek
- bina
- yapılı
- yerleşik
- iş
- İş Uygulamaları
- İş süreci
- işletmeler
- Önbellek
- hesaplanmış
- çağrı
- denilen
- Arayan
- adaylar
- yetenekleri
- Kapasite
- hangi
- dava
- durumlarda
- kategoriler
- nedenleri
- belli
- Onaylı
- zorluklar
- değişiklik
- değişiklikler
- özellikleri
- yüklü
- chatbot
- Kontrol
- yonga
- seçim
- choices
- Klinik
- seçme
- sınıf
- sınıflandırma
- sınıflandırmak
- müşteri
- istemciler
- Kapanış
- bulut
- Küme
- kod
- icat
- arkadaşları
- toplamak
- mücadele
- kombinasyon
- birleştirmek
- kombine
- ortak
- Şirketler
- şirket
- karşılaştırıldığında
- tamamlamak
- tamamen
- karmaşık
- karmaşıklık
- uyma
- bileşenler
- oluşan
- uzlaşma
- hesaplama gücü
- hesaplamak
- bilgisayar
- Bilgisayar görüşü
- bilgisayar
- kavram
- İlgilendirmek
- eşzamanlı
- yapılandırma
- bağ
- tutarlı
- tüketilen
- Tüketiciler
- Konteyner
- Konteynerler
- içeren
- devam etmek
- devam ediyor
- sürekli
- kontrol
- çekirdek
- uyan
- Ücret
- tasarruf
- uygun maliyetli
- maliyetler
- olabilir
- yaratmak
- oluşturur
- kritik
- çok önemli
- akım
- görenek
- müşteri
- Müşteriler
- DAG
- veri
- veri işleme
- veri bilimi
- veri bilimcisi
- veritabanı
- veri kümeleri
- gün
- ilgili
- kararlar
- adanmış
- derin
- derin öğrenme
- Varsayılan
- tanımlarken
- teslim etmek
- Talep
- talepleri
- Demokratikleştirilmesi
- bağlı
- bağlıdır
- dağıtmak
- konuşlandırılmış
- dağıtma
- açılma
- dağıtımları
- Dizayn
- tasarım desenleri
- tasarlanmış
- ayrıntı
- ayrıntılar
- Bulma
- Belirlemek
- Geliştirici
- gelişme
- diyagramlar
- farklı
- zor
- boyutlar
- direkt
- farklı
- dağıtıldı
- Dağıtılmış bilgi işlem
- çeşitli
- liman işçisi
- evraklar
- Değil
- etki
- Dont
- aşağı
- indir
- olumsuz
- tahrik
- düştü
- Damlama
- sırasında
- dinamik
- her
- Daha erken
- kolay
- kolayca
- Etkili
- etkili bir şekilde
- etki
- verimlilikleri
- verimli
- verimli biçimde
- çaba
- ya
- ortadan
- etkinleştirmek
- sağlar
- şifreleme
- son uca
- Son nokta
- Mühendislik
- Mühendisler
- yeterli
- sağlamak
- olmasını sağlar
- kuruluş
- işletmelerin
- Tüm
- çevre
- hata
- Hatalar
- özellikle
- değerlendirilir
- değerlendirmeler
- Hatta
- Etkinlikler
- her şey
- evrim
- örnek
- örnekler
- takas
- sergileyen
- beklemek
- beklenen
- deneyim
- Deneyimler
- keşfetmek
- ifade
- dış
- ekstra
- Yüz
- faktörler
- Başarısızlık
- oldukça
- aileleri
- aile
- Daha hızlı
- Özellikler(Hazırlık aşamasında)
- Özellikler
- besleme
- az
- son
- Ad
- ilk kez
- uygunluk
- FİLO
- Esneklik
- akış
- dalgalanma
- odaklanır
- takip etme
- şu
- Ford
- Airdrop Formu
- formlar
- kesirli
- iskelet
- çerçeveler
- dolandırıcılık
- sahtekarlık tespiti
- Ücretsiz
- Sıklık
- sık sık
- arkadaşlar
- itibaren
- Meyve
- tam
- tamamen
- işlev
- işlevsellikleri
- işlevsellik
- fonksiyonlar
- daha fazla
- KVKK
- genel
- oluşturulan
- üreten
- almak
- Vermek
- verilmiş
- gol
- Goller
- Tercih Etmenizin
- GPU
- GPU'lar
- grafik
- harika
- büyük
- çok
- grup
- Grubun
- Büyümek
- rehberlik
- sap
- Kolları
- kullanışlı
- donanım
- sahip olan
- Sağlık
- sağlık
- yardım et
- yardım
- yardımcı olur
- okuyun
- Yüksek
- yüksek performans
- yüksek çözünürlük
- daha yüksek
- vurmak
- Yatay
- ev sahibi
- ev sahipliği yaptı
- hosting
- barındırma maliyetleri
- barındırma hizmetleri
- Ne kadar
- Ancak
- HTML
- HTTPS
- Yüzlerce
- melez
- ideal
- Kimlik
- boş
- görüntü
- Görüntü sınıflandırması
- görüntüleri
- değişmez
- darbe
- etkiledi
- Etkiler
- uygulamak
- uygulanan
- uygulanması
- önemli
- iyileştirmek
- geliştirme
- in
- dahil
- içerir
- Dahil olmak üzere
- Gelen
- Artırmak
- artmış
- Artışlar
- artan
- bağımsız
- bağımsız
- bireysel
- bilgi
- Altyapı
- ilk
- yenilikçi
- yenilikçi teknolojiler
- giriş
- yükleme
- örnek
- yerine
- entegre
- bütünleşme
- İstihbarat
- interaktif
- dahil
- ISO
- izolasyon
- IT
- İş
- Mesleki Öğretiler
- anahtar
- anahtarlar
- Bilmek
- bilinen
- büyük
- büyük
- Gecikme
- başlatmak
- başlattı
- fırlatma
- öncülük etmek
- önemli
- İlanlar
- ÖĞRENİN
- öğrenme
- Ayrılmak
- Led
- seviye
- kütüphaneler
- kaldırma
- Sınırlı
- sınırları
- Liste
- yaşamak
- yük
- yükleme
- yükler
- yer
- Uzun
- uzun
- Bakın
- kaybetme
- Çok
- Düşük
- makine
- makine öğrenme
- yapılmış
- Ana
- korumak
- tutar
- büyük
- yapmak
- YAPAR
- Yapımı
- yönetmek
- yönetilen
- yönetim
- müdür
- yönetir
- yönetme
- çok
- Pazarlama
- matematiksel
- Mesele
- Maksimuma çıkarmak
- maksimum
- anlamına geliyor
- Neden
- Bellek
- yöntem
- yöntemleri
- metrik
- Metrikleri
- olabilir
- en az
- asgari
- dakika
- Karıştırma
- ML
- Moda
- model
- modelleri
- izlemek
- izleme
- Ay
- ay
- Daha
- çoğu
- motive
- filmler
- Çok Modelli Uç Nokta
- çoklu
- çokluk
- Tabiat
- gerekli
- gerek
- ihtiyaçlar
- ağ
- yeni
- sonraki
- nlp
- tebliğ
- bildirimleri
- numara
- Nvidia
- nesne
- nesnel
- hedefleri
- edinme
- nadiren
- teklif
- Teklifler
- çevrimdışı
- ONE
- Online
- açık kaynak
- işletmek
- faaliyet
- işletme
- işletme
- Operasyon
- operatörler
- optimum
- optimizasyon
- optimize
- optimize
- optimize
- optimize
- seçenek
- Opsiyonlar
- Portakal
- sipariş
- organizasyonlar
- Diğer
- ödenmemiş
- tüm
- kendi
- mülkiyet
- paket
- ambalaj
- parametreler
- Bölüm
- belirli
- Partner
- geçti
- tutkulu
- Yamalar
- model
- desen
- zirve
- Yapmak
- performans
- icra
- dönem
- periyodik
- dönemleri
- Kişiselleştirme
- Kişiselleştirilmiş
- seçmek
- boru hattı
- yer
- Yerler
- planlanmış
- ağladım
- platform
- Platformlar
- Platon
- Plato Veri Zekası
- PlatoVeri
- OYNA
- artı
- politikaları
- politika
- Popüler
- mümkün
- Çivi
- Mesajlar
- güç kelimesini seçerim
- uygulama
- uygulamalar
- tahmin edilebilir
- tahmin
- tahmin
- Tahminler
- tercihli
- Önceden
- fiyat
- Anapara
- öncelik
- özel
- Sorun
- sorunlar
- süreç
- İşlenmiş
- Süreçler
- işleme
- işlemciler
- PLATFORM
- ürün müdürü
- üretim
- Ürünler
- Profil
- uygun
- sağlamak
- sağlanan
- sağlar
- sağlama
- hüküm
- vekil
- amaç
- Itmek
- pytorch
- hızla
- menzil
- değişen
- hızla
- oran
- oranlar
- ulaşmak
- ulaşır
- Okumak
- hazır
- gerçek
- Gerçek dünya
- gerçek zaman
- teslim almak
- Alınan
- alır
- tavsiye etmek
- Tavsiye
- tavsiyeler
- Tavsiye edilen
- tavsiye
- önerir
- yinelenen
- azaltmak
- azaltır
- ifade eder
- Ne olursa olsun
- düzenli
- ilgili
- Bildirileri
- uygun
- kalıntılar
- Depo
- temsil
- temsil
- talep
- isteklerinizi
- gerektirir
- gereklidir
- gereklilik
- Yer Alan Kurallar
- gerektirir
- kaynak
- Kaynaklar
- yanıt
- DİNLENME
- sonuç
- Ortaya çıkan
- Sonuçlar
- perakende
- İade
- yorum
- Risk
- Rol
- kök
- Rota
- Kural
- koşmak
- koşu
- SaaS
- sagemaker
- SageMaker Çıkarımı
- maaş
- aynı
- İndirim
- tasarruf
- Tasarruf
- ölçeklenebilir
- ölçek
- terazi
- ölçekleme
- senaryolar
- program
- tarifeli
- Bilim
- bilim adamı
- İkinci
- saniye
- Bölüm
- bölümler
- Güvenli
- güvenlik
- seçme
- seçim
- kıdemli
- hassas
- Dizi
- seri
- Dizi
- hizmet vermek
- Serverless
- Sunucular
- vermektedir
- hizmet
- Hizmetler
- servis
- set
- ayar
- birkaç
- şekillendirme
- paylaş
- Paylaşılan
- Vardiyalar
- meli
- Gösteriler
- önemli
- önemli ölçüde
- benzer
- benzer şekilde
- Basit
- tek
- beden
- boyutları
- küçük
- daha küçük
- So
- Yazılım
- çözüm
- Çözümler
- biraz
- kaynaklar
- uzay
- uzman
- özel
- özel
- özellikle
- Belirtilen
- hız
- Harcama
- çiviler
- kararlı
- yığın
- Yığınları
- başlama
- başladı
- başlar
- başlangıç
- Startups
- istikrarlı
- adım
- Basamaklar
- Yine
- Durdurur
- hafızası
- mağaza
- stratejileri
- akış
- Sıkı
- şiddetle
- sonraki
- başarı
- başarılı
- böyle
- yeterli
- uygun
- destek
- destekli
- Destekler
- dalgalanma
- tablo
- Bizi daha iyi tanımak için
- alır
- Hedef
- Hedeflenen
- Görev
- görevleri
- takım
- takım
- TechCrunch
- Teknik
- Teknolojileri
- kiracı
- tensorflow
- test
- Test yapmak
- The
- ve bazı Asya
- kendilerini
- böylece
- bu nedenle
- Binlerce
- üç
- eşik
- İçinden
- boyunca
- verim
- zaman
- zamanlar
- için
- birlikte
- çok
- araç
- Toplam
- tps
- Takip
- trafik
- Tren
- eğitilmiş
- Eğitim
- işlemsel
- işlemler
- Dönüştürmek
- Dönüşüm
- dönüşüm
- transit
- şeffaf
- tetikleyebilir
- Triton
- DÖNÜŞ
- türleri
- tipik
- tipik
- altında
- altında yatan
- anlamak
- benzersiz
- birimleri
- öngörülemeyen
- kullanılmayan
- Güncelleme
- Güncellemeler
- yükseltmek
- yükseltilmiş
- uptime
- kullanım
- kullanım
- kullanım durumu
- kullanıcı
- kullanıcılar
- genellikle
- kullanmak
- kullanılan
- DOĞRULA
- değer
- Değerler
- Varyant
- çeşitli
- üzerinden
- Video
- Videolar
- Görüntüle
- Sanal
- vizyonumuz
- hacim
- Oy
- oy
- Atık
- ağ
- web hizmetleri
- hafta
- Ne
- Nedir
- hangi
- süre
- geniş
- Geniş ürün yelpazesi
- irade
- içinde
- olmadan
- İş
- işlenmiş
- işçi
- işçiler
- çalışma
- çalışır
- Dünya
- olur
- XGBoost
- yıl
- Sen
- zefirnet
- sıfır