ParallelRunConfig Sınıf
Bir ParallelRunStep nesnenin yapılandırmasını tanımlar.
ParallelRunStep kullanma örneği için not defterine https://aka.ms/batch-inference-notebooksbakın.
Sorun giderme kılavuzu için bkz https://aka.ms/prstsg. . Burada daha fazla başvuru bulabilirsiniz.
Yapılandırma nesnesini başlatın.
- Devralma
-
azureml.pipeline.core._parallel_run_config_base._ParallelRunConfigBaseParallelRunConfig
Oluşturucu
ParallelRunConfig(environment, entry_script, error_threshold, output_action, compute_target, node_count, process_count_per_node=None, mini_batch_size=None, source_directory=None, description=None, logging_level='INFO', run_invocation_timeout=60, run_max_try=3, append_row_file_name=None, allowed_failed_count=None, allowed_failed_percent=None, partition_keys=None, environment_variables=None)
Parametreler
Name | Description |
---|---|
environment
Gerekli
|
Python ortamını yapılandıran ortam tanımı. Mevcut bir Python ortamını kullanacak veya deneme için geçici bir ortam ayarlanacak şekilde yapılandırılabilir. Ortam tanımı conda veya pip paketleri gibi gerekli uygulama bağımlılıklarını tanımlamakla sorumludur. |
entry_script
Gerekli
|
Birden çok düğümde paralel olarak çalıştırılacak kullanıcı betiği. Bu, yerel dosya yolu olarak belirtilir. belirtilirse |
error_threshold
Gerekli
|
bunun için TabularDataset kayıt hatası sayısı ve bunun için FileDataset dosya hataları işleme sırasında yoksayılmalıdır. Hata sayısı bu değerin üzerine çıkarsa iş durdurulacaktır. Hata eşiği, run() yöntemine gönderilen tek tek mini toplu işlemler için değil girişin tamamı içindir. Aralık :[-1, int.max]. -1, işleme sırasında tüm hataları yoksaymak olduğunu gösterir. |
output_action
Gerekli
|
Çıkışın nasıl düzenlenmesi gerektiği. Geçerli desteklenen değerler 'append_row' ve 'summary_only'dır.
|
compute_target
Gerekli
|
AmlCompute veya
str
ParallelRunStep yürütmesi için kullanılacak işlem hedefi. Bu parametre, çalışma alanında işlem hedefi nesnesi veya işlem hedefi adı olarak belirtilebilir. |
node_count
Gerekli
|
ParallelRunStep çalıştırmak için kullanılan işlem hedefindeki düğüm sayısı. |
process_count_per_node
|
Giriş betiğini paralel olarak çalıştırmak için düğüm başına çalışan işlemlerinin sayısı.
GPU makinesi için varsayılan değer 1'dir.
CPU makinesi için varsayılan değer çekirdek sayısıdır.
Çalışan işlemi, aldığı mini toplu işlemi geçirerek art arda çağrısı varsayılan değer: None
|
mini_batch_size
|
FileDataset girişi için bu alan, bir kullanıcı betiğinin tek bir run() çağrısında işleyebileceği dosya sayısıdır. TabularDataset girişi için bu alan, kullanıcı betiğinin tek bir run() çağrısında işleyebileceği yaklaşık veri boyutudur. Örnek değerler 1024, 1024 KB, 10 MB ve 1 GB'tır. (isteğe bağlı, varsayılan değer FileDataset için 10 dosya ve TabularDataset için 1 MB'tır.) varsayılan değer: None
|
source_directory
|
İşlem hedefinde varsayılan değer: None
|
description
|
Görüntüleme amacıyla kullanılan toplu iş hizmetine vermek için bir açıklama. varsayılan değer: None
|
logging_level
|
'Günlüğe kaydetme' içinde tanımlanan günlük düzeyi adı dizesi. Olası değerler 'UYARI', 'BİlGİ' ve 'DEBUG' değerleridir. (isteğe bağlı, varsayılan değer 'BİlGİ'dir.) varsayılan değer: INFO
|
run_invocation_timeout
|
run() yönteminin her çağrısı için saniye olarak zaman aşımı. (isteğe bağlı, varsayılan değer 60'tır.) varsayılan değer: 60
|
run_max_try
|
Başarısız veya zaman aşımı mini toplu işlemi için en fazla deneme sayısı. Aralık : [1, int.max]. Varsayılan değer 3'dür. Bu değerden büyük olan kuyruktan çıkarma sayısı olan bir mini toplu iş yeniden işlenmez ve doğrudan silinir. varsayılan değer: 3
|
append_row_file_name
|
'append_row' ise çıkış dosyasının varsayılan değer: None
|
allowed_failed_count
|
İşleme sırasında yoksayılması gereken başarısız mini toplu işlemlerin sayısı. Başarısız olan sayı bu değerin üzerine çıkarsa iş durdurulacaktır. Bu eşik, run() yöntemine gönderilen tek tek mini toplu iş yerine girişin tamamına yöneliktir. Aralık :[-1, int.max]. -1, işleme sırasında tüm hataları yoksaymak olduğunu gösterir. Mini toplu işlem ilk kez işlenip ikinci denemede başarılı olabilir. İlk ve ikinci kez arasındaki denetim başarısız olarak sayılır. İkinci seferden sonra yapılan denetim başarısız olarak sayılmaz. –error_threshold, –allowed_failed_count ve –allowed_failed_percent bağımsız değişkeni birlikte çalışabilir. Birden fazla belirtilmişse, iş bunlardan herhangi birini aşarsa durdurulacaktır. varsayılan değer: None
|
allowed_failed_percent
|
İşleme sırasında yoksayılması gereken başarısız mini toplu işlemlerin yüzdesi. Başarısız yüzde değeri bu değerin üzerine çıkarsa iş durdurulacaktır. Bu eşik, run() yöntemine gönderilen tek tek mini toplu iş yerine girişin tamamına yöneliktir. Aralık :[0, 100]. 100 veya 100.0, işleme sırasındaki tüm hataları yoksaymaya işaret eder. Denetim, tüm mini toplu işlemler zamanlandıktan sonra başlar. –error_threshold, –allowed_failed_count ve –allowed_failed_percent bağımsız değişkeni birlikte çalışabilir. Birden fazla belirtilmişse, iş bunlardan herhangi birini aşarsa durdurulacaktır. varsayılan değer: None
|
partition_keys
|
Veri kümesini mini toplu işlere bölmek için kullanılan anahtarlar. Belirtilirse, aynı anahtara sahip veriler aynı mini toplu iş olarak bölümlenir. Hem partition_keys hem de mini_batch_size belirtilirse hata oluşur. Her biri giriş veri kümesini bölümlemede kullanılan bir anahtar olan str öğelerinin listesi olmalıdır. Ancak PipelineParameter'a yükseltilirse, liste türü şimdilik PipelineParameter'da desteklenmediğinden varsayılan değerler listenin json dökümü adımı olmalıdır. Girişlerin bölümlenmiş veri kümeleri olması ve partition_keys bunun çalışması için her giriş veri kümesinin anahtarlarının bir alt kümesi olması gerekir. varsayılan değer: None
|
environment_variables
|
Ortam değişkenlerinin adlarını ve değerlerini içeren bir sözlük. Bu ortam değişkenleri, kullanıcı betiğinin yürütüldüğü işlemde ayarlanır. varsayılan değer: None
|
environment
Gerekli
|
Python ortamını yapılandıran ortam tanımı. Mevcut bir Python ortamını kullanacak veya deneme için geçici bir ortam ayarlanacak şekilde yapılandırılabilir. Ortam tanımı conda veya pip paketleri gibi gerekli uygulama bağımlılıklarını tanımlamakla sorumludur. |
entry_script
Gerekli
|
Birden çok düğümde paralel olarak çalıştırılacak kullanıcı betiği. Bu, yerel dosya yolu olarak belirtilir. belirtilirse |
error_threshold
Gerekli
|
bunun için TabularDataset kayıt hatası sayısı ve bunun için FileDataset dosya hataları işleme sırasında yoksayılmalıdır. Hata sayısı bu değerin üzerine çıkarsa iş durdurulacaktır. Hata eşiği, run() yöntemine gönderilen tek tek mini toplu işlemler için değil, girişin tamamı içindir. Aralık :[-1, int.max]. -1, işleme sırasında tüm hataları yoksaymak olduğunu gösterir. |
output_action
Gerekli
|
Çıkışın nasıl düzenlenmesi gerektiği. Geçerli desteklenen değerler 'append_row' ve 'summary_only'dır.
|
compute_target
Gerekli
|
AmlCompute veya
str
ParallelRunStep yürütmesi için kullanılacak işlem hedefi. Bu parametre bir işlem hedefi nesnesi veya çalışma alanında işlem hedefinin adı olarak belirtilebilir. |
node_count
Gerekli
|
ParallelRunStep çalıştırmak için kullanılan işlem hedefindeki düğümlerin sayısı. |
process_count_per_node
Gerekli
|
Girdi betiğini paralel olarak çalıştırmak için düğüm başına çalışan işlemlerinin sayısı.
GPU makinesi için varsayılan değer 1'dir.
BIR CPU makinesi için varsayılan değer çekirdek sayısıdır.
Çalışan işlemi, aldığı mini toplu işlemi geçirerek art arda çağrısı |
mini_batch_size
Gerekli
|
FileDataset girişi için bu alan, bir kullanıcı betiğinin tek bir run() çağrısında işleyebileceği dosya sayısıdır. TabularDataset girişi için bu alan, kullanıcı betiğinin tek bir run() çağrısında işleyebileceği yaklaşık veri boyutudur. Örnek değerler 1024, 1024 KB, 10 MB ve 1 GB'tır. (isteğe bağlı, varsayılan değer FileDataset için 10 dosya ve TabularDataset için 1 MB'tır.) |
source_directory
Gerekli
|
İşlem hedefinde |
description
Gerekli
|
Görüntüleme amacıyla kullanılan toplu iş hizmetine vermek için bir açıklama. |
logging_level
Gerekli
|
'Günlüğe kaydetme' içinde tanımlanan günlük düzeyi adı dizesi. Olası değerler 'UYARI', 'BİlGİ' ve 'HATA AYıKLAMA' değerleridir. (isteğe bağlı, varsayılan değer 'BİlGİ'dir.) |
run_invocation_timeout
Gerekli
|
run() yönteminin her çağrısı için saniye olarak zaman aşımı. (isteğe bağlı, varsayılan değer 60'tır.) |
run_max_try
Gerekli
|
Başarısız veya zaman aşımı mini toplu işlemi için en fazla deneme sayısı. Aralık :[1, int.max]. Varsayılan değer 3'dür. Bu değerden büyük olan bir diziden kaldırma sayısı olan mini toplu iş yeniden işlenmez ve doğrudan silinir. |
append_row_file_name
Gerekli
|
'append_row' ise çıkış dosyasının |
allowed_failed_count
Gerekli
|
İşleme sırasında yoksayılması gereken başarısız mini toplu işlemlerin sayısı. Başarısız sayı bu değerin üzerine çıkarsa, iş durdurulacaktır. Bu eşik, run() yöntemine gönderilen tek tek mini toplu iş yerine girişin tamamına yöneliktir. Aralık :[-1, int.max]. -1, işleme sırasında tüm hataları yoksaymak olduğunu gösterir. Mini toplu işlem ilk kez işlenirken başarısız olabilir ve ardından ikinci denemede başarılı olabilir. İlk ve ikinci zaman arasındaki denetim başarısız olarak sayılır. İkinci seferden sonra yapılan denetim başarısız olarak sayılmaz. –error_threshold, –allowed_failed_count ve –allowed_failed_percent bağımsız değişkeni birlikte çalışabilir. Birden fazla belirtilmişse, herhangi birini aşarsa iş durdurulacaktır. |
allowed_failed_percent
Gerekli
|
İşlem sırasında yoksayılması gereken başarısız mini toplu işlemlerin yüzdesi. Başarısız yüzde değeri bu değerin üzerine çıkarsa, iş durdurulacaktır. Bu eşik, run() yöntemine gönderilen tek tek mini toplu iş yerine girişin tamamına yöneliktir. Aralık :[0, 100]. 100 veya 100.0, işleme sırasındaki tüm hataları yoksayar. Denetim, tüm mini toplu işlemler zamanlandıktan sonra başlar. –error_threshold, –allowed_failed_count ve –allowed_failed_percent bağımsız değişkeni birlikte çalışabilir. Birden fazla belirtilmişse, herhangi birini aşarsa iş durdurulacaktır. |
partition_keys
Gerekli
|
Veri kümesini mini toplu işlere bölmek için kullanılan anahtarlar. Belirtilirse, aynı anahtara sahip veriler aynı mini toplu işleme bölümlenir. Hem partition_keys hem de mini_batch_size belirtilirse hata oluşur. Her biri giriş veri kümesini bölümlendirmek için kullanılan bir anahtar olan str öğelerinin listesi olmalıdır. Ancak PipelineParameter'a yükseltilirse, liste türü şimdilik PipelineParameter'da desteklenmediğinden varsayılan değerler listenin json dökümü adımı olmalıdır. Girişlerin bölümlenmiş veri kümeleri olması ve bunun çalışması için partition_keys her giriş veri kümesinin anahtarlarının bir alt kümesi olması gerekir. |
environment_variables
Gerekli
|
Ortam değişkenlerinin adlarını ve değerlerini içeren bir sözlük. Bu ortam değişkenleri, kullanıcı betiğinin yürütüldüğü işlemde ayarlanır. |
Açıklamalar
ParallelRunConfig sınıfı, sınıfı için yapılandırma sağlamak için ParallelRunStep kullanılır. ParallelRunConfig ve ParallelRunStep, büyük miktarlardaki verileri paralel olarak işlemek için birlikte kullanılabilir. Yaygın kullanım örnekleri bir dizi gözlem üzerinde tahminler oluşturmak için bir ML modelini eğitmek veya çevrimdışı çıkarım çalıştırmaktır. ParallelRunStep verilerinizi paralel çalıştırılan toplu işlere bölerek çalışır. Paralel işlemenizi hızlandırmak için toplu iş boyutu, düğüm sayısı ve diğer ayarlanabilir parametreler sınıfıyla ParallelRunConfig denetlenebilir. ParallelRunStep giriş olarak veya FileDataset ile TabularDataset çalışabilir.
ParallelRunStep ve ParallelRunConfig kullanmak için:
ParallelRunConfig Toplu işlem boyutunu, işlem hedefi başına düğüm sayısını ve özel Python betiğinize başvuruyu denetleme parametreleriyle toplu işlemenin nasıl gerçekleştirileceğini belirtmek için bir nesne oluşturun.
ParallelRunConfig nesnesini kullanan, adım için girişleri ve çıkışları tanımlayan bir ParallelRunStep nesnesi oluşturun.
Yapılandırılmış ParallelRunStep nesnesini diğer işlem hattı adım türlerinde Pipeline olduğu gibi kullanın.
Toplu çıkarım için ParallelRunStep ve ParallelRunConfig sınıflarıyla çalışma örnekleri aşağıdaki makalelerde açıklanmaktadır:
Öğretici: Toplu puanlama için Azure Machine Learning işlem hattı oluşturma. Bu makalede işlem hattında zaman uyumsuz toplu puanlama için bu iki sınıfın nasıl kullanılacağı ve işlem hattını çalıştırmak için REST uç noktasının nasıl etkinleştirileceği gösterilir.
Azure Machine Learning kullanarak büyük miktarlarda veri üzerinde toplu çıkarım çalıştırma. Bu makalede özel çıkarım betiğiyle ve MNIST veri kümesi temelinde önceden eğitilmiş bir görüntü sınıflandırma modeliyle büyük miktarlarda verinin zaman uyumsuz ve paralel olarak nasıl işleneceği gösterilir.
from azureml.pipeline.steps import ParallelRunStep, ParallelRunConfig
parallel_run_config = ParallelRunConfig(
source_directory=scripts_folder,
entry_script=script_file,
mini_batch_size="5", # or partition_keys=["key1", "key2"], which is another way to partition the
# input to mini-batches, refer to the parameter description for details
error_threshold=10, # Optional, allowed failed count on mini batch items
allowed_failed_count=15, # Optional, allowed failed count on mini batches
allowed_failed_percent=10, # Optional, allowed failed percent on mini batches
run_max_try=3,
output_action="append_row",
environment=batch_env,
compute_target=compute_target,
node_count=2)
parallelrun_step = ParallelRunStep(
name="predict-digits-mnist",
parallel_run_config=parallel_run_config,
inputs=[ named_mnist_ds ],
output=output_dir,
arguments=[ "--extra_arg", "example_value" ],
allow_reuse=True
)
Bu örnek hakkında daha fazla bilgi için not defterine https://aka.ms/batch-inference-notebooksbakın.
Yöntemler
load_yaml |
YAML dosyasından paralel çalıştırma yapılandırma verilerini yükleyin. |
save_to_yaml |
Paralel çalıştırma yapılandırma verilerini bir YAML dosyasına aktarın. |
load_yaml
YAML dosyasından paralel çalıştırma yapılandırma verilerini yükleyin.
static load_yaml(workspace, path)
Parametreler
Name | Description |
---|---|
workspace
Gerekli
|
Yapılandırma verilerinin okunduğu çalışma alanı. |
path
Gerekli
|
Yapılandırmanın yük kaynak yolu. |
save_to_yaml
Paralel çalıştırma yapılandırma verilerini bir YAML dosyasına aktarın.
save_to_yaml(path)
Parametreler
Name | Description |
---|---|
path
Gerekli
|
Dosyanın kaydedilecek yol. |
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin