SweepJob Klasa
Zamiatanie zadania dostrajania hiperparametrów.
- Dziedziczenie
-
azure.ai.ml.entities._job.job.JobSweepJobazure.ai.ml.entities._job.sweep.parameterized_sweep.ParameterizedSweepSweepJobazure.ai.ml.entities._job.job_io_mixin.JobIOMixinSweepJob
Konstruktor
SweepJob(*, name: str | None = None, description: str | None = None, tags: Dict | None = None, display_name: str | None = None, experiment_name: str | None = None, identity: ManagedIdentityConfiguration | AmlTokenConfiguration | UserIdentityConfiguration | None = None, inputs: Dict[str, int | str | float | bool | Input] | None = None, outputs: Dict[str, Output] | None = None, compute: str | None = None, limits: SweepJobLimits | None = None, sampling_algorithm: str | SamplingAlgorithm | None = None, search_space: Dict[str, Choice | LogNormal | LogUniform | Normal | QLogNormal | QLogUniform | QNormal | QUniform | Randint | Uniform] | None = None, objective: Objective | None = None, trial: CommandJob | CommandComponent | None = None, early_termination: BanditPolicy | MedianStoppingPolicy | TruncationSelectionPolicy | None = None, queue_settings: QueueSettings | None = None, **kwargs: Any)
Parametry
- name
- str
Nazwa zadania.
- display_name
- str
Nazwa wyświetlana zadania.
- description
- str
Opis zadania.
- experiment_name
- str
Nazwa eksperymentu, w ramach których zostanie utworzone zadanie, jeśli nie zostanie podany, zadanie zostanie utworzone w ramach eksperymentu "Default".
Tożsamość, która będzie używana przez zadanie trenowania podczas uruchamiania na obliczeniach.
- inputs
- dict
Dane wejściowe polecenia.
- sampling_algorithm
- str
Algorytm próbkowania hiperparametrów używany przez search_space. Wartość domyślna to "random".
- search_space
- Dict
Słownik obszaru wyszukiwania hiperparametrów. Klucz jest nazwą hiperparametru, a wartość jest wyrażeniem parametru.
- objective
- Objective
Metryka do optymalizacji.
- compute
- str
Docelowy obiekt obliczeniowy, na który działa zadanie.
- trial
- Union[CommandJob, CommandComponent]
Konfiguracja zadania dla każdej wersji próbnej. Każda wersja próbna będzie dostarczana z inną kombinacją wartości hiperparametrów, które próbkują system z search_space.
- early_termination
- Union[BanditPolicy, MedianStoppingPolicy, TruncationSelectionPolicy]
Zasady wczesnego zakończenia do użycia. Zadanie w wersji próbnej zostanie anulowane po spełnieniu kryteriów określonych zasad. W przypadku pominięcia zasady wcześniejszego zakończenia nie zostaną zastosowane.
- limits
- <xref:azure.ai.ml.entities.SweepJobLimits>
Limity zadania zamiatania.
- queue_settings
- QueueSettings
Ustawienia kolejki dla zadania.
- kwargs
- dict
Słownik dodatkowych parametrów konfiguracji.
Przykłady
Tworzenie zadania SweepJob
from azure.ai.ml.entities import CommandJob
from azure.ai.ml.sweep import BayesianSamplingAlgorithm, Objective, SweepJob, SweepJobLimits
command_job = CommandJob(
inputs=dict(kernel="linear", penalty=1.0),
compute=cpu_cluster,
environment=f"{job_env.name}:{job_env.version}",
code="./scripts",
command="python scripts/train.py --kernel $kernel --penalty $penalty",
experiment_name="sklearn-iris-flowers",
)
sweep = SweepJob(
sampling_algorithm=BayesianSamplingAlgorithm(),
trial=command_job,
search_space={"ss": Choice(type="choice", values=[{"space1": True}, {"space2": True}])},
inputs={"input1": {"file": "top_level.csv", "mode": "ro_mount"}},
compute="top_level",
limits=SweepJobLimits(trial_timeout=600),
objective=Objective(goal="maximize", primary_metric="accuracy"),
)
Metody
dump |
Zrzuty zawartości zadania do pliku w formacie YAML. |
set_limits |
Ustaw limity dla węzła Zamiatanie. Pozostaw parametry jako Brak, jeśli nie chcesz aktualizować odpowiednich wartości. |
set_objective |
Ustaw obiekt zamiatania. Pozostaw parametry jako Brak, jeśli nie chcesz aktualizować odpowiednich wartości. "minimalizuj", "maksymalizuj". :type goal: str :keyword primary_metric: Nazwa metryki do optymalizacji. primary_metric :p aramtype: str |
dump
Zrzuty zawartości zadania do pliku w formacie YAML.
dump(dest: str | PathLike | IO, **kwargs) -> None
Parametry
Ścieżka lokalna lub strumień plików do zapisu zawartości YAML. Jeśli dest jest ścieżką pliku, zostanie utworzony nowy plik. Jeśli plik jest otwarty, plik zostanie zapisany bezpośrednio.
- kwargs
- dict
Dodatkowe argumenty do przekazania do serializatora YAML.
Wyjątki
Zgłaszane, jeśli dest jest ścieżką pliku i plik już istnieje.
Zgłaszane, jeśli dest jest otwartym plikiem, a plik nie jest zapisywalny.
set_limits
Ustaw limity dla węzła Zamiatanie. Pozostaw parametry jako Brak, jeśli nie chcesz aktualizować odpowiednich wartości.
set_limits(*, max_concurrent_trials: int | None = None, max_total_trials: int | None = None, timeout: int | None = None, trial_timeout: int | None = None) -> None
Parametry
- max_concurrent_trials
- int
maksymalna liczba współbieżnych wersji próbnych.
- max_total_trials
- int
maksymalna łączna liczba próbna.
- timeout
- int
łączny limit czasu w sekundach dla węzła zamiatania
- trial_timeout
- int
limit czasu w sekundach dla każdej wersji próbnej
Wyjątki
Zgłaszane, jeśli dest jest ścieżką pliku i plik już istnieje.
Zgłaszane, jeśli dest jest otwartym plikiem, a plik nie jest zapisywalny.
set_objective
Ustaw obiekt zamiatania. Pozostaw parametry jako Brak, jeśli nie chcesz aktualizować odpowiednich wartości.
"minimalizuj", "maksymalizuj". :type goal: str :keyword primary_metric: Nazwa metryki do optymalizacji. primary_metric :p aramtype: str
set_objective(*, goal: str | None = None, primary_metric: str | None = None) -> None
Parametry
- goal
Definiuje obsługiwane cele metryk na potrzeby dostrajania hiperparametrów. Dopuszczalne wartości to:
Wyjątki
Zgłaszane, jeśli dest jest ścieżką pliku i plik już istnieje.
Zgłaszane, jeśli dest jest otwartym plikiem, a plik nie jest zapisywalny.
Atrybuty
base_path
creation_context
early_termination
Zasady wczesnego kończenia zadań.
Zwraca
Zasady wczesnego kończenia zadań.
Typ zwracany
id
Identyfikator zasobu.
Zwraca
Identyfikator globalny zasobu, identyfikator usługi Azure Resource Manager (ARM).
Typ zwracany
inputs
limits
log_files
Pliki wyjściowe zadania.
Zwraca
Słownik nazw dzienników i adresów URL.
Typ zwracany
outputs
sampling_algorithm
Algorytm próbkowania dla zadania zamiatania.
Zwraca
Algorytm próbkowania dla zadania zamiatania.
Typ zwracany
status
Stan zadania.
Zwracane typowe wartości to "Running", "Completed" i "Failed". Wszystkie możliwe wartości to:
NotStarted — jest to stan tymczasowy, w przypadku którego przed przesłaniem do chmury znajdują się obiekty Uruchom po stronie klienta.
Uruchamianie — uruchomienie zostało rozpoczęte w chmurze. Obiekt wywołujący ma w tym momencie identyfikator uruchomienia.
Aprowizacja — obliczenia na żądanie są tworzone dla danego przesłania zadania.
Przygotowywanie — środowisko uruchomieniowe jest przygotowywane i znajduje się w jednym z dwóch etapów:
Kompilacja obrazu platformy Docker
Konfiguracja środowiska conda
W kolejce — zadanie jest kolejkowane w docelowym obiekcie obliczeniowym. Na przykład w usłudze BatchAI zadanie jest w stanie w kolejce
podczas oczekiwania na gotowość wszystkich żądanych węzłów.
Uruchomione — zadanie zostało uruchomione na docelowym obiekcie obliczeniowym.
Finalizowanie — wykonywanie kodu użytkownika zostało ukończone, a przebieg znajduje się na etapach przetwarzania końcowego.
CancelRequested — zażądano anulowania zadania.
Ukończono — przebieg został ukończony pomyślnie. Obejmuje to zarówno wykonywanie kodu użytkownika, jak i uruchamianie
etapy przetwarzania końcowego.
Niepowodzenie — przebieg zakończył się niepowodzeniem. Zazwyczaj właściwość Error w przebiegu zawiera szczegółowe informacje o przyczynie.
Anulowano — następuje żądanie anulowania i wskazuje, że przebieg został pomyślnie anulowany.
NotResponding — w przypadku przebiegów z włączonymi pulsami nie wysłano ostatnio pulsu.
Zwraca
Stan zadania.
Typ zwracany
studio_url
Punkt końcowy programu Azure ML Studio.
Zwraca
Adres URL strony szczegółów zadania.
Typ zwracany
type
Azure SDK for Python