SweepJob Klasse
Sweepauftrag für die Hyperparameteroptimierung.
- Vererbung
-
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)
Parameter
- name
- str
Der Name des Auftrags.
- display_name
- str
Anzeigename des Auftrags.
- description
- str
Die Beschreibung des Auftrags
- experiment_name
- str
Name des Experiments, unter dem der Auftrag erstellt wird. Wenn Keine angegeben wird, wird der Auftrag unter dem Experiment "Standard" erstellt.
Identität, die der Trainingsauftrag während der Ausführung auf compute verwendet.
- inputs
- dict
Eingaben für den Befehl.
- sampling_algorithm
- str
Der Hyperparameter-Samplingalgorithmus, der über den search_space verwendet werden soll. Standardmäßig wird "zufällig" festgelegt.
- search_space
- Dict
Wörterbuch des Suchbereichs für Hyperparameter. Der Schlüssel ist der Name des Hyperparameters, und der Wert ist der Parameterausdruck.
- objective
- Objective
Metrik, für die optimiert werden soll.
- compute
- str
Das Computeziel, auf dem der Auftrag ausgeführt wird.
- trial
- Union[CommandJob, CommandComponent]
Die Auftragskonfiguration für jede Testversion. Jede Testversion wird mit einer anderen Kombination von Hyperparameterwerten bereitgestellt, die das System aus dem search_space.
- early_termination
- Union[BanditPolicy, MedianStoppingPolicy, TruncationSelectionPolicy]
Die zu verwendende Richtlinie für vorzeitige Beendigung. Ein Testauftrag wird abgebrochen, wenn die Kriterien der angegebenen Richtlinie erfüllt sind. Wenn diese Einstellung nicht angegeben wird, erfolgt keine Anwendung der Richtlinie für die vorzeitige Beendigung.
- limits
- <xref:azure.ai.ml.entities.SweepJobLimits>
Grenzwerte für den Sweep-Auftrag.
- queue_settings
- QueueSettings
Warteschlangeneinstellungen für den Auftrag.
- kwargs
- dict
Ein Wörterbuch mit zusätzlichen Konfigurationsparametern.
Beispiele
Erstellen eines SweepJobs
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"),
)
Methoden
dump |
Gibt den Auftragsinhalt in eine Datei im YAML-Format ab. |
set_limits |
Legen Sie Grenzwerte für den Knoten Sweep fest. Belassen Sie Parameter als Keine, wenn Sie die entsprechenden Werte nicht aktualisieren möchten. |
set_objective |
Legen Sie das Sweep-Objekt fest. Belassen Sie Parameter als Keine, wenn Sie die entsprechenden Werte nicht aktualisieren möchten. "minimieren", "maximieren". :type goal: str :Schlüsselwort (keyword) primary_metric: Name der zu optimierenden Metrik. :p aramtype primary_metric: str |
dump
Gibt den Auftragsinhalt in eine Datei im YAML-Format ab.
dump(dest: str | PathLike | IO, **kwargs) -> None
Parameter
Der lokale Pfad oder Dateistream, in den der YAML-Inhalt geschrieben werden soll. Wenn dest ein Dateipfad ist, wird eine neue Datei erstellt. Wenn dest eine geöffnete Datei ist, wird die Datei direkt in geschrieben.
- kwargs
- dict
Zusätzliche Argumente, die an den YAML-Serialisierer übergeben werden sollen.
Ausnahmen
Wird ausgelöst, wenn dest ein Dateipfad ist und die Datei bereits vorhanden ist.
Wird ausgelöst, wenn dest eine geöffnete Datei ist und die Datei nicht beschreibbar ist.
set_limits
Legen Sie Grenzwerte für den Knoten Sweep fest. Belassen Sie Parameter als Keine, wenn Sie die entsprechenden Werte nicht aktualisieren möchten.
set_limits(*, max_concurrent_trials: int | None = None, max_total_trials: int | None = None, timeout: int | None = None, trial_timeout: int | None = None) -> None
Parameter
- max_concurrent_trials
- int
maximale Anzahl gleichzeitiger Testversionen.
- max_total_trials
- int
Maximale Gesamttestanzahl.
- timeout
- int
Gesamttimeout in Sekunden für den Sweepknoten
- trial_timeout
- int
Timeout in Sekunden für jede Testversion
Ausnahmen
Wird ausgelöst, wenn dest ein Dateipfad ist und die Datei bereits vorhanden ist.
Wird ausgelöst, wenn dest eine geöffnete Datei ist und die Datei nicht beschreibbar ist.
set_objective
Legen Sie das Sweep-Objekt fest. Belassen Sie Parameter als Keine, wenn Sie die entsprechenden Werte nicht aktualisieren möchten.
"minimieren", "maximieren". :type goal: str :Schlüsselwort (keyword) primary_metric: Name der zu optimierenden Metrik. :p aramtype primary_metric: str
set_objective(*, goal: str | None = None, primary_metric: str | None = None) -> None
Parameter
- goal
Definiert unterstützte Metrikziele für die Hyperparameteroptimierung. Zulässige Werte sind:
Ausnahmen
Wird ausgelöst, wenn dest ein Dateipfad ist und die Datei bereits vorhanden ist.
Wird ausgelöst, wenn dest eine geöffnete Datei ist und die Datei nicht beschreibbar ist.
Attribute
base_path
creation_context
Der Erstellungskontext der Ressource.
Gibt zurück
Die Erstellungsmetadaten für die Ressource.
Rückgabetyp
early_termination
Richtlinie zur vorzeitigen Beendigung des Sweepauftrags.
Gibt zurück
Richtlinie zur vorzeitigen Beendigung des Sweepauftrags.
Rückgabetyp
id
Die Ressourcen-ID.
Gibt zurück
Die globale ID der Ressource, eine Arm-ID (Azure Resource Manager).
Rückgabetyp
inputs
limits
Grenzwerte für Den Sweepauftrag.
Gibt zurück
Grenzwerte für Den Sweepauftrag.
Rückgabetyp
log_files
Auftragsausgabedateien.
Gibt zurück
Das Wörterbuch der Protokollnamen und URLs.
Rückgabetyp
outputs
sampling_algorithm
Stichprobenalgorithmus für Einen Sweepauftrag.
Gibt zurück
Stichprobenalgorithmus für Einen Sweepauftrag.
Rückgabetyp
status
Der Status des Auftrags.
Zu den häufig zurückgegebenen Werten zählen „Running“ (Wird ausgeführt), „Completed“ (Abgeschlossen) und „Failed“ (Fehlgeschlagen). Alle möglichen Werte sind:
NotStarted: Dies ist ein temporärer Zustand, in dem sich clientseitige Run-Objekte vor der Cloudübermittlung befinden.
Starting: Die Verarbeitung der Ausführung in der Cloud hat begonnen. Die aufrufende Funktion besitzt zu diesem Zeitpunkt eine Ausführungs-ID.
Bereitstellung: Bedarfsgesteuerte Computeerstellung wird für eine bestimmte Auftragsübermittlung erstellt.
Vorbereitung: Die Ausführungsumgebung wird vorbereitet und befindet sich in einer von zwei Phasen:
Docker-Imagebuild
Einrichten der Conda-Umgebung
Warteschlangen: Der Auftrag wird auf dem Computeziel in die Warteschlange gestellt. In BatchAI befindet sich der Auftrag beispielsweise in einer Warteschlange.
während darauf gewartet wird, dass alle angeforderten Knoten bereit sind.
Ausführen: Der Auftrag wurde auf dem Computeziel ausgeführt.
Abschluss: Die Ausführung des Benutzercodes wurde abgeschlossen, und die Ausführung befindet sich in Nachverarbeitungsphasen.
CancelRequested: Für den Auftrag wurde ein Abbruch angefordert.
Abgeschlossen: Die Ausführung wurde erfolgreich abgeschlossen. Dies umfasst sowohl die Ausführung von Benutzercode als auch die Ausführung.
Nachbearbeitungsphasen der Ausführung ein.
Failed: Die Ausführung ist fehlgeschlagen. In der Regel liefert die Eigenschaft „Error“ einer Ausführung Details zur Ursache.
Canceled: Folgt einer Abbruchanforderung und gibt an, dass die Ausführung jetzt erfolgreich abgebrochen wurde.
„NotResponding“ (Reagiert nicht): Für eine Ausführung, für die Heartbeats aktiviert ist, wurde vor Kurzem kein Heartbeat gesendet.
Gibt zurück
Status des Auftrags.
Rückgabetyp
studio_url
type
Azure SDK for Python