Azure Machine Learning nedir?

Azure Machine Learning, makine öğrenmesi projesi yaşam döngüsünü hızlandırmaya ve yönetmeye yönelik bir bulut hizmetidir. Makine öğrenmesi uzmanları, veri bilimcileri ve mühendisler bunu günlük iş akışlarında kullanabilir: Modelleri eğitip dağıtın ve MLOps'yi yönetin.

Azure Machine Learning'de model oluşturabilir veya Pytorch, TensorFlow veya scikit-learn gibi açık kaynak bir platformdan oluşturulmuş bir model kullanabilirsiniz. MLOps araçları modelleri izlemenize, yeniden eğitmenize ve yeniden dağıtmanıza yardımcı olur.

İpucu

Ücretsiz deneme! Azure aboneliğiniz yoksa başlamadan önce ücretsiz bir hesap oluşturun. Azure Machine Learning'in ücretsiz veya ücretli sürümünü deneyin. Azure hizmetlerinde harcayabileceğiniz krediler alırsınız. Krediler bittikten sonra hesabı tutabilir ve ücretsiz Azure hizmetlerini kullanabilirsiniz. Açıkça ayarlarınızı değiştirip ücretlendirme istemediğiniz sürece kredi kartınız asla ücretlendirilmez.

Azure Machine Learning kimin için?

Azure Machine Learning, makine öğrenmesi modellerini güvenli ve denetlenebilir bir üretim ortamında üretime geçirmek için kuruluşlarında MLOps uygulayan kişilere ve ekiplere yöneliktir.

Veri bilimciler ve ML mühendisleri, günlük iş akışlarını hızlandırmaya ve otomatikleştirmeye yönelik araçlar bulur. Uygulama geliştiricileri modelleri uygulamalar veya hizmetlerle tümleştirmeye yönelik araçlar bulur. Platform geliştiricileri, gelişmiş ML araçları oluşturmak için dayanıklı Azure Resource Manager API'leri tarafından desteklenen güçlü bir araç kümesi bulur.

Microsoft Azure bulutunda çalışan kuruluşlar, altyapı için tanıdık güvenlik ve rol tabanlı erişim denetimi (RBAC) bulur. Korumalı verilere erişimi reddedecek bir proje ayarlayabilir ve işlemleri seçebilirsiniz.

Ekipte herkes için üretkenlik

Makine öğrenmesi projeleri genellikle oluşturmak ve bakımını yapmak için çeşitli beceri kümesine sahip bir ekip gerektirir. Azure Machine Learning'de şunları yapmanızı sağlayan araçlar vardır:

  • Paylaşılan not defterleri, işlem kaynakları, veriler ve ortamlar aracılığıyla ekibinizle işbirliği yapma

  • Köken ve denetim uyumluluk gereksinimlerini karşılamak için eşitlik ve açıklanabilirlik, izleme ve denetlenebilirlik için modeller geliştirin

  • ML modellerini büyük ölçekte hızlı ve kolay bir şekilde dağıtın ve MLOps ile bunları verimli bir şekilde yönetin ve yönetin

  • Yerleşik idare, güvenlik ve uyumluluk ile makine öğrenmesi iş yüklerini her yerde çalıştırma

İhtiyaçlarınızı karşılayan uyumlu platform araçları

ML ekibindeki herkes, işi yapmak için tercih ettiği araçları kullanabilir. Hızlı denemeler, hiper parametre ayarlama, işlem hatları oluşturma veya çıkarımları yönetme gibi işlemler gerçekleştiriyor olun, aşağıdakiler gibi tanıdık arabirimleri kullanabilirsiniz:

Modeli iyileştirdiğiniz ve Machine Learning geliştirme döngüsünün geri kalanında başkalarıyla işbirliği yaptığınız için Azure Machine Learning stüdyosu kullanıcı arabiriminde projelerinizin varlıklarını, kaynaklarını ve ölçümlerini paylaşabilir ve bulabilirsiniz.

Studio

Azure Machine Learning stüdyosu, herhangi bir şey yüklemek zorunda kalmadan projenin türüne ve geçmiş ML deneyiminizin düzeyine bağlı olarak birden çok yazma deneyimi sunar.

  • Not defterleri: Doğrudan stüdyoyla tümleştirilmiş yönetilen Jupyter Notebook sunucularında kendi kodunuzu yazın ve çalıştırın.

  • Çalıştırma ölçümlerini görselleştirme: Görselleştirme ile denemelerinizi analiz edin ve iyileştirin.

    Eğitim çalıştırması için ölçümlerin ekran görüntüsü.

  • Azure Machine Learning tasarımcısı: Tasarımcıyı kullanarak kod yazmadan makine öğrenmesi modellerini eğitin ve dağıtın. ML işlem hatları oluşturmak için veri kümelerini ve bileşenleri sürükleyip bırakın. Tasarımcı öğreticisini deneyin.

  • Otomatik makine öğrenmesi kullanıcı arabirimi: Kullanımı kolay bir arabirimle otomatik ML denemeleri oluşturmayı öğrenin.

  • Veri etiketleme: Görüntü etiketleme veya metin etiketleme projelerini verimli bir şekilde koordine etmek için Azure Machine Learning veri etiketlemesini kullanın.

Kurumsal hazırlık ve güvenlik

Azure Machine Learning, ML projelerine güvenlik eklemek için Azure bulut platformuyla tümleştirilir.

Güvenlik tümleştirmeleri şunları içerir:

  • Ağ güvenlik gruplarıyla Azure Sanal Ağları (VNet)
  • Depolama hesapları için erişim bilgileri gibi güvenlik gizli dizilerini kaydedebileceğiniz Azure Key Vault
  • Azure Container Registry sanal ağın arkasında ayarlama

Bkz . Öğretici: Güvenli bir çalışma alanı ayarlama.

Eksiksiz çözümler için Azure tümleştirmeleri

Azure hizmetleriyle yapılan diğer tümleştirmeler, uçtan uca bir makine öğrenmesi projesini destekler. Bunlara aşağıdakiler dahildir:

  • Spark ile verileri işlemek ve akışa almak için analiz Azure Synapse
  • Azure Arc, Azure hizmetlerini Bir Kubernetes ortamında çalıştırabileceğiniz
  • Azure SQL Veritabanı, Azure Depolama Blobları vb. gibi depolama ve veritabanı seçenekleri
  • ML destekli uygulamaları dağıtmanıza ve yönetmenize olanak sağlayan Azure App Service

Önemli

Azure Machine Learning verilerinizi dağıttığınız bölgenin dışında depolamaz veya işlemez.

Makine öğrenmesi proje iş akışı

Modeller genellikle hedef ve hedeflere sahip bir projenin parçası olarak geliştirilir. Projeler genellikle birden fazla kişiyi kapsar. Verilerle, algoritmalarla ve modellerle deneme yaparken geliştirme yinelemeli olur.

Proje yaşam döngüsü

Proje yaşam döngüsü projeye göre farklılık gösterse de, genellikle şöyle görünür:

Makine öğrenmesi proje yaşam döngüsü diyagramı

Çalışma alanı bir projeyi düzenler ve ortak bir amaç doğrultusunda çalışan birçok kullanıcı için işbirliğine olanak tanır. Çalışma alanında bulunan kullanıcılar, stüdyo kullanıcı arabirimindeki denemelerden çalıştırmalarının sonuçlarını kolayca paylaşabilir veya ortamlar ve depolama başvuruları gibi işler için sürümlenmiş varlıkları kullanabilir.

Daha fazla bilgi için bkz. Azure Machine Learning çalışma alanlarını yönetme.

Bir proje kullanıma hazır olduğunda, kullanıcıların çalışmaları bir makine öğrenmesi işlem hattında otomatikleştirilebilir ve bir zamanlama veya HTTPS isteğiyle tetiklenebilir.

Modeller, hem gerçek zamanlı hem de toplu dağıtımlar için yönetilen çıkarım çözümüne dağıtılabilir ve genellikle modelleri dağıtmak için gereken altyapı yönetimi soyutlanabilir.

Modelleri eğitme

Azure Machine Learning'de eğitim betiğinizi bulutta çalıştırabilir veya sıfırdan bir model oluşturabilirsiniz. Müşteriler genellikle açık kaynak çerçevelerde oluşturup eğittikleri modelleri getirerek bulutta kullanıma hazır hale getirir.

Açık ve birlikte çalışabilir

Veri bilimciler Azure Machine Learning'de ortak Python çerçevelerinde oluşturdukları modelleri kullanabilir, örneğin:

  • PyTorch
  • TensorFlow
  • scikit-learn
  • XGBoost
  • LightGBM

Diğer diller ve çerçeveler de desteklenir, örneğin:

  • R
  • .NET

Bkz. Azure Machine Learning ile açık kaynak tümleştirmesi.

Otomatik özellik ve algoritma seçimi (AutoML)

Yinelenen ve zaman alan bir süreçte, klasik makine öğrenmesi veri bilimcileri eğitim için doğru veri özellik kazandırma ve algoritmayı seçmek için önceki deneyimi ve sezgiyi kullanır. Otomatik ML (AutoML) bu işlemi hızlandırır ve studio kullanıcı arabirimi veya Python SDK'sı aracılığıyla kullanılabilir.

Bkz. Otomatik makine öğrenmesi nedir?

Hiper parametre iyileştirmesi

Hiper parametre iyileştirmesi veya hiper parametre ayarlaması yorucu bir görev olabilir. Azure Machine Learning, iş tanımınızda çok az değişiklikle rastgele parametreli komutlar için bu görevi otomatikleştirebilir. Sonuçlar stüdyoda görselleştirilir.

Bkz. Hiper parametreleri ayarlama.

Çok düğümlü dağıtılmış eğitim

Derin öğrenme ve bazen klasik makine öğrenmesi eğitim işleri için eğitimin verimliliği, çok düğümlü dağıtılmış eğitim aracılığıyla önemli ölçüde geliştirilebilir. Azure Machine Learning işlem kümeleri en son GPU seçeneklerini sunar.

Azure ML Kubernetes ve Azure ML işlem kümeleri aracılığıyla desteklenir:

  • PyTorch
  • TensorFlow
  • Mpı

MPI dağıtımı Horovod veya özel çoklu düğüm mantığı için kullanılabilir. Ayrıca Apache Spark, Azure Synapse Analytics Spark kümeleri (önizleme) aracılığıyla desteklenir.

Bkz. Azure Machine Learning ile dağıtılmış eğitim.

Utanç verici derecede paralel eğitim

Makine öğrenmesi projesini ölçeklendirmek için utanç verici derecede paralel model eğitimi gerekebilir. Bu düzen, bir modelin birçok mağaza için eğitilebileceği talebi tahmin etme gibi senaryolarda yaygındır.

Modelleri dağıtma

Bir modeli üretime getirmek için dağıtılır. Azure Machine Learning'in yönetilen uç noktaları hem toplu iş hem de gerçek zamanlı (çevrimiçi) model puanlaması (çıkarım) için gerekli altyapıyı soyutlar.

Gerçek zamanlı ve toplu puanlama (çıkarım)

Toplu puanlama veya toplu çıkarım, verilere başvuru içeren bir uç nokta çağırmayı içerir. Toplu iş uç noktası, verileri işlem kümelerinde paralel olarak işlemek ve daha fazla analiz için verileri depolamak için işleri zaman uyumsuz olarak çalıştırır.

Gerçek zamanlı puanlama veya çevrimiçi çıkarım, bir veya daha fazla model dağıtımıyla bir uç noktayı çağırmayı ve HTTP'ler aracılığıyla gerçek zamanlıya yakın bir şekilde yanıt almayı içerir. Trafik birden çok dağıtıma bölünerek başlangıçta bir miktar trafiğin yönünü değiştirerek ve yeni modele güven oluşturulduktan sonra artarak yeni model sürümlerini test edebilirsiniz.

Bkz.

MLOps: Makine öğrenmesi için DevOps

Makine öğrenmesi modelleri için DevOps (genellikle MLOps olarak adlandırılır), üretim için model geliştirmeye yönelik bir süreçtir. Modelin eğitimden dağıtıma kadar yaşam döngüsü, yeniden üretilmediyse denetlenebilir olmalıdır.

ML modeli yaşam döngüsü

Makine öğrenmesi modeli yaşam döngüsü * MLOps

Azure Machine Learning'de MLOps hakkında daha fazla bilgi edinin.

MLOP'ları etkinleştiren tümleştirmeler

Azure Machine Learning, model yaşam döngüsü göz önünde bulundurularak oluşturulur. Modelin yaşam döngüsünü belirli bir işlemeye ve ortama kadar denetleyebilirsiniz.

MLOps'yi etkinleştiren bazı önemli özellikler şunlardır:

  • git Entegrasyon
  • MLflow tümleştirmesi
  • Makine öğrenmesi işlem hattı zamanlaması
  • Özel tetikleyiciler için Azure Event Grid tümleştirmesi
  • GitHub Actions veya Azure DevOps gibi CI/CD araçlarıyla kullanımı kolay

Ayrıca, Azure Machine Learning izleme ve denetim özellikleri içerir:

  • Kod anlık görüntüleri, günlükler ve diğer çıkışlar gibi iş yapıtları
  • kapsayıcılar, veriler ve işlem kaynakları gibi işler ve varlıklar arasındaki köken

Sonraki adımlar

Azure Machine Learning'i kullanmaya başlayın: