Azure Machine Learning maliyetlerini yönetme ve iyileştirme
Makine öğrenmesi modellerini eğitip Azure Machine Learning'e dağıtırken maliyetleri yönetmeyi ve iyileştirmeyi öğrenin.
İşlem kaynağı maliyetlerinizi yönetmenize ve iyileştirmenize yardımcı olması için aşağıdaki ipuçlarını kullanın.
- Eğitim kümelerinizi otomatik ölçeklendirme için yapılandırma
- Aboneliğinizde ve çalışma alanlarınızda kotaları ayarlama
- Eğitim işinizde sonlandırma ilkeleri ayarlama
- Düşük öncelikli sanal makineleri (VM) kullanma
- İşlem örneklerini otomatik olarak kapanacak ve başlatacak şekilde zamanlama
- Azure Ayrılmış VM Örneği kullanma
- Yerel olarak eğit
- Eğitimi paralelleştirme
- Veri saklama ve silme ilkelerini ayarlama
- Kaynakları aynı bölgeye dağıtma
Maliyetleri planlama ve izleme hakkında bilgi için Bkz. Azure Machine Learning maliyetlerini yönetme planı kılavuzu.
Önemli
Bu makalede işaretlenmiş (önizleme) öğeler şu anda genel önizleme aşamasındadır. Önizleme sürümü bir hizmet düzeyi sözleşmesi olmadan sağlanır ve üretim iş yükleri için önerilmez. Bazı özellikler desteklenmiyor olabileceği gibi özellikleri sınırlandırılmış da olabilir. Daha fazla bilgi için bkz. Microsoft Azure Önizlemeleri için Ek Kullanım Koşulları.
Azure Machine Learning işlem kümesini kullanma (AmlCompute)
Sürekli değişen verilerle, doğru modelleri korumak için hızlı ve kolaylaştırılmış model eğitimine ve yeniden eğitmeye ihtiyacınız vardır. Ancak, özellikle GPU'lardaki derin öğrenme modelleri için sürekli eğitimin bir maliyeti vardır.
Azure Machine Learning kullanıcıları AmlCompute olarak da adlandırılan yönetilen Azure Machine Learning işlem kümesini kullanabilir. AmlCompute çeşitli GPU ve CPU seçeneklerini destekler. AmlCompute, Azure Machine Learning tarafından aboneliğiniz adına şirket içinde barındırılır. Azure IaaS bulut ölçeğinde aynı kurumsal düzeyde güvenlik, uyumluluk ve idare sağlar.
Bu işlem havuzları Azure'ın IaaS altyapısının içinde olduğundan, eğitiminizi altyapınızın geri kalanıyla aynı güvenlik ve uyumluluk gereksinimleriyle dağıtabilir, ölçeklendirebilir ve yönetebilirsiniz. Bu dağıtımlar aboneliğinizde gerçekleşir ve idare kurallarınıza uyar. Azure Machine Learning işlem hakkında daha fazla bilgi edinin.
Otomatik ölçeklendirme için eğitim kümelerini yapılandırma
İş yükünüzün gereksinimlerine göre kümeleri otomatik ölçeklendirme maliyetlerinizi azaltmaya yardımcı olur, böylece yalnızca ihtiyacınız olanı kullanırsınız.
AmlCompute kümeleri, iş yükünüz temelinde dinamik olarak ölçeklendirilecek şekilde tasarlanmıştır. Kümenin ölçeği yapılandırdığınız en fazla düğüm sayısına kadar artırılabilir. Her iş tamamlandıktan sonra küme düğümleri serbest bırakır ve yapılandırılan en düşük düğüm sayınıza ölçeklendirir.
Önemli
Hiçbir iş çalışmadığında ücretlerden kaçınmak için en düşük düğümleri 0 olarak ayarlayın. Bu ayar, Azure Machine Learning'in kullanımda olmayan düğümleri ayırmasını sağlar. 0'dan büyük herhangi bir değer, kullanımda olmasalar bile bu sayıda düğümü çalışır durumda tutar.
Ölçeği azaltmadan önce düğümün boşta kalma süresini de yapılandırabilirsiniz. Varsayılan olarak, ölçeği azaltmadan önceki boşta kalma süresi 120 saniye olarak ayarlanır.
- Daha az yinelemeli deneme gerçekleştirirseniz maliyet tasarrufu yapmak için bu süreyi azaltın.
- Yüksek yinelemeli geliştirme/test denemesi gerçekleştirirseniz, eğitim betiğinizde veya ortamınızda yapılan her değişiklik sonrasında sürekli ölçeği artırma ve azaltma için ödeme yapmamak için süreyi artırmanız gerekebilir.
AmlCompute kümeleri, REST API'leri ile AmlCompute CLI sınıfı kullanılarak Azure portal'de değişen iş yükü gereksinimleriniz için yapılandırılabilir.
Kaynaklarda kota ayarlama
AmlCompute bir kota (veya sınır) yapılandırmasıyla birlikte gelir. Bu kota VM ailesine (örneğin, Dv2 serisi, NCv3 serisi) göredir ve her abonelik için bölgeye göre değişir. Abonelikler, çalışmaya başlamanız için küçük varsayılan değerlerle başlar, ancak aboneliğinizde kullanılabilir amlcompute kaynaklarının miktarını denetlemek için bu ayarı kullanın.
Ayrıca, bir abonelik içindeki her çalışma alanı için VM ailesine göre çalışma alanı düzeyi kotasını yapılandırın. Bunun yapılması, her çalışma alanının ortaya çıkabilecek maliyetler üzerinde daha ayrıntılı denetim sahibi olmanıza ve belirli VM ailelerini kısıtlamanıza olanak tanır.
Çalışma alanı düzeyinde kota ayarlamak için Azure portal başlayın. Aboneliğinizdeki herhangi bir çalışma alanını seçin ve sol bölmede Kullanımlar + kotalar'ı seçin. Ardından Kotaları yapılandır sekmesini seçerek kotaları görüntüleyin. Birden çok çalışma alanını etkileyen bir ayar olduğundan, kotayı ayarlamak için abonelik kapsamında ayrıcalıklara sahip olmanız gerekir.
İşi otomatik ölçeklendirme ilkelerini ayarlama
Bazı durumlarda, eğitim çalıştırmalarınızı sürelerini sınırlamak veya erken sonlandırmak için yapılandırmanız gerekir. Örneğin, Azure Machine Learning'in yerleşik hiper parametre ayarlamasını veya otomatik makine öğrenmesini kullanırken.
Sahip olduğunuz birkaç seçenek şunlardır:
- Bir çalıştırmanın seçtiğiniz işlemde (yerel veya uzak bulut işlemi) uzatabileceği en uzun süreyi denetlemek için RunConfiguration içinde adlı
max_run_duration_seconds
bir parametre tanımlayın. - Hiper parametre ayarlaması için Bir Bant ilkesinden, Ortanca durdurma ilkesinden veya Kesme seçim ilkesinden erken sonlandırma ilkesi tanımlayın. Hiper parametre süpürmelerini daha fazla denetlemek için veya
max_duration_minutes
gibimax_total_runs
parametreleri kullanın. - Otomatik makine öğrenmesi için bayrağını
enable_early_stopping
kullanarak benzer sonlandırma ilkeleri ayarlayın. Ayrıca, bir işin veya tüm denemenin en uzun süresini denetlemek için veexperiment_timeout_minutes
gibiiteration_timeout_minutes
özellikleri kullanın.
Düşük öncelikli VM’ler kullanma
Azure sanal makine ölçek kümeleri, Batch ve Machine Learning hizmeti genelinde vm'ler Low-Priority fazla unutılmış kapasiteyi kullanmanıza olanak tanır. Bu ayırmalar önceden uygulanabilir ancak ayrılmış VM'lere kıyasla daha düşük bir fiyata gelir. Genel olarak, Batch iş yükleri için Low-Priority VM'leri kullanmanızı öneririz. Ayrıca, kesintilerin yeniden göndermeler (Batch Çıkarım için) veya yeniden başlatmalar (denetim noktası oluşturma ile derin öğrenme eğitimi için) aracılığıyla kurtarılabilir olduğu durumlarda da kullanmanız gerekir.
Low-Priority VM'lerin ayrılmış kota değerinden ayrı tek bir kotası vardır ve bu da VM ailesi tarafından gerçekleştirilen bir kotadır. AmlCompute kotaları hakkında daha fazla bilgi edinin.
Low-Priority VM'ler, etkileşimli not defteri deneyimlerini desteklemeleri gerektiğinden işlem örnekleri için çalışmaz.
İşlem örneklerini zamanlama
Bir işlem örneği oluşturduğunuzda, VM çalışmanız için kullanılabilir olacak şekilde açık kalır.
- VM belirli bir süre boşta kaldığında maliyetten tasarruf etmek için boşta kapatmayı (önizleme) etkinleştirin.
- Alternatif olarak, kullanmayı planlamıyorsanız maliyetten tasarruf etmek için işlem örneğini (önizleme) otomatik olarak başlatacak ve durduracak bir zamanlama ayarlayabilirsiniz .
Ayrılmış örnekleri kullanma
İşlem kaynaklarında tasarruf etmenin bir diğer yolu da Azure Ayrılmış VM Örneği'dir. Bu teklifle, bir yıllık veya üç yıllık dönemler için taahhütte bulunursunuz. Bu indirimler kullandıkça öde fiyatlarının %72'sine kadar değişir ve doğrudan aylık Azure faturanıza uygulanır.
Azure Machine Learning İşlem, ayrılmış örnekleri doğal olarak destekler. Bir yıllık veya üç yıllık ayrılmış örnek satın alırsanız Azure Machine Learning yönetilen işleminize otomatik olarak indirim uygularız.
Eğitimi paralelleştirme
Maliyeti ve performansı iyileştirmenin temel yöntemlerinden biri, Azure Machine Learning'de paralel bir bileşenin yardımıyla iş yükünü paralelleştirmektir. Paralel bileşen, görevi paralel olarak yürütmek için çok daha küçük düğümler kullanmanıza olanak tanır, bu nedenle yatay olarak ölçeklendirmenize olanak tanır. Paralelleştirme için bir ek yük vardır. Elde edilebilecek iş yüküne ve paralellik derecesine bağlı olarak, bu bir seçenek olabilir veya olmayabilir. Diğer ayrıntılar için ParallelComponent belgeleri için bu bağlantıyı izleyin.
Veri saklama & silme ilkelerini ayarlama
Bir işlem hattı her çalıştırıldığında, her adımda ara veri kümeleri oluşturulur. Zaman içinde bu ara veri kümeleri depolama hesabınızda yer kaplar. Veri kümelerinizi arşivleyip silmek için yaşam döngüsü boyunca verilerinizi yönetmek için ilkeler ayarlamayı göz önünde bulundurun. Daha fazla bilgi için bkz. Azure Blob Depolama erişim katmanlarını otomatikleştirerek maliyetleri iyileştirme.
Kaynakları aynı bölgeye dağıtma
Farklı bölgelerde bulunan işlemlerde ağ gecikmesi ve artan veri aktarımı maliyetleri yaşanabilir. Azure ağ maliyetleri, Azure veri merkezlerinden giden bant genişliğinden kaynaklanmaktadır. Ağ maliyetlerini azaltmaya yardımcı olmak için bölgedeki tüm kaynaklarınızı dağıtın. Azure Machine Learning çalışma alanınızı ve bağımlı kaynakları verilerinizle aynı bölgede sağlamak, maliyetin düşmesine ve performansın artırılmasına yardımcı olabilir.
ExpressRoute kullananlar gibi hibrit bulut senaryolarında, ağ maliyetlerini ve gecikme süresini iyileştirmek için tüm kaynakları Azure'a taşımak bazen daha uygun maliyetli olabilir.