Azure Machine Learning ile modelleri eğitme

ŞUNLAR IÇIN GEÇERLIDIR: Python SDK'sı azure-ai-ml v2 (geçerli)

Azure Machine Learning, SDK kullanan kod öncelikli çözümlerden otomatik makine öğrenmesi ve görsel tasarımcı gibi düşük kod çözümlerine kadar modellerinizi eğitmek için çeşitli yollar sağlar. Hangi eğitim yönteminin size uygun olduğunu belirlemek için aşağıdaki listeyi kullanın:

  • Python için Azure Machine Learning SDK'sı: Python SDK'sı, her birinde farklı özelliklere sahip modelleri eğitmek için çeşitli yollar sağlar.

    Eğitim yöntemi Açıklama
    command() Modelleri eğitmek için tipik bir yol, eğitim betiği, ortam ve işlem bilgileri içeren bir command() göndermektir.
    Otomatik makine öğrenmesi Otomatik makine öğrenmesi, kapsamlı veri bilimi veya programlama bilgisi olmadan modelleri eğitmenize olanak tanır. Veri bilimi ve programlama geçmişi olan kişiler için algoritma seçimini ve hiper parametre ayarlamasını otomatikleştirerek zaman ve kaynak tasarrufu sağlamanın bir yolunu sağlar. Otomatik makine öğrenmesini kullanırken iş yapılandırması tanımlama konusunda endişelenmeniz gerekmez.
    Makine öğrenmesi işlem hattı İşlem hatları farklı bir eğitim yöntemi değildir, ancak iş akışının bir parçası olarak eğitim içerebilen modüler, yeniden kullanılabilir adımları kullanarak iş akışı tanımlamanın bir yoludur. Makine öğrenmesi işlem hatları, otomatik makine öğrenmesi kullanmayı destekler ve modelleri eğitmek için yapılandırmayı çalıştırır. İşlem hatları özellikle eğitime odaklanmadığından, işlem hattı kullanmanın nedenleri diğer eğitim yöntemlerine göre daha çeşitlidir. Genellikle aşağıdaki durumlarda işlem hattı kullanabilirsiniz:
    * Uzun süre çalışan eğitim işleri veya veri hazırlama gibi katılımsız işlemler zamanlamak istiyorsunuz.
    * Heterojen işlem kaynakları ve depolama konumları arasında eşgüdümlü birden çok adım kullanın.
    * İşlem hattını yeniden eğitme veya toplu puanlama gibi belirli senaryolar için yeniden kullanılabilir bir şablon olarak kullanın.
    * İş akışınız için veri kaynaklarını, girişleri ve çıkışları izleyin ve sürüme ekleyin.
    * İş akışınız, belirli adımlar üzerinde bağımsız olarak çalışan farklı ekipler tarafından uygulanır. Ardından adımlar iş akışını uygulamak için bir işlem hattında birleştirilebilir.
  • Tasarımcı: Azure Machine Learning tasarımcısı, kavram kanıtı oluşturmak veya çok az kodlama deneyimine sahip kullanıcılar için makine öğrenmesine kolay bir giriş noktası sağlar. Web tabanlı kullanıcı arabirimini sürükleyip bırakarak modelleri eğitmenizi sağlar. Python kodunu tasarımın bir parçası olarak kullanabilir veya herhangi bir kod yazmadan modelleri eğitebilirsiniz.

  • Azure CLI: Makine öğrenmesi CLI'sı, Azure Machine Learning ile ortak görevler için komutlar sağlar ve genellikle görevleri betikleme ve otomatikleştirme için kullanılır. Örneğin, bir eğitim betiği veya işlem hattı oluşturduktan sonra Azure CLI kullanarak bir zamanlamaya göre veya eğitim için kullanılan veri dosyaları güncelleştirildiğinde bir eğitim işi başlatabilirsiniz. Eğitim modelleri için eğitim işlerini gönderen komutlar sağlar. Çalıştırma yapılandırmalarını veya işlem hatlarını kullanarak iş gönderebilir.

Bu eğitim yöntemlerinin her biri, eğitim için farklı türlerde işlem kaynağı kullanabilir. Bu kaynaklar toplu olarak işlem hedefleri olarak adlandırılır. İşlem hedefi yerel bir makine veya Azure Machine Learning İşlem, Azure HDInsight veya uzak sanal makine gibi bir bulut kaynağı olabilir.

Python SDK'sı

Python için Azure Machine Learning SDK'sı, Azure Machine Learning ile makine öğrenmesi iş akışları oluşturmanıza ve çalıştırmanıza olanak tanır. Etkileşimli bir Python oturumundan, Jupyter Notebooks'tan, Visual Studio Code'dan veya diğer IDE'den hizmetle etkileşim kurabilirsiniz.

Komut gönderme

Azure Machine Learning ile genel bir eğitim işi command() kullanılarak tanımlanabilir. Ardından komut, belirtilen işlem hedefinde bir modeli eğitmek için eğitim betiklerinizle birlikte kullanılır.

Yerel bilgisayarınız için bir komutla başlayıp gerektiğinde bulut tabanlı işlem hedefi için bir komuta geçebilirsiniz. İşlem hedefini değiştirirken, yalnızca kullandığınız komuttaki işlem parametresini değiştirirsiniz. Çalıştırma ayrıca girişler, çıkışlar ve günlükler gibi eğitim işiyle ilgili bilgileri günlüğe kaydeder.

Otomatik Makine Öğrenmesi

Yinelemeleri, hiper parametre ayarlarını, özellik belirlemeyi ve diğer ayarları tanımlayın. Eğitim sırasında Azure Machine Learning farklı algoritmaları ve parametreleri paralel olarak dener. Eğitim, tanımladığınız çıkış ölçütlerine ulaştığında durdurulur.

İpucu

Python SDK'sına ek olarak, Azure Machine Learning stüdyosu aracılığıyla Otomatik ML'yi de kullanabilirsiniz.

Makine öğrenmesi işlem hattı

Makine öğrenmesi işlem hatları, daha önce bahsedilen eğitim yöntemlerini kullanabilir. İşlem hatları iş akışı oluşturma hakkında daha fazladır, bu nedenle yalnızca modellerin eğitiminden fazlasını kapsar.

Eğitim işi gönderdiğinizde ne olacağını anlama

Azure eğitim yaşam döngüsü şunlardan oluşur:

  1. Proje klasörünüzdeki dosyaları zipping ve buluta yükleyin.

    İpucu

    Gereksiz dosyaların anlık görüntüye eklenmesini önlemek için dizinde bir yoksayma dosyası (.gitignore veya .amlignore) oluşturun. Dışlanacak dosyaları ve dizinleri bu dosyaya ekleyin. Bu dosyanın içinde kullanılacak söz dizimi hakkında daha fazla bilgi için bkz. söz dizimi ve desenleri..gitignore Dosya .amlignore aynı söz dizimini kullanır. Her iki dosya da varsa, .amlignore dosya kullanılır ve .gitignore dosya kullanılmaz.

  2. İşlem kümenizin ölçeğini artırma (veya sunucusuz işlem

  3. Dockerfile'ı oluşturma veya işlem düğümüne indirme

    1. Sistem şu değerlerin karması hesaplar:
    2. Sistem, Azure Container Registry (ACR) çalışma alanının aramasında anahtar olarak bu karmayı kullanır
    3. Bulunamazsa, genel ACR'de bir eşleşme arar
    4. Bulunamazsa, sistem yeni bir görüntü oluşturur (önbelleğe alınır ve ACR çalışma alanına kaydedilir)
  4. Sıkıştırılmış proje dosyanızı işlem düğümündeki geçici depolama alanına indirme

  5. Proje dosyasının sıkıştırmasını açma

  6. Yürütülen işlem düğümü python <entry script> <arguments>

  7. Çalışma alanıyla ilişkilendirilmiş depolama hesabına yazılan ./outputs günlükleri, model dosyalarını ve diğer dosyaları kaydetme

  8. Geçici depolamayı kaldırma da dahil olmak üzere işlem ölçeğini azaltma

Azure Machine Learning tasarımcısı

Tasarımcı, web tarayıcınızda sürükle ve bırak arabirimini kullanarak modelleri eğitmenizi sağlar.

Azure CLI

Makine öğrenmesi CLI'sı, Azure CLI için bir uzantıdır. Azure Machine Learning ile çalışmak için platformlar arası CLI komutları sağlar. Genellikle, makine öğrenmesi modelini eğitmek gibi görevleri otomatikleştirmek için CLI kullanırsınız.

VS Code

Eğitim işlerinizi çalıştırmak ve yönetmek için VS Code uzantısını kullanabilirsiniz. Daha fazla bilgi edinmek için VS Code kaynak yönetimi nasıl yapılır kılavuzuna bakın.

Sonraki adımlar

Öğretici: Jupyter not defterinde Python SDK v2 ile üretim ML işlem hatları oluşturma hakkında bilgi edinin.