Öğretici: Azure Machine Learning Visual Studio Code uzantısını kullanarak görüntü sınıflandırma modelini eğitme (önizleme)

ŞUNLAR IÇIN GEÇERLIDIR: Azure CLI ml uzantısı v2 (geçerli)

Bu makalede, TensorFlow ve Azure Machine Learning Visual Studio Code uzantısını kullanarak el yazısı sayıları tanıyacak bir görüntü sınıflandırma modelinin nasıl eğitildiği açıklanır.

Önemli

Bu özellik şu anda genel önizlemededir. Bu önizleme sürümü hizmet düzeyi sözleşmesi olmadan sağlanır ve üretim iş yükleri için bu sürümü önermeyiz. Bazı özellikler desteklenmiyor olabileceği gibi özellikleri sınırlandırılmış da olabilir.

Daha fazla bilgi için bkz. Microsoft Azure Önizlemeleri Ek Kullanım Koşulları.

Bu öğreticide aşağıdaki görevleri öğreneceksiniz:

  • Kodu anlama
  • Çalışma alanı oluşturma
  • Modeli eğitme

Önkoşullar

Kodu anlama

Bu eğitim kılavuzunun kodu, 0-9 arası el yazısı basamakları kategorilere ayıran bir görüntü sınıflandırma makine öğrenimi modelini eğitmek için TensorFlow kullanır. Bunu, giriş olarak 28x28 piksel görüntülerin piksel değerlerini alan ve ardından sınıflandırılan basamakların her biri için bir tane olmak üzere 10 olasılık listesini veren bir sinir ağı oluşturarak yapar. Aşağıdaki örnekte verilerin nasıl göründüğü gösterilmektedir.

MNIST basamaklarının bir örneğini gösteren ekran görüntüsü.

Çalışma alanı oluşturma

Azure Machine Learning'de uygulama oluşturmak için önce bir çalışma alanı oluşturmanız gerekir. Çalışma alanı, modelleri eğitmek için kullanılan kaynakları ve eğitilmiş modellerin kendilerini içerir. Daha fazla bilgi için bkz. Azure Machine Learning çalışma alanı nedir?

  1. Visual Studio Code'da örnek deposundan azureml-examples/cli/jobs/single-step/tensorflow/mnist dizinini açın.

  2. Visual Studio Code etkinlik çubuğunda Azure simgesini seçerek Azure Machine Learning görünümünü açın.

  3. Machine Learning'in altında abonelik düğümünüzü sağ tıklatın ve Çalışma alanı oluştur'u seçin.

    Çalışma alanı oluşturma seçeneğini gösteren ekran görüntüsü.

  4. Bir spesifikasyon dosyası görüntülenir. Belirtim dosyasını aşağıdaki seçeneklerle yapılandırın ve kaydedin.

    $schema: https://azuremlschemas.azureedge.net/latest/workspace.schema.json
    name: TeamWorkspace
    location: WestUS2
    display_name: team-ml-workspace
    description: A workspace for training machine learning models
    tags:
      purpose: training
      team: ml-team
    

    Belirtim dosyası, bölgede TeamWorkspace adlı WestUS2 bir çalışma alanı oluşturur. Belirtim dosyasında tanımlanan seçeneklerin geri kalanı, çalışma alanı için kolay adlandırma, açıklamalar ve etiketler sağlar.

  5. Belirtim dosyasına sağ tıklayın ve AzureML: YAML Yürütme'yi seçin. Kaynak oluşturma işlemi YAML belirtim dosyasında tanımlanan yapılandırma seçeneklerini kullanır ve CLI (v2) kullanarak bir iş gönderir. Bu noktada uzantı, hesabınızda yeni bir çalışma alanı ve bağımlı kaynaklar oluşturmak için Azure'a bir istekte bulunur. Birkaç dakika sonra yeni çalışma alanı abonelik düğümünüzün içinde görünür.

  6. Varsayılan çalışma alanınız olarak ayarlayın TeamWorkspace . Bu çalışma alanını varsayılan olarak ayarlayarak, oluşturduğunuz kaynakları ve işleri varsayılan olarak çalışma alanına yerleştirirsiniz. Visual Studio Code durum çubuğunda Azure Machine Learning Çalışma Alanını Ayarla düğmesini seçin ve istemleri izleyerek varsayılan çalışma alanınız olarak ayarlayınTeamWorkspace.

Çalışma alanları hakkında daha fazla bilgi için bkz. VS Code uzantısıyla Azure Machine Learning kaynaklarını yönetme.

Modeli eğitme

Eğitim sürecinde, sınıflandırılan ilgili basamakların her biri için içine eklenmiş eğitim verileri ve öğrenme desenleri işlenerek bir TensorFlow modeli eğitilir.

Çalışma alanları ve işlem hedefleri gibi eğitim işleri de kaynak şablonları kullanılarak tanımlanır. Bu örnek için belirtim, örnek deposundaki azureml-examples/cli/jobs/single-step/tensorflow/mnist klasöründe bulunan job.yml dosyasında tanımlanır.

$schema: https://azuremlschemas.azureedge.net/latest/commandJob.schema.json
code: src
command: >
    python train.py
environment: azureml:AzureML-tensorflow-2.12-cuda11@latest
compute: azureml:gpu-cluster
experiment_name: tensorflow-mnist-example
description: Train a basic neural network with TensorFlow on the MNIST dataset.

Bu belirtim dosyası, tensorflow-mnist-example işlem hedefine gpu-cluster adlı bir eğitim işi gönderir ve bu iş, train.py Python betiğindeki kodu çalıştırır. Kullanılan ortam, TensorFlow ve eğitim betiğini çalıştırmak için gereken diğer yazılım bağımlılıklarını içeren Azure Machine Learning tarafından sağlanan seçilmiş ortamlardan biridir. Seçilen ortamlar hakkında daha fazla bilgi için bkz . Azure Machine Learning'in seçilmiş ortamları.

Eğitim işini göndermek için:

  1. job.yml dosyasını açın.
  2. Metin düzenleyicisinde dosyaya sağ tıklayın ve AzureML: YAML Yürütme'yi seçin.

Bu noktada, denemenizi çalışma alanınızdaki seçili işlem hedefi üzerinde çalıştırmak için Azure'a bir istek gönderilir. Bu işlem birkaç dakika sürer. Eğitim işini çalıştırma süresi, işlem türü ve eğitim veri boyutu gibi çeşitli faktörlerden etkilenir. Denemenizin ilerleme durumunu izlemek için geçerli çalıştırma düğümüne sağ tıklayın ve Azure portalında İşi Görüntüle'yi seçin.

Dış web sitesi açmayı isteyen iletişim kutusu görüntülendiğinde Aç'ı seçin.

İşin ilerleme durumunu gösteren ekran görüntüsü.

Model eğitimi tamamlandığında, çalıştırma düğümünü yanındaki durum etiketi Tamamlandı olarak güncelleştirilir.