Experiment Klas
Vertegenwoordigt het belangrijkste toegangspunt voor het maken en werken met experimenten in Azure Machine Learning.
Een experiment is een container met proefversies die meerdere modeluitvoeringen vertegenwoordigen.
Experiment constructor.
- Overname
-
azureml._logging.chained_identity.ChainedIdentityExperimentazureml.core._portal.HasExperimentPortalExperiment
Constructor
Experiment(workspace, name, _skip_name_validation=False, _id=None, _archived_time=None, _create_in_cloud=True, _experiment_dto=None, **kwargs)
Parameters
Name | Description |
---|---|
workspace
Vereist
|
Het werkruimteobject met het experiment. |
name
Vereist
|
De naam van het experiment. |
kwargs
Vereist
|
Een woordenlijst met trefwoordargumenten. |
workspace
Vereist
|
Het werkruimteobject met het experiment. |
name
Vereist
|
De naam van het experiment. |
kwargs
Vereist
|
Een woordenlijst met trefwoordargumenten. |
_skip_name_validation
|
Default value: False
|
_id
|
Default value: None
|
_archived_time
|
Default value: None
|
_create_in_cloud
|
Default value: True
|
_experiment_dto
|
Default value: None
|
Opmerkingen
Een Azure Machine Learning-experiment vertegenwoordigt de verzameling experimenten die worden gebruikt om de hypothese van een gebruiker te valideren.
In Azure Machine Learning wordt een experiment vertegenwoordigd door de Experiment klasse en een proefversie door de Run klasse.
Als u een experiment wilt ophalen of maken vanuit een werkruimte, vraagt u het experiment aan met behulp van de naam van het experiment. De naam van het experiment moet 3-36 tekens bevatten, beginnen met een letter of een cijfer en mag alleen letters, cijfers, onderstrepingstekens en streepjes bevatten.
experiment = Experiment(workspace, "MyExperiment")
Als het experiment niet wordt gevonden in de werkruimte, wordt er een nieuw experiment gemaakt.
Er zijn twee manieren om een experimentproef uit te voeren. Als u interactief experimenteert in een Jupyter Notebook, gebruikt start_logging u Als u een experiment verzendt vanuit de broncode of een ander type geconfigureerde proefversie, gebruikt usubmit
Met beide mechanismen wordt een Run -object gemaakt. Gebruik in interactieve scenario's logboekregistratiemethoden zoals log om metingen en metrische gegevens toe te voegen aan de proefrecord. In geconfigureerde scenario's worden statusmethoden gebruikt, zoals get_status om informatie over de uitvoering op te halen.
In beide gevallen kunt u querymethoden gebruiken om get_metrics de huidige waarden op te halen, indien aanwezig, van proefmetingen en metrische gegevens.
Methoden
archive |
Een experiment archiveren. |
delete |
Verwijder een experiment in de werkruimte. |
from_directory |
(Afgeschaft) Laad een experiment vanuit het opgegeven pad. |
get_docs_url |
URL naar de documentatie voor deze klasse. |
get_runs |
Retourneer een generator van de uitvoeringen voor dit experiment, in omgekeerde chronologische volgorde. |
list |
Retourneert de lijst met experimenten in de werkruimte. |
reactivate |
Hiermee wordt een gearchiveerd experiment opnieuw geactiveerd. |
refresh |
Retourneer de meest recente versie van het experiment uit de cloud. |
remove_tags |
Verwijder de opgegeven tags uit het experiment. |
set_tags |
Voeg een set tags aan het experiment toe of wijzig deze. Tags die niet worden doorgegeven in de woordenlijst, blijven ongewijzigd. |
start_logging |
Start een interactieve logboekregistratiesessie en maak een interactieve uitvoering in het opgegeven experiment. |
submit |
Dien een experiment in en retourneer de actieve gemaakte uitvoering. |
tag |
Tag het experiment met een tekenreekssleutel en optionele tekenreekswaarde. |
archive
Een experiment archiveren.
archive()
Opmerkingen
Na archivering wordt het experiment niet standaard weergegeven. Als u probeert te schrijven naar een gearchiveerd experiment, wordt er een nieuw actief experiment met dezelfde naam gemaakt. Een gearchiveerd experiment kan worden hersteld door aan te roepen reactivate zolang er geen ander actief experiment met dezelfde naam is.
delete
Verwijder een experiment in de werkruimte.
static delete(workspace, experiment_id)
Parameters
Name | Description |
---|---|
workspace
Vereist
|
De werkruimte waartoe het experiment behoort. |
experiment_id
Vereist
|
De experiment-id van het experiment dat moet worden verwijderd. |
from_directory
(Afgeschaft) Laad een experiment vanuit het opgegeven pad.
static from_directory(path, auth=None)
Parameters
Name | Description |
---|---|
path
Vereist
|
Map met de experimentconfiguratiebestanden. |
auth
|
Het verificatieobject. Bij Geen worden de standaardreferenties van Azure CLI gebruikt of de API vraagt om referenties. Default value: None
|
Retouren
Type | Description |
---|---|
Retourneert het experiment |
get_docs_url
get_runs
Retourneer een generator van de uitvoeringen voor dit experiment, in omgekeerde chronologische volgorde.
get_runs(type=None, tags=None, properties=None, include_children=False)
Parameters
Name | Description |
---|---|
type
|
Filter de geretourneerde generator van uitvoeringen op het opgegeven type. Zie add_type_provider voor het maken van uitvoeringstypen. Default value: None
|
tags
|
Filter wordt uitgevoerd op 'tag' of {"tag": "value"}. Default value: None
|
properties
|
Filter wordt uitgevoerd op 'eigenschap' of {'eigenschap': 'waarde'} Default value: None
|
include_children
|
Standaard worden alleen uitvoeringen op het hoogste niveau opgehaald. Stel in op true om alle uitvoeringen weer te geven. Default value: False
|
Retouren
Type | Description |
---|---|
De lijst met uitvoeringen die overeenkomen met de opgegeven filters. |
list
Retourneert de lijst met experimenten in de werkruimte.
static list(workspace, experiment_name=None, view_type='ActiveOnly', tags=None)
Parameters
Name | Description |
---|---|
workspace
Vereist
|
De werkruimte van waaruit de experimenten moeten worden weergegeven. |
experiment_name
|
Optionele naam om experimenten te filteren. Default value: None
|
view_type
|
Optionele opsommingswaarde om gearchiveerde experimenten te filteren of op te nemen. Default value: ActiveOnly
|
tags
|
Optionele tagsleutel of woordenlijst van tagsleutel-waardeparen om experimenten op te filteren. Default value: None
|
Retouren
Type | Description |
---|---|
Een lijst met experimentobjecten. |
reactivate
Hiermee wordt een gearchiveerd experiment opnieuw geactiveerd.
reactivate(new_name=None)
Parameters
Name | Description |
---|---|
new_name
Vereist
|
Niet meer ondersteund |
Opmerkingen
Een gearchiveerd experiment kan alleen opnieuw worden geactiveerd als er geen ander actief experiment met dezelfde naam is.
refresh
Retourneer de meest recente versie van het experiment uit de cloud.
refresh()
remove_tags
Verwijder de opgegeven tags uit het experiment.
remove_tags(tags)
Parameters
Name | Description |
---|---|
tags
Vereist
|
[str]
De tagsleutels die worden verwijderd |
set_tags
Voeg een set tags aan het experiment toe of wijzig deze. Tags die niet worden doorgegeven in de woordenlijst, blijven ongewijzigd.
set_tags(tags)
Parameters
Name | Description |
---|---|
tags
Vereist
|
De tags die zijn opgeslagen in het experimentobject |
start_logging
Start een interactieve logboekregistratiesessie en maak een interactieve uitvoering in het opgegeven experiment.
start_logging(*args, **kwargs)
Parameters
Name | Description |
---|---|
experiment
Vereist
|
Het experiment. |
outputs
Vereist
|
Optionele uitvoermap die moet worden bijgehouden. Voor geen uitvoer geeft u False door. |
snapshot_directory
Vereist
|
Optionele map om een momentopname van te maken. Als u op Geen instelt, wordt er geen momentopname gemaakt. |
args
Vereist
|
|
kwargs
Vereist
|
|
Retouren
Type | Description |
---|---|
Een gestarte uitvoering retourneren. |
Opmerkingen
start_logging maakt een interactieve uitvoering voor gebruik in scenario's zoals Jupyter Notebooks. Alle metrische gegevens die tijdens de sessie worden geregistreerd, worden toegevoegd aan de uitvoeringsrecord in het experiment. Als een uitvoermap is opgegeven, wordt de inhoud van die map geüpload als uitvoerartefacten na voltooiing van de uitvoering.
experiment = Experiment(workspace, "My Experiment")
run = experiment.start_logging(outputs=None, snapshot_directory=".", display_name="My Run")
...
run.log_metric("Accuracy", accuracy)
run.complete()
Notitie
run_id wordt automatisch gegenereerd voor elke uitvoering en is uniek binnen het experiment.
submit
Dien een experiment in en retourneer de actieve gemaakte uitvoering.
submit(config, tags=None, **kwargs)
Parameters
Name | Description |
---|---|
config
Vereist
|
De configuratie die moet worden verzonden. |
tags
|
Tags die moeten worden toegevoegd aan de ingediende uitvoering, {"tag": "value"}. Default value: None
|
kwargs
Vereist
|
Aanvullende parameters die worden gebruikt in de functie submit voor configuraties. |
Retouren
Type | Description |
---|---|
Een run. |
Opmerkingen
Verzenden is een asynchrone aanroep naar het Azure Machine Learning-platform om een proefversie uit te voeren op lokale of externe hardware. Afhankelijk van de configuratie bereidt Submit automatisch uw uitvoeringsomgevingen voor, voert u uw code uit en legt u uw broncode en resultaten vast in de uitvoeringsgeschiedenis van het experiment.
Als u een experiment wilt verzenden, moet u eerst een configuratieobject maken waarin wordt beschreven hoe het experiment moet worden uitgevoerd. De configuratie is afhankelijk van het type proefversie dat is vereist.
Een voorbeeld van het verzenden van een experiment vanaf uw lokale computer is als volgt:
from azureml.core import ScriptRunConfig
# run a trial from the train.py code in your current directory
config = ScriptRunConfig(source_directory='.', script='train.py',
run_config=RunConfiguration())
run = experiment.submit(config)
# get the url to view the progress of the experiment and then wait
# until the trial is complete
print(run.get_portal_url())
run.wait_for_completion()
Zie de details van het configuratietype voor meer informatie over het configureren van een uitvoering.
azureml.train.automl.automlconfig.AutoMLConfig
azureml.pipeline.core.Pipeline
azureml.pipeline.core.PublishedPipeline
azureml.pipeline.core.PipelineEndpoint
Notitie
Wanneer u de trainingsuitvoering verzendt, wordt een momentopname van de map met uw trainingsscripts gemaakt en verzonden naar het rekendoel. Deze wordt ook opgeslagen als onderdeel van het experiment in uw werkruimte. Als u bestanden wijzigt en de uitvoering opnieuw indient, worden alleen de gewijzigde bestanden geüpload.
Als u wilt voorkomen dat bestanden worden opgenomen in de momentopname, maakt u een .gitignore - of .amlignore-bestand in de map en voegt u de bestanden eraan toe. Het .amlignore-bestand gebruikt dezelfde syntaxis en patronen als het .gitignore-bestand. Als beide bestanden bestaan, heeft het .amlignore-bestand voorrang.
Zie Momentopnamen voor meer informatie.
tag
Tag het experiment met een tekenreekssleutel en optionele tekenreekswaarde.
tag(key, value=None)
Parameters
Name | Description |
---|---|
key
Vereist
|
De tagsleutel |
value
Vereist
|
Een optionele waarde voor de tag |
Opmerkingen
Tags in een experiment worden opgeslagen in een woordenlijst met tekenreekssleutels en tekenreekswaarden. Tags kunnen worden ingesteld, bijgewerkt en verwijderd. Tags zijn gebruikersgericht en bevatten over het algemeen betekenisgegevens voor de gebruikers van het experiment.
experiment.tag('')
experiment.tag('DeploymentCandidate')
experiment.tag('modifiedBy', 'Master CI')
experiment.tag('modifiedBy', 'release pipeline') # Careful, tags are mutable
Kenmerken
archived_time
Retourneer de gearchiveerde tijd voor het experiment. De waarde moet Geen zijn voor een actief experiment.
Retouren
Type | Description |
---|---|
De gearchiveerde tijd van het experiment. |
id
name
tags
Retourneer de veranderlijke set tags in het experiment.
Retouren
Type | Description |
---|---|
De tags van een experiment. |
workspace
Retourneer de werkruimte met het experiment.
Retouren
Type | Description |
---|---|
Retourneert het werkruimteobject. |