Amazon SageMaker harcamalarını analiz edin ve kullanıma göre maliyet optimizasyonu fırsatlarını belirleyin, Bölüm 3: İşleme ve Veri Düzenleyici işleri | Amazon Web Hizmetleri

Amazon SageMaker harcamalarını analiz edin ve kullanıma göre maliyet optimizasyonu fırsatlarını belirleyin, Bölüm 3: İşleme ve Veri Düzenleyici işleri | Amazon Web Hizmetleri

2021'de başlattık AWS Support Proaktif Hizmetler bir parçası olarak AWS Kurumsal Desteği plan. Piyasaya sürülmesinden bu yana yüzlerce müşterinin iş yüklerini optimize etmelerine, güvenlik önlemleri oluşturmalarına ve makine öğrenimi (ML) iş yüklerinin maliyet ve kullanımının görünürlüğünü iyileştirmelerine yardımcı olduk.

Bu yazı dizisinde, maliyetleri optimize etme konusunda öğrenilen dersleri paylaşıyoruz. Amazon Adaçayı Yapıcı. Bu yazıda, kullanarak veri ön işlemeye odaklanıyoruz. Amazon SageMaker İşleme ve Amazon SageMaker Veri Düzenleyicisi Meslekler.

Veri ön işleme, veri merkezli yapay zeka yaklaşımında çok önemli bir role sahiptir. Ancak makine öğrenimi eğitimi ve değerlendirmesi için ham verileri hazırlamak, bilgi işlem kaynakları, zaman ve insan çabası açısından genellikle sıkıcı ve zorlu bir iştir. Veri hazırlığının genellikle farklı kaynaklardan entegre edilmesi ve eksik veya gürültülü değerler, aykırı değerler vb. ile ilgilenilmesi gerekir.

Ayrıca, ortak çıkarma, dönüştürme ve yükleme (ETL) görevlerine ek olarak, ML ekipleri zaman zaman verileri değerlendirmek ve özellik önem puanları üretmek için hızlı modeller oluşturmak veya MLOps işlem hattının bir parçası olarak eğitim sonrası model değerlendirmesi gibi daha gelişmiş yeteneklere ihtiyaç duyar.

SageMaker, bu sorunlara yardımcı olmak için özel olarak tasarlanmış iki özellik sunar: SageMaker İşleme ve Veri Wrangler. SageMaker Processing, tam olarak yönetilen bir altyapı üzerinde ön işlemeyi, son işlemeyi ve model değerlendirmeyi kolayca çalıştırmanıza olanak tanır. Data Wrangler, tek bir görsel arayüz ve tamamen dağıtılmış bir veri işleme ortamı kullanarak veri kaynağı entegrasyonu ve özellik mühendisliği sürecini basitleştirerek verileri toplamak ve hazırlamak için gereken süreyi azaltır.

Her iki SageMaker özelliği de çeşitli G/Ç, depolama ve hesaplama seçenekleriyle büyük esneklik sağlar. Ancak bu seçeneklerin yanlış ayarlanması, özellikle büyük veri kümeleriyle uğraşırken gereksiz maliyete yol açabilir.

Bu yazıda fiyatlandırma faktörlerini analiz ediyoruz ve SageMaker Processing ve Data Wrangler işleri için maliyet optimizasyonu rehberliği sağlıyoruz.

SageMaker İşleme

SageMaker Processing, veri işleme ve model değerlendirme iş yüklerini çalıştırmak için yönetilen bir çözümdür. ML iş akışlarında özellik mühendisliği, veri doğrulama, model değerlendirme ve model yorumlama gibi veri işleme adımlarında kullanabilirsiniz. SageMaker İşleme ile kendi özel işleme komut dosyalarınızı getirebilir ve özel bir kapsayıcı oluşturmayı veya scikit-learn, Lime, Spark ve daha fazlası gibi ortak çerçevelerle SageMaker tarafından yönetilen bir kapsayıcı kullanmayı seçebilirsiniz.

SageMaker Processing, kullanım süresine ve söz konusu örneğe eklenen sağlanan depolama alanına bağlı olarak, seçtiğiniz bulut sunucusu türü için sizden ücret alır. Bölüm 1'de kullanmaya nasıl başlayacağımızı gösterdik AWS Maliyet Gezgini SageMaker'da maliyet optimizasyonu fırsatlarını belirlemek.

Kullanım türüne filtre uygulayarak işlem maliyetlerini filtreleyebilirsiniz. Bu kullanım türlerinin adları aşağıdaki gibidir:

  • REGION-Processing:instanceType (Örneğin, USE1-Processing:ml.m5.large)
  • REGION-Processing:VolumeUsage.gp2 (Örneğin, USE1-Processing:VolumeUsage.gp2)

Maliyet Gezgini'nde SageMaker İşleme maliyetinizi incelemek için SageMaker ile filtreleme yaparak başlayın. Hizmet, Ve için Kullanım türü, tüm işlem örneklerinin çalışma saatlerini girerek seçebilirsiniz. processing:ml öneki ve menüdeki listeyi seçme.

Amazon SageMaker harcamalarını analiz edin ve kullanıma göre maliyet optimizasyonu fırsatlarını belirleyin, Bölüm 3: İşleme ve Veri Wrangler işleri | Amazon Web Hizmetleri PlatoBlockchain Veri Zekası. Dikey Arama. Ai.

İşleme ve boru hattı geliştirme maliyetlerinden kaçının

Bir SageMaker İşleme işinin çalışma süresini doğru boyutlandırmadan ve optimize etmeden önce, geçmiş iş çalıştırmalarıyla ilgili üst düzey ölçümleri kontrol ederiz. Bunu yapmak için iki yöntemden birini seçebilirsiniz.

Öncelikle şuraya erişebilirsiniz: İşlemde SageMaker konsolundaki sayfa.

Amazon SageMaker harcamalarını analiz edin ve kullanıma göre maliyet optimizasyonu fırsatlarını belirleyin, Bölüm 3: İşleme ve Veri Wrangler işleri | Amazon Web Hizmetleri PlatoBlockchain Veri Zekası. Dikey Arama. Ai.

Alternatif olarak, list_processing_jobs API'si.

Amazon SageMaker harcamalarını analiz edin ve kullanıma göre maliyet optimizasyonu fırsatlarını belirleyin, Bölüm 3: İşleme ve Veri Wrangler işleri | Amazon Web Hizmetleri PlatoBlockchain Veri Zekası. Dikey Arama. Ai.

İşleme işi durumu şunlar olabilir: InProgress, Completed, Failed, Stoppingya da Stopped.

Yeni MLOps işlem hatları geliştirilirken çok sayıda başarısız iş yaygındır. Ancak işleri SageMaker'da başlatmadan önce her zaman test etmeli ve doğrulamak için her türlü çabayı göstermelisiniz çünkü kullanılan kaynaklar için ücret alınır. Bu amaçla SageMaker Processing'i kullanabilirsiniz. yerel mod. Yerel mod, tahmin araçları, işlemciler ve işlem hatları oluşturmanıza ve bunları yerel geliştirme ortamınıza dağıtmanıza olanak tanıyan bir SageMaker SDK özelliğidir. Bu, komut dosyalarınızı SageMaker tarafından yönetilen bir ortamda çalıştırmadan önce test etmenin harika bir yoludur. Yerel mod, SageMaker tarafından yönetilen konteynerler ve sizin tedarik ettiğiniz konteynerler tarafından desteklenir. Yerel modun nasıl kullanılacağı hakkında daha fazla bilgi edinmek için Amazon SageMaker Ardışık Düzenleribakın Yerel mod.

G/Ç ile ilgili maliyeti optimize edin

SageMaker İşleme işleri, yönetilen işlerin bir parçası olarak üç veri kaynağına erişim sunar girdiyi işleme: Amazon Basit Depolama Hizmeti (Amazon S3), Amazon Atina, ve Amazon Kırmızıya Kaydırma. Daha fazla bilgi için bkz. İşlemeS3Giriş, AthenaVeri Kümesi Tanımı, ve RedshiftDataset Tanımı, Sırasıyla.

Optimizasyona bakmadan önce, SageMaker Processing işlerinin bu veri kaynaklarını desteklemesine rağmen zorunlu olmadıklarını unutmamak önemlidir. İşleme kodunuzda, erişilen verileri herhangi bir kaynaktan indirmek için herhangi bir yöntemi uygulayabilirsiniz (işleme örneğinin erişebilmesi koşuluyla).

İşleme performansına ve optimizasyon fırsatlarının tespitine ilişkin daha iyi bilgiler edinmek için aşağıdakileri yapmanızı öneririz: en iyi uygulamaları günlüğe kaydetme işleme komut dosyanızda. SageMaker, işleme günlüklerinizi şuraya yayınlar: Amazon Bulut İzleme.

Aşağıdaki örnek iş günlüğünde, komut dosyasının işlenmesinin 15 dakika (arası) sürdüğünü görüyoruz. Start custom script ve End custom script).

Amazon SageMaker harcamalarını analiz edin ve kullanıma göre maliyet optimizasyonu fırsatlarını belirleyin, Bölüm 3: İşleme ve Veri Wrangler işleri | Amazon Web Hizmetleri PlatoBlockchain Veri Zekası. Dikey Arama. Ai.

Ancak SageMaker konsolunda işin fazladan 4 dakika sürdüğünü görüyoruz (işin toplam çalışma süresinin neredeyse %25'i).

Amazon SageMaker harcamalarını analiz edin ve kullanıma göre maliyet optimizasyonu fırsatlarını belirleyin, Bölüm 3: İşleme ve Veri Wrangler işleri | Amazon Web Hizmetleri PlatoBlockchain Veri Zekası. Dikey Arama. Ai.

Bunun nedeni, işleme komut dosyamızın aldığı süreye ek olarak, SageMaker tarafından yönetilen veri indirme ve yükleme işlemlerinin de zaman almasıdır (4 dakika). Bunun maliyetin büyük bir kısmını oluşturduğu ortaya çıkarsa, dosyaları aynı anda indirmek için Boto3 API'yi çoklu işlemle kullanmak veya Amazon S5'ten daha hızlı indirmek için WebDataset veya s3cmd olarak üçüncü taraf kitaplıkları kullanmak gibi indirme süresini hızlandırmanın alternatif yollarını düşünün. . Daha fazla bilgi için bkz. S3 İş Yüklerini s5cmd ile Paralelleştirme. Bu tür yöntemlerin Amazon S3'te ücretlendirmeye yol açabileceğini unutmayın. veri aktarımı.

İşleme işleri de destekleniyor Boru modu. Bu yöntemle SageMaker, giriş verilerini kaynaktan doğrudan işleme konteynerinize, ML depolama birimini kullanmadan adlandırılmış kanallara aktarır, böylece veri indirme süresini ve daha küçük disk hacmini ortadan kaldırır. Ancak bu, diskteki dosyalardan okumaktan daha karmaşık bir programlama modeli gerektirir.

Daha önce de belirtildiği gibi SageMaker Processing, veri kaynağı olarak Athena ve Amazon Redshift'i de destekler. Bu kaynaklarla bir İşleme işi ayarlarken SageMaker, verileri otomatik olarak Amazon S3'e kopyalar ve işleme bulut sunucusu, verileri Amazon S3 konumundan getirir. Ancak iş bittiğinde yönetilen bir temizleme süreci olmaz ve kopyalanan veriler Amazon S3'te kalmaya devam eder ve istenmeyen depolama ücretlerine neden olabilir. Bu nedenle Athena ve Amazon Redshift veri kaynaklarını kullanırken Lambda işlevi gibi bir temizleme prosedürünü uyguladığınızdan emin olun. bir programa göre çalışır veya bir Lambda Adımı SageMaker üretim hattının bir parçası olarak.

İndirme gibi işleme yapıtlarının yüklenmesi de optimizasyon için bir fırsat olabilir. Bir İşleme işinin çıkışı kullanılarak yapılandırıldığında ProcessingS3Output parametresini belirleyebilirsiniz. S3UploadMode kullanmak. The S3UploadMode parametrenin varsayılan değeri: EndOfJobBu, SageMaker'ın iş tamamlandıktan sonra sonuçları yüklemesini sağlayacaktır. Ancak İşleme işiniz birden fazla dosya üretiyorsa, S3UploadMode için Continuousböylece işlem devam ederken eş zamanlı olarak yapıtların yüklenmesine olanak sağlanır ve işin çalışma süresi kısaltılır.

Doğru boyutta iş örnekleri işleme

Doğru bulut sunucusu tipini ve boyutunu seçmek, SageMaker Processing işlerinin maliyetini optimize etmede önemli bir faktördür. Aynı bulut sunucusu ailesi içindeki farklı bir sürüme veya başka bir bulut sunucusu ailesine geçiş yaparak bir bulut sunucusunu doğru boyutlandırabilirsiniz. Aynı bulut sunucusu ailesi içinde geçiş yaparken yalnızca CPU/GPU ve belleği dikkate almanız gerekir. Doğru işleme kaynaklarını seçme konusunda daha fazla bilgi ve genel rehberlik için bkz. Amazon SageMaker'da verimli bilgi işlem kaynakları sağlayın.

Bulut sunucusu seçimine ince ayar yapmak için CloudWatch'ta İşleme işi ölçümlerini analiz ederek başlıyoruz. Daha fazla bilgi için bkz. Amazon CloudWatch ile Amazon SageMaker'ı izleyin.

CloudWatch, SageMaker'dan ham verileri toplar ve bunları okunabilir, neredeyse gerçek zamanlı ölçümlere dönüştürür. Bu istatistikler 15 ay boyunca saklansa da CloudWatch konsolu, aramayı son 2 hafta içinde güncellenen ölçümlerle sınırlandırır (bu, yalnızca mevcut işlerin gösterilmesini sağlar). İşleme işleri ölçümleri /aws/sagemaker/ProcessingJobs ad alanında bulunabilir ve toplanan ölçümler şunlardır: CPUUtilization, MemoryUtilization, GPUUtilization, GPUMemoryUtilization, ve DiskUtilization.

Aşağıdaki ekran görüntüsü, daha önce gördüğümüz İşleme işinin CloudWatch'taki bir örneğini göstermektedir.

Amazon SageMaker harcamalarını analiz edin ve kullanıma göre maliyet optimizasyonu fırsatlarını belirleyin, Bölüm 3: İşleme ve Veri Wrangler işleri | Amazon Web Hizmetleri PlatoBlockchain Veri Zekası. Dikey Arama. Ai.

Bu örnekte ortalama CPU ve bellek değerlerini görüyoruz (Bu, CloudWatch'ta varsayılan değerdir): ortalama CPU kullanımı %0.04, bellek %1.84 ve disk kullanımı %13.7'dir. Doğru boyutu belirlemek için her zaman maksimum CPU ve bellek kullanımını göz önünde bulundurun (bu örnekte maksimum CPU kullanımı ilk 98 dakikada %3'di). Genel bir kural olarak, maksimum CPU ve bellek kullanımınız sürekli olarak %40'ın altındaysa, makineyi güvenli bir şekilde yarıya indirebilirsiniz. Örneğin, ml.c5.4xlarge örneğini kullanıyorsanız ml.c5.2xlarge örneğine geçebilirsiniz, bu da maliyetinizi %50 azaltabilir.

Veri Yöneticisi iş ilanları

Veri Wrangler bir özelliğidir Amazon SageMaker Stüdyosu Veri araştırması ve işleme için tekrarlanabilir ve ölçeklenebilir bir çözüm sağlar. Verilerinizi etkileşimli olarak içe aktarmak, analiz etmek, dönüştürmek ve özelleştirmek için Data Wrangler arayüzünü kullanırsınız. Bu adımlar, daha sonra bir Veri Wrangler işinde kullanabileceğiniz bir tarifte (bir .flow dosyası) yakalanır. Bu, aynı veri dönüşümlerini verilerinize yeniden uygulamanıza ve ayrıca bir makine öğrenimi hattının parçası olarak veya bağımsız olarak dağıtılmış bir toplu veri işleme işine göre ölçeklendirmenize yardımcı olur.

Data Wrangler uygulamanızı Studio'da optimize etmeye yönelik rehberlik için bu serinin 2. Bölümüne bakın.

Bu bölümde Data Wrangler işlerini optimize etmeye odaklanıyoruz.

Data Wrangler'ın kullandığı SageMaker Spark işleme işleri Data Wrangler tarafından yönetilen bir kapsayıcıyla. Bu kapsayıcı, işteki .flow dosyasındaki talimatları çalıştırır. Tüm işleme işlerinde olduğu gibi Data Wrangler da seçtiğiniz bulut sunucuları için, kullanım süresine ve söz konusu örneğe eklenen sağlanan depolama alanına göre ücret alır.

Maliyet Gezgini'nde, kullanım türüne bir filtre uygulayarak Data Wrangler işlerinin maliyetlerini filtreleyebilirsiniz. Bu kullanım türlerinin adları şunlardır:

  • REGION-processing_DW:instanceType (Örneğin, USE1-processing_DW:ml.m5.large)
  • REGION-processing_DW:VolumeUsage.gp2 (Örneğin, USE1-processing_DW:VolumeUsage.gp2)

Data Wrangler maliyetinizi Cost Explorer'da görüntülemek için hizmeti SageMaker'ı kullanacak şekilde filtreleyin ve Kullanım türü, seç processing_DW öneki seçin ve menüdeki listeyi seçin. Bu size hem bulut sunucusu kullanımı (saat) hem de depolama hacmi (GB) ile ilgili maliyetleri gösterir. (Studio Data Wrangler maliyetlerini görmek istiyorsanız kullanım türünü Studio_DW önek.)

Amazon SageMaker harcamalarını analiz edin ve kullanıma göre maliyet optimizasyonu fırsatlarını belirleyin, Bölüm 3: İşleme ve Veri Wrangler işleri | Amazon Web Hizmetleri PlatoBlockchain Veri Zekası. Dikey Arama. Ai.

Data Wrangler iş örneklerini doğru boyutlandırın ve planlayın

Şu anda Data Wrangler yalnızca şu bulut sunucusu boyutlarına sahip m5 bulut sunucularını desteklemektedir: ml.m5.4xlarge, ml.m5.12xlarge ve ml.m5.24xlarge. İş maliyetinize ince ayar yapmak için dağıtılmış iş özelliğini kullanabilirsiniz. Örneğin 350 GiB RAM gerektiren bir veri setini işlemeniz gerektiğini varsayalım. 4xlarge (128 GiB) ve 12xlarge (256 GiB) işlenemeyebilir ve sizi m5.24xlarge örneğini (768 GiB) kullanmaya yönlendirebilir. Ancak iki m5.12xlarge bulut sunucusu (2 * 256 GiB = 512 GiB) kullanarak maliyeti %40 azaltabilir veya üç m5.4xlarge bulut sunucusu (3 * 128 GiB = 384 GiB) kullanarak m50xlarge'dan %5.24 tasarruf edebilirsiniz. örnek maliyeti. Bunların tahmin olduğunu ve dağıtılmış işlemenin genel çalışma süresini etkileyecek bazı ek yüklere yol açabileceğini unutmayın.

Örnek türünü değiştirirken güncellediğinizden emin olun. Spark yapılandırması buna göre. Örneğin, özelliklerle yapılandırılmış bir başlangıç ​​ml.m5.4xlarge örnek işiniz varsa spark.driver.memory 2048'a ayarlayın ve spark.executor.memory 55742 olarak ayarlandıysa ve daha sonra ml.m5.12xlarge'ye ölçeklendirildiyse, bu yapılandırma değerlerinin artırılması gerekir, aksi takdirde bunlar işleme işinde darboğaz oluşturacaktır. Bu değişkenleri Data Wrangler GUI'sinde veya yapılandırma yoluna eklenen bir yapılandırma dosyasında güncelleyebilirsiniz (aşağıdaki örneklere bakın).

Amazon SageMaker harcamalarını analiz edin ve kullanıma göre maliyet optimizasyonu fırsatlarını belirleyin, Bölüm 3: İşleme ve Veri Wrangler işleri | Amazon Web Hizmetleri PlatoBlockchain Veri Zekası. Dikey Arama. Ai.

Amazon SageMaker harcamalarını analiz edin ve kullanıma göre maliyet optimizasyonu fırsatlarını belirleyin, Bölüm 3: İşleme ve Veri Wrangler işleri | Amazon Web Hizmetleri PlatoBlockchain Veri Zekası. Dikey Arama. Ai.

Data Wrangler'ın bir başka ilgi çekici özelliği de planlanmış bir iş ayarla. Verileri düzenli aralıklarla işliyorsanız işleme işini otomatik olarak çalıştırmak için bir zamanlama oluşturabilirsiniz. Örneğin, yeni veriler aldığınızda bir işleme işini otomatik olarak yürüten bir zamanlama oluşturabilirsiniz (örnekler için bkz. Amazon S3'e aktar or Amazon SageMaker Özellik Mağazasına Aktarın). Ancak, bir zamanlama oluşturduğunuzda Data Wrangler'ın bir zamanlama oluşturduğunu unutmayın. eventRule EventBridge'de. Bu, oluşturduğunuz etkinlik kuralları (ve ayrıca işleme işini yürütmek için kullanılan örnekler) için de ücretlendirileceğiniz anlamına gelir. Daha fazla bilgi için bakınız Amazon EventBridge fiyatlandırması.

Sonuç

Bu yazıda, ön işleme sırasındaki maliyet analizi ve en iyi uygulamalar hakkında rehberlik sağladık

SageMaker Processing ve Data Wrangler işlerini kullanarak veriler. Ön işlemeye benzer şekilde, makine öğrenimi modellerinin oluşturulmasında, eğitilmesinde ve çalıştırılmasında gereksiz maliyetlere yol açabilecek birçok seçenek ve yapılandırma ayarı vardır. Bu nedenle, makine öğrenimi kendisini tüm sektörlerde güçlü bir araç olarak kabul ettirdikçe, makine öğrenimi iş yüklerinin de uygun maliyetli kalması gerekiyor.

SageMaker, makine öğrenimi hattındaki her adımı kolaylaştırmak için geniş ve derin bir özellik seti sunar.

Bu sağlamlık aynı zamanda performanstan veya çeviklikten ödün vermeden sürekli maliyet optimizasyonu fırsatları da sağlar.


Yazarlar Hakkında

Amazon SageMaker harcamalarını analiz edin ve kullanıma göre maliyet optimizasyonu fırsatlarını belirleyin, Bölüm 3: İşleme ve Veri Wrangler işleri | Amazon Web Hizmetleri PlatoBlockchain Veri Zekası. Dikey Arama. Ai.Deepali Rajale AWS'de Kıdemli AI/ML Uzmanıdır. AWS ekosisteminde AI/ML çözümlerini dağıtmak ve sürdürmek için en iyi uygulamalarla teknik rehberlik sağlayan kurumsal müşterilerle birlikte çalışıyor. NLP ve bilgisayarlı görmeyi içeren çeşitli derin öğrenme kullanım senaryoları üzerinde çok çeşitli kuruluşlarla çalıştı. Kullanım deneyimlerini geliştirmek için kuruluşların üretken yapay zekadan yararlanmalarını sağlama konusunda tutkulu. Boş zamanlarında film, müzik ve edebiyattan hoşlanıyor.

Amazon SageMaker harcamalarını analiz edin ve kullanıma göre maliyet optimizasyonu fırsatlarını belirleyin, Bölüm 3: İşleme ve Veri Wrangler işleri | Amazon Web Hizmetleri PlatoBlockchain Veri Zekası. Dikey Arama. Ai.Uri Rosenberg Avrupa, Orta Doğu ve Afrika'nın Yapay Zeka ve Öğrenim Uzmanı Teknik Müdürüdür. Merkezi İsrail'de bulunan Uri, kurumsal müşterilere makine öğrenimi ile ilgili her konuda geniş ölçekte tasarlama, oluşturma ve çalıştırma konusunda destek sağlamak için çalışıyor. Boş zamanlarında bisiklete binmekten, yürüyüş yapmaktan ve gün batımını izlemekten (günde en az bir kez) hoşlanıyor.

Zaman Damgası:

Den fazla AWS Makine Öğrenimi