Azure Machine Learning nasıl çalışır: kaynaklar ve varlıklar

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

Bu makale, Azure Machine Learning CLI ve Python SDK'sının (v2) ikinci sürümü için geçerlidir. Birinci sürüm (v1) için bkz . Azure Machine Learning nasıl çalışır: Mimari ve kavramlar (v1)

Azure Machine Learning, makine öğrenmesi görevlerinizi gerçekleştirmenizi sağlayan çeşitli kaynaklar ve varlıklar içerir. Bu kaynaklar ve varlıklar herhangi bir işi çalıştırmak için gereklidir.

  • Kaynaklar: Makine öğrenmesi iş akışını çalıştırmak için gereken kurulum veya altyapı kaynakları. Kaynaklar şunlardır:
  • Varlıklar: Azure Machine Learning komutları kullanılarak veya bir eğitim/puanlama çalıştırmasının parçası olarak oluşturulur. Varlıklar sürümü oluşturulur ve Azure Machine Learning çalışma alanına kaydedilebilir. Bunlar şunlardır:

Bu belge, bu kaynaklara ve varlıklara hızlı bir genel bakış sağlar.

Önkoşullar

Bu makaledeki Python SDK kod örneklerini kullanmak için:

  1. Python SDK v2'yi yükleme

  2. Azure Machine Learning aboneliğinize bir bağlantı oluşturun. Örneklerin tümüne dayanır ml_client. Çalışma alanı oluşturmak için bağlantının çalışma alanı adına ihtiyacı yoktur, çünkü henüz bir çalışma alanınız olmayabilir. Bu makaledeki diğer tüm örnekler, çalışma alanı adının bağlantıya eklenmesini gerektirir.

    # import required libraries
    from azure.ai.ml import MLClient
    from azure.ai.ml.entities import Workspace
    from azure.identity import DefaultAzureCredential
    
    # Enter details of your subscription
    subscription_id = "<SUBSCRIPTION_ID>"
    resource_group = "<RESOURCE_GROUP>"
    
    # get a handle to the subscription (use this if you haven't created a workspace yet)
    ml_client = MLClient(DefaultAzureCredential(), subscription_id, resource_group)
    
    # all other examples in this article require the connection to include workspace name
    workspace_name = "<WORKSPACE_NAME>"
    ml_client = ml_client = MLClient(DefaultAzureCredential(), subscription_id, resource_group, workspace_name)
    

Çalışma alanı

Çalışma alanı Azure Machine Learning'in en üst düzey kaynağıdır. Azure Machine Learning'i kullanırken oluşturduğunuz tüm yapıtlarla çalışmak için merkezi bir konum sağlar. Çalışma alanı günlükler, ölçümler, çıkış ve betiklerinizin anlık görüntüsü de dahil olmak üzere tüm işlerin geçmişini tutar. Çalışma alanı, veri depoları ve işlem gibi kaynaklara başvurular depolar. Ayrıca modeller, ortamlar, bileşenler ve veri varlığı gibi tüm varlıkları da barındırır.

Çalışma alanı oluşturma

Python SDK v2 kullanarak çalışma alanı oluşturmak için aşağıdaki kodu kullanabilirsiniz:

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

# specify the workspace details
ws = Workspace(
    name="my_workspace",
    location="eastus",
    display_name="My workspace",
    description="This example shows how to create a workspace",
    tags=dict(purpose="demo"),
)

ml_client.workspaces.begin_create(ws) # use MLClient to connect to the subscription and resource group and create workspace

Bu Jupyter not defteri , SDK v2 kullanarak Azure Machine Learning çalışma alanı oluşturmanın daha fazla yolunu gösterir.

İşlem

İşlem, işinizi çalıştırdığınız veya uç noktanızı barındırdığınız belirlenmiş bir işlem kaynağıdır. Azure Machine Learning aşağıdaki işlem türlerini destekler:

  • İşlem örneği : Bulutta tam olarak yapılandırılmış ve yönetilen bir geliştirme ortamı. Örneği geliştirme ve test için eğitim veya çıkarım işlem olarak kullanabilirsiniz. Bulut üzerindeki bir sanal makineye benzer.
  • İşlem kümesi - bulutta kolayca bir CPU veya GPU işlem düğümü kümesi oluşturmanıza olanak tanıyan yönetilen işlem altyapısı.
  • Sunucusuz işlem - anında erişdiğiniz bir işlem kümesi. Sunucusuz işlem kullandığınızda kendi kümenizi oluşturmanız gerekmez. Tüm işlem yaşam döngüsü yönetimi Azure Machine Learning'e yüklenir.
  • Çıkarım kümesi - Eğitilmiş makine öğrenmesi modellerini Azure Kubernetes Service'e dağıtmak için kullanılır. Azure Machine Learning çalışma alanınızdan bir Azure Kubernetes Service (AKS) kümesi oluşturabilir veya mevcut bir AKS kümesini ekleyebilirsiniz.
  • Ekli işlem - Çalışma alanınıza kendi işlem kaynaklarınızı ekleyebilir ve bunları eğitim ve çıkarım için kullanabilirsiniz.

İşlem oluşturma

Python SDK v2 kullanarak işlem kümesi oluşturmak için aşağıdaki kodu kullanabilirsiniz:

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

cluster_basic = AmlCompute(
    name="basic-example",
    type="amlcompute",
    size="STANDARD_DS3_v2",
    location="westus",
    min_instances=0,
    max_instances=2,
    idle_time_before_scale_down=120,
)
ml_client.begin_create_or_update(cluster_basic)

Bu Jupyter not defteri , SDK v2 kullanarak işlem oluşturmanın daha fazla yolunu gösterir.

Veri Deposu

Azure Machine Learning veri depoları, Azure'daki veri depolama alanınızla bağlantı bilgilerini güvenli bir şekilde tutar, böylece betiklerinizde kod yazmanız gerekmez. Depolama hesabınıza kolayca bağlanmak ve temel depolama hizmetinizdeki verilere erişmek için bir veri deposu kaydedebilir ve oluşturabilirsiniz. CLI v2 ve SDK v2, aşağıdaki bulut tabanlı depolama hizmeti türlerini destekler:

  • Azure Blob Kapsayıcısı
  • Azure Dosya Paylaşımı
  • Azure Data Lake
  • Azure Data Lake 2. Nesil

Veri deposu oluşturma

Python SDK v2 kullanarak veri deposu oluşturmak için aşağıdaki kodu kullanabilirsiniz:

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

import AzureBlobDatastore

blob_datastore1 = AzureBlobDatastore(
    name="blob_example",
    description="Datastore pointing to a blob container.",
    account_name="mytestblobstore",
    container_name="data-container",
    credentials={
        "account_key": "XXXxxxXXXxXXXXxxXXXXXxXXXXXxXxxXxXXXxXXXxXXxxxXXxxXXXxXxXXXxxXxxXXXXxxxxxXXxxxxxxXXXxXXX"
    },
)
ml_client.create_or_update(blob_datastore1)

Bu Jupyter not defteri , SDK v2 kullanarak veri depoları oluşturmanın daha fazla yolunu gösterir.

Veri deposu kullanma hakkında daha fazla bilgi edinmek için bkz . Veri varlıkları oluşturma ve yönetme.

Model

Azure Machine Learning modelleri, bir makine öğrenmesi modelini ve ilgili meta verileri temsil eden ikili dosyalardan oluşur. Modeller yerel veya uzak bir dosyadan veya dizinden oluşturulabilir. Uzak konumlar httpsiçin ve azuremlwasbs konumlar desteklenir. Oluşturulan model çalışma alanında belirtilen ad ve sürüm altında izlenir. Azure Machine Learning, modeller için üç tür depolama biçimini destekler:

  • custom_model
  • mlflow_model
  • triton_model

Model kayıt defterinde model oluşturma

Model kaydı, modellerinizi Azure bulutunda, çalışma alanınızda depolamanıza ve sürüm oluşturmanıza olanak tanır. Model kayıt defteri, eğitilen modellerinizi düzenlemenize ve izlemenize yardımcı olur.

Kayıt defterinde model oluşturma hakkında daha fazla bilgi için bkz . Azure Machine Learning'de modellerle çalışma.

Ortam

Azure Machine Learning ortamları, makine öğrenmesi görevinizin gerçekleştiği ortamı kapsayan bir ortamdır. Eğitim ve puanlama betiklerinizin etrafındaki yazılım paketlerini, ortam değişkenlerini ve yazılım ayarlarını belirtir. Ortamlar, Machine Learning çalışma alanınızdaki yönetilen ve sürümlenmiş varlıklardır. Ortamlar, çeşitli işlemlerde yeniden üretilebilir, denetlenebilir ve taşınabilir makine öğrenmesi iş akışlarını etkinleştirir.

Ortam türleri

Azure Machine Learning iki tür ortamı destekler: seçilmiş ve özel.

Seçilen ortamlar Azure Machine Learning tarafından sağlanır ve varsayılan olarak çalışma alanınızda kullanılabilir. Olduğu gibi kullanılması amaçlanan bu paketler, çeşitli makine öğrenmesi çerçevelerini kullanmaya başlamanıza yardımcı olacak Python paketleri ve ayarları koleksiyonları içerir. Önceden oluşturulmuş bu ortamlar ayrıca daha hızlı dağıtım süresi sağlar. Tam liste için, seçilmiş ortamlar makalesine bakın.

Özel ortamlarda ortamınızı ayarlamak ve eğitim veya puanlama betiğinizin işlem üzerinde ihtiyaç duyduğu paketleri veya diğer bağımlılıkları yüklemek sizin sorumluluğunuzdadır. Azure Machine Learning kullanarak kendi ortamınızı oluşturmanıza olanak tanır

  • Docker görüntüsü
  • Daha fazla özelleştirmek için conda YAML içeren temel docker görüntüsü
  • Docker derleme bağlamı

Azure Machine Learning özel ortamı oluşturma

Python SDK v2 kullanarak ortam oluşturmak için bkz . Ortam oluşturma.

Bu Jupyter not defteri , SDK v2 kullanarak özel ortamlar oluşturmanın daha fazla yolunu gösterir.

Veri

Azure Machine Learning, farklı veri türleriyle çalışmanıza olanak tanır:

  • URI'ler (yerel/bulut depolama alanında bir konum)
    • uri_folder
    • uri_file
  • Tablolar (tablosal veri soyutlaması)
    • mltable
  • Ilkel
    • string
    • boolean
    • number

Çoğu senaryoda URI'leri (uri_folder ve uri_file) kullanacaksınız. Depolama alanı düğüme bağlanarak veya indirilerek bir işteki işlem düğümünün dosya sistemine kolayca eşlenebilen bir konumdur.

mltable AutoML İşleri, Paralel İşler ve bazı gelişmiş senaryolar için kullanılacak tablosal verilere yönelik bir soyutlamadır. Azure Machine Learning'i kullanmaya yeni başladıysanız ve AutoML kullanmıyorsanız URI'leri kullanmaya başlamanızı kesinlikle öneririz.

Bileşen

Azure Machine Learning bileşeni, makine öğrenmesi işlem hattında tek adımlık bir işlem hattı oluşturan, bağımsız bir kod parçasıdır. Bileşenler, gelişmiş makine öğrenmesi işlem hatlarının yapı taşlarıdır. Bileşenler veri işleme, model eğitimi, model puanlaması gibi görevleri gerçekleştirebilir. Bileşen bir işleve benzer; adı, parametreleri vardır, girişi bekler ve çıkış döndürür.

Sonraki adımlar