Run Klas

Definieert de basisklasse voor alle Uitvoeringen van Azure Machine Learning-experimenten.

Een uitvoering vertegenwoordigt één proefversie van een experiment. Uitvoeringen worden gebruikt om de asynchrone uitvoering van een proefversie te bewaken, metrische gegevens te registreren en uitvoer van de proefversie op te slaan, en om resultaten te analyseren en toegang te krijgen tot artefacten die door de proefversie zijn gegenereerd.

Uitvoeringsobjecten worden gemaakt wanneer u een script verzendt om een model te trainen in veel verschillende scenario's in Azure Machine Learning, waaronder HyperDrive-uitvoeringen, pijplijnuitvoeringen en AutoML-uitvoeringen. Een Run-object wordt ook gemaakt wanneer u submit of start_logging met de Experiment klasse.

Als u aan de slag wilt met experimenten en uitvoeringen, raadpleegt u

Initialiseer het run-object.

Overname
azureml._run_impl.run_base._RunBase
Run

Constructor

Run(experiment, run_id, outputs=None, **kwargs)

Parameters

Name Description
experiment
Vereist

Het bevattende experiment.

run_id
Vereist
str

De id voor de uitvoering.

outputs
str

De uitvoer die moet worden bijgehouden.

standaardwaarde: None
_run_dto
Vereist
<xref:azureml._restclient.models.run_dto.RunDto>

Alleen intern gebruik.

kwargs
Vereist

Een woordenlijst met aanvullende configuratieparameters.

experiment
Vereist

Het bevattende experiment.

run_id
Vereist
str

De id voor de uitvoering.

outputs
Vereist
str

De uitvoer die moet worden bijgehouden.

kwargs
Vereist

Een woordenlijst met aanvullende configuratieparameters.

Opmerkingen

Een uitvoering vertegenwoordigt één proefversie van een experiment. Een Run-object wordt gebruikt om de asynchrone uitvoering van een proefversie te bewaken, metrische gegevens te registreren en uitvoer van de proefversie op te slaan, en om resultaten te analyseren en toegang te krijgen tot artefacten die door de proefversie zijn gegenereerd.

Uitvoeren wordt gebruikt in uw experimentcode om metrische gegevens en artefacten te registreren bij de service Uitvoeringsgeschiedenis.

Uitvoeren wordt buiten uw experimenten gebruikt om de voortgang te bewaken en om query's uit te voeren op de metrische gegevens en resultaten die zijn gegenereerd.

De functionaliteit van Uitvoeren omvat:

  • Metrische gegevens en gegevens opslaan en ophalen

  • Bestanden uploaden en downloaden

  • Tags en de onderliggende hiërarchie gebruiken voor het eenvoudig opzoeken van eerdere uitvoeringen

  • Opgeslagen modelbestanden registreren als een model dat kan worden geoperationaliseerd

  • Eigenschappen van een uitvoering opslaan, wijzigen en ophalen

  • De huidige uitvoering laden vanuit een externe omgeving met de get_context methode

  • Efficiënt momentopnamen maken van een bestand of map voor reproduceerbaarheid

Deze klasse werkt met de in deze Experiment scenario's:

  • Een uitvoering maken door code uit te voeren met behulp van submit

  • Interactief een uitvoering maken in een notebook met behulp van start_logging

  • Metrische gegevens vastleggen en artefacten uploaden in uw experiment, bijvoorbeeld bij gebruik van log

  • Metrische gegevens lezen en artefacten downloaden bij het analyseren van experimentele resultaten, zoals bij het gebruik van get_metrics

Als u een uitvoering wilt verzenden, maakt u een configuratieobject dat beschrijft hoe het experiment wordt uitgevoerd. Hier volgen voorbeelden van de verschillende configuratieobjecten die u kunt gebruiken:

  • ScriptRunConfig

  • azureml.train.automl.automlconfig.AutoMLConfig

  • azureml.train.hyperdrive.HyperDriveConfig

  • azureml.pipeline.core.Pipeline

  • azureml.pipeline.core.PublishedPipeline

  • azureml.pipeline.core.PipelineEndpoint

De volgende metrische gegevens kunnen worden toegevoegd aan een uitvoering tijdens het trainen van een experiment.

  • Scalaire

    • Registreer een numerieke waarde of tekenreekswaarde bij de uitvoering met de opgegeven naam met behulp van log. Als u een metrische waarde bij een uitvoering registreert, wordt deze metrische waarde opgeslagen in de uitvoeringsrecord in het experiment. U kunt dezelfde metrische gegevens meerdere keren binnen een uitvoering registreren, waarbij het resultaat wordt beschouwd als een vector van die metrische waarde.

    • Voorbeeld: run.log("accuracy", 0.95)

  • Lijst

    • Registreer een lijst met waarden bij de uitvoering met de opgegeven naam met behulp van log_list.

    • Voorbeeld: run.log_list("accuracies", [0.6, 0.7, 0.87])

  • Rij

    • Met behulp log_row van maakt u een metrische waarde met meerdere kolommen, zoals beschreven in kwargs. Elke benoemde parameter genereert een kolom met de opgegeven waarde. log_row kan eenmaal worden aangeroepen om een willekeurige tuple te registreren of meerdere keren in een lus om een volledige tabel te genereren.

    • Voorbeeld: run.log_row("Y over X", x=1, y=0.4)

  • Tabel

    • Registreer een woordenlijstobject bij de uitvoering met de opgegeven naam met behulp van log_table.

    • Voorbeeld: run.log_table("Y over X", {"x":[1, 2, 3], "y":[0.6, 0.7, 0.89]})

  • Installatiekopie

    • Meld een installatiekopieën aan bij de uitvoeringsrecord. Gebruik log_image om een afbeeldingsbestand of een matplotlib-plot vast te leggen bij de uitvoering. Deze afbeeldingen zijn zichtbaar en vergelijkbaar in de uitvoeringsrecord.

    • Voorbeeld: run.log_image("ROC", path)

Methoden

add_properties

Onveranderbare eigenschappen toevoegen aan de uitvoering.

Tags en eigenschappen (beide dict[str, str]) verschillen in hun veranderlijkheid. Eigenschappen zijn onveranderbaar, dus ze maken een permanente record voor controledoeleinden. Tags zijn veranderlijk. Zie Uitvoeringen taggen en zoeken voor meer informatie over het werken met tags en eigenschappen.

add_type_provider

Uitbreidbaarheidshook voor aangepaste uitvoeringstypen die zijn opgeslagen in Uitvoeringsgeschiedenis.

cancel

Markeer de uitvoering als geannuleerd.

Als er een gekoppelde taak is met een ingestelde cancel_uri veld, beëindigt u die taak ook.

child_run

Een onderliggende uitvoering maken.

clean

Verwijder de bestanden die overeenkomen met de huidige uitvoering op het doel dat is opgegeven in de uitvoeringsconfiguratie.

complete

Wacht totdat de taakwachtrij is verwerkt.

Vervolgens wordt uitvoeren gemarkeerd als voltooid. Dit wordt doorgaans gebruikt in interactieve notebookscenario's.

create_children

Maak een of meer onderliggende uitvoeringen.

download_file

Download een gekoppeld bestand uit de opslag.

download_files

Download bestanden van een bepaald opslagvoorvoegsel (mapnaam) of de hele container als het voorvoegsel niet is opgegeven.

fail

Markeer de uitvoering als mislukt.

Stel eventueel de eigenschap Error van de uitvoering in met een bericht of uitzondering die is doorgegeven aan error_details.

flush

Wacht totdat de taakwachtrij is verwerkt.

get

Haal de uitvoering voor deze werkruimte op met de uitvoerings-id.

get_all_logs

Download alle logboeken voor de uitvoering naar een map.

get_children

Haal alle onderliggende items op voor de huidige uitvoering die is geselecteerd door opgegeven filters.

get_context

Huidige servicecontext retourneren.

Gebruik deze methode om de huidige servicecontext op te halen voor het vastleggen van metrische gegevens en het uploaden van bestanden. Als allow_offline True (de standaardinstelling) is, worden acties tegen het object Uitvoeren afgedrukt om standaard te worden weergegeven.

get_detailed_status

Haal de meest recente status van de uitvoering op. Als de status van de uitvoering 'In wachtrij' is, worden de details weergegeven.

get_details

Haal de definitie, statusinformatie, huidige logboekbestanden en andere details van de uitvoering op.

get_details_with_logs

Retourneer de uitvoeringsstatus, inclusief de inhoud van het logboekbestand.

get_environment

Haal de omgevingsdefinitie op die door deze uitvoering is gebruikt.

get_file_names

Vermeld de bestanden die zijn opgeslagen in verband met de uitvoering.

get_metrics

Haal de metrische gegevens op die zijn vastgelegd in de uitvoering.

Als recursive waar is (standaard onwaar), haalt u metrische gegevens op voor uitvoeringen in de substructuur van de opgegeven uitvoering.

get_properties

Haal de meest recente eigenschappen van de uitvoering op uit de service.

get_secret

Haal de geheime waarde op uit de context van een uitvoering.

Haal de geheime waarde op voor de opgegeven naam. De geheime naam verwijst naar een waarde die is opgeslagen in Azure Key Vault die is gekoppeld aan uw werkruimte. Zie Geheimen gebruiken in trainingsuitvoeringen voor een voorbeeld van het werken met geheimen.

get_secrets

Haal de geheime waarden op voor een bepaalde lijst met geheime namen.

Haal een woordenlijst op met gevonden en niet-gevonden geheimen voor de opgegeven lijst met namen. Elke geheime naam verwijst naar een waarde die is opgeslagen in Azure Key Vault die is gekoppeld aan uw werkruimte. Zie Geheimen gebruiken in trainingsuitvoeringen voor een voorbeeld van het werken met geheimen.

get_snapshot_id

Haal de meest recente momentopname-id op.

get_status

Haal de meest recente status van de uitvoering op.

Veelvoorkomende geretourneerde waarden zijn 'Wordt uitgevoerd', 'Voltooid' en 'Mislukt'.

get_submitted_run

AFGEKEURD. Gebruik get_context.

Haal de ingediende uitvoering voor dit experiment op.

get_tags

Haal de meest recente set veranderlijke tags op van de uitvoering van de service.

list

Haal een lijst op met uitvoeringen in een experiment dat is opgegeven door optionele filters.

list_by_compute

Haal een lijst op met uitvoeringen in een berekening die is opgegeven door optionele filters.

log

Registreer een metrische waarde bij de uitvoering met de opgegeven naam.

log_accuracy_table

Registreer een nauwkeurigheidstabel in het artefactarchief.

De metrische waarde voor de nauwkeurigheidstabel is een niet-scalaire metrische waarde voor meerdere toepassingen die kan worden gebruikt voor het produceren van meerdere typen lijndiagrammen die continu variëren over de ruimte van voorspelde waarschijnlijkheden. Voorbeelden van deze grafieken zijn ROC, precision-recall en lift curves.

De berekening van de nauwkeurigheidstabel is vergelijkbaar met de berekening van een ROC-curve. Een ROC-curve slaat true-positieve percentages en fout-positieve percentages op bij veel verschillende waarschijnlijkheidsdrempels. In de nauwkeurigheidstabel wordt het onbewerkte aantal terecht-positieven, fout-positieven, terecht-negatieven en fout-negatieven opgeslagen tegen veel waarschijnlijkheidsdrempels.

Er worden twee methoden gebruikt voor het selecteren van drempelwaarden: 'waarschijnlijkheid' en 'percentiel'. Ze verschillen in de wijze waarop ze een steekproef nemen van de ruimte van voorspelde waarschijnlijkheden.

Waarschijnlijkheidsdrempels zijn gelijkmatig verdeelde drempelwaarden tussen 0 en 1. Als NUM_POINTS 5 is, zijn de waarschijnlijkheidsdrempels [0,0, 0,25, 0,5, 0,75, 1,0].

Percentieldrempels worden gespreid op basis van de verdeling van voorspelde waarschijnlijkheden. Elke drempelwaarde komt overeen met het percentiel van de gegevens bij een waarschijnlijkheidsdrempelwaarde. Als NUM_POINTS bijvoorbeeld 5 is, ligt de eerste drempelwaarde op het 0e percentiel, de tweede op het 25e percentiel, de derde op de 50e, enzovoort.

De kanstabellen en percentieltabellen zijn beide 3D-lijsten, waarbij de eerste dimensie het klasselabel vertegenwoordigt, de tweede dimensie de steekproef vertegenwoordigt op één drempelwaarde (schaalt met NUM_POINTS) en de derde dimensie altijd 4 waarden heeft: TP, FP, TN, FN en altijd in die volgorde.

De verwarringswaarden (TP, FP, TN, FN) worden berekend met de één versus rest-strategie. Zie de volgende koppeling voor meer informatie: https://en.wikipedia.org/wiki/Multiclass_classification

N = aantal voorbeelden in validatiegegevensset (200 in voorbeeld) M = # drempelwaarden = # steekproeven uit de waarschijnlijkheidsruimte (5 in voorbeeld) C = # klassen in volledige gegevensset (3 in voorbeeld)

Enkele invarianten van de nauwkeurigheidstabel:

  • TP + FP + TN + FN = N voor alle drempelwaarden voor alle klassen
  • TP + FN is hetzelfde bij alle drempelwaarden voor elke klasse
  • TN + FP is hetzelfde bij alle drempelwaarden voor elke klasse
  • Waarschijnlijkheidstabellen en percentieltabellen hebben vorm [C, M, 4]

Opmerking: M kan elke waarde zijn en bepaalt de resolutie van de grafieken Dit is onafhankelijk van de gegevensset, wordt gedefinieerd bij het berekenen van metrische gegevens en maakt gebruik van opslagruimte, rekentijd en resolutie.

Klasselabels moeten tekenreeksen zijn, verwarringswaarden moeten gehele getallen zijn en drempelwaarden moeten zwevende waarden zijn.

log_confusion_matrix

Registreer een verwarringsmatrix in het artefactarchief.

Hiermee wordt een wrapper rond de sklearn-verwarringsmatrix gelogd. De metrische gegevens bevatten de klasselabels en een 2D-lijst voor de matrix zelf. Zie de volgende koppeling voor meer informatie over hoe de metrische gegevens worden berekend: https://scikit-learn.org/stable/modules/generated/sklearn.metrics.confusion_matrix.html

log_image

Een metrische afbeelding registreren in de uitvoeringsrecord.

log_list

Registreer een lijst met metrische waarden bij de uitvoering met de opgegeven naam.

log_predictions

Logboekvoorspellingen in het artefactarchief.

Hiermee wordt een metrische score geregistreerd die kan worden gebruikt om de distributies van werkelijke doelwaarden te vergelijken met de distributie van voorspelde waarden voor een regressietaak.

De voorspellingen zijn binned en standaarddeviaties worden berekend voor foutbalken in een lijndiagram.

log_residuals

Log residuen in het artefactarchief.

Hiermee worden de gegevens die nodig zijn voor het weergeven van een histogram van residuen voor een regressietaak, in een logboek opgeslagen. De residuen worden voorspeld- werkelijk.

Er moet één rand meer zijn dan het aantal aantallen. Raadpleeg de documentatie over het numpy-histogram voor voorbeelden van het gebruik van aantallen en randen om een histogram weer te geven. https://docs.scipy.org/doc/numpy/reference/generated/numpy.histogram.html

log_row

Registreer een rijmetriek bij de uitvoering met de opgegeven naam.

log_table

Registreer een metrische tabelwaarde bij de uitvoering met de opgegeven naam.

register_model

Een model registreren voor operationalisatie.

remove_tags

Verwijder de lijst met veranderlijke tags tijdens deze uitvoering.

restore_snapshot

Een momentopname herstellen als een ZIP-bestand. Retourneert het pad naar het ZIP-bestand.

set_tags

Voeg een set tags toe of wijzig deze tijdens de uitvoering. Tags die niet worden doorgegeven in de woordenlijst, blijven ongewijzigd.

U kunt ook eenvoudige tekenreekstags toevoegen. Wanneer deze tags als sleutels in de tagwoordenlijst worden weergegeven, hebben ze de waarde Geen. Zie Uitvoeringen taggen en zoeken voor meer informatie.

start

Markeer de uitvoering als gestart.

Dit wordt meestal gebruikt in geavanceerde scenario's wanneer de uitvoering is gemaakt door een andere actor.

submit_child

Dien een experiment in en retourneer de actieve onderliggende uitvoering.

tag

Tag de uitvoering met een tekenreekssleutel en optionele tekenreekswaarde.

take_snapshot

Sla een momentopname van het invoerbestand of de invoermap op.

upload_file

Upload een bestand naar de uitvoeringsrecord.

upload_files

Bestanden uploaden naar de uitvoeringsrecord.

upload_folder

Upload de opgegeven map naar de opgegeven voorvoegselnaam.

wait_for_completion

Wacht tot de uitvoering is voltooid. Retourneert het statusobject na de wachttijd.

add_properties

Onveranderbare eigenschappen toevoegen aan de uitvoering.

Tags en eigenschappen (beide dict[str, str]) verschillen in hun veranderlijkheid. Eigenschappen zijn onveranderbaar, dus ze maken een permanente record voor controledoeleinden. Tags zijn veranderlijk. Zie Uitvoeringen taggen en zoeken voor meer informatie over het werken met tags en eigenschappen.

add_properties(properties)

Parameters

Name Description
properties
Vereist

De verborgen eigenschappen die zijn opgeslagen in het run-object.

add_type_provider

Uitbreidbaarheidshook voor aangepaste uitvoeringstypen die zijn opgeslagen in Uitvoeringsgeschiedenis.

static add_type_provider(runtype, run_factory)

Parameters

Name Description
runtype
Vereist
str

De waarde van Run.type waarvoor de factory wordt aangeroepen. Voorbeelden zijn 'hyperdrive' of 'azureml.scriptrun', maar deze kunnen worden uitgebreid met aangepaste typen.

run_factory
Vereist
<xref:function>

Een functie met handtekening (Experiment, RunDto):> voer uit om te worden aangeroepen bij het weergeven van uitvoeringen.

cancel

Markeer de uitvoering als geannuleerd.

Als er een gekoppelde taak is met een ingestelde cancel_uri veld, beëindigt u die taak ook.

cancel()

child_run

Een onderliggende uitvoering maken.

child_run(name=None, run_id=None, outputs=None)

Parameters

Name Description
name
str

Een optionele naam voor de onderliggende uitvoering, meestal opgegeven voor een 'onderdeel'.

standaardwaarde: None
run_id
str

Een optionele uitvoerings-id voor het onderliggende item, anders wordt deze automatisch gegenereerd. Deze parameter is doorgaans niet ingesteld.

standaardwaarde: None
outputs
str

Optionele uitvoermap die moet worden bijgehouden voor het onderliggende item.

standaardwaarde: None

Retouren

Type Description
Run

Het kind wordt uitgevoerd.

Opmerkingen

Dit wordt gebruikt om een deel van een run te isoleren in een subsectie. Dit kan worden gedaan voor identificeerbare 'onderdelen' van een uitvoering die interessant zijn om te scheiden of om onafhankelijke metrische gegevens vast te leggen in een interatie van een subproces.

Als een uitvoermap is ingesteld voor de onderliggende uitvoering, wordt de inhoud van die map geüpload naar de onderliggende uitvoeringsrecord wanneer het onderliggende item is voltooid.

clean

Verwijder de bestanden die overeenkomen met de huidige uitvoering op het doel dat is opgegeven in de uitvoeringsconfiguratie.

clean()

Retouren

Type Description

Een lijst met verwijderde bestanden.

complete

Wacht totdat de taakwachtrij is verwerkt.

Vervolgens wordt uitvoeren gemarkeerd als voltooid. Dit wordt doorgaans gebruikt in interactieve notebookscenario's.

complete(_set_status=True)

Parameters

Name Description
_set_status

Geeft aan of de status-gebeurtenis voor het bijhouden moet worden verzonden.

standaardwaarde: True

create_children

Maak een of meer onderliggende uitvoeringen.

create_children(count=None, tag_key=None, tag_values=None)

Parameters

Name Description
count
int

Een optioneel aantal onderliggende items dat moet worden gemaakt.

standaardwaarde: None
tag_key
str

Een optionele sleutel voor het invullen van de vermelding Tags in alle gemaakte onderliggende items.

standaardwaarde: None
tag_Values
Vereist

Een optionele lijst met waarden die worden toegewezen aan Tags[tag_key] voor de lijst met gemaakte uitvoeringen.

tag_values
standaardwaarde: None

Retouren

Type Description

De lijst met onderliggende uitvoeringen.

Opmerkingen

count Parameter OF parameters tag_key AND tag_values moeten worden opgegeven.

download_file

Download een gekoppeld bestand uit de opslag.

download_file(name, output_file_path=None, _validate_checksum=False)

Parameters

Name Description
name
Vereist
str

De naam van het artefact dat moet worden gedownload.

output_file_path
Vereist
str

Het lokale pad waar het artefact moet worden opgeslagen.

download_files

Download bestanden van een bepaald opslagvoorvoegsel (mapnaam) of de hele container als het voorvoegsel niet is opgegeven.

download_files(prefix=None, output_directory=None, output_paths=None, batch_size=100, append_prefix=True, timeout_seconds=None)

Parameters

Name Description
prefix
Vereist
str

Het bestandspadvoorvoegsel in de container waaruit alle artefacten moeten worden gedownload.

output_directory
Vereist
str

Een optionele map die alle artefactpaden als voorvoegsel gebruiken.

output_paths
Vereist
[str]

Optionele bestandspaden waarin de gedownloade artefacten moeten worden opgeslagen. Moet uniek zijn en overeenkomen met de lengte van paden.

batch_size
Vereist
int

Het aantal bestanden dat per batch moet worden gedownload. De standaardwaarde is 100 bestanden.

append_prefix
Vereist

Een optionele vlag of het opgegeven voorvoegsel van het uiteindelijke uitvoerbestandspad moet worden toegevoegd. Als onwaar is, wordt het voorvoegsel verwijderd uit het pad naar het uitvoerbestand.

timeout_seconds
Vereist
int

De time-out voor het downloaden van bestanden.

fail

Markeer de uitvoering als mislukt.

Stel eventueel de eigenschap Error van de uitvoering in met een bericht of uitzondering die is doorgegeven aan error_details.

fail(error_details=None, error_code=None, _set_status=True)

Parameters

Name Description
error_details

Optionele details van de fout.

standaardwaarde: None
error_code
str

Optionele foutcode van de fout voor de foutclassificatie.

standaardwaarde: None
_set_status

Hiermee wordt aangegeven of de status-gebeurtenis voor het bijhouden moet worden verzonden.

standaardwaarde: True

flush

Wacht totdat de taakwachtrij is verwerkt.

flush(timeout_seconds=300)

Parameters

Name Description
timeout_seconds
int

Hoe lang moet worden gewacht (in seconden) voordat de taakwachtrij wordt verwerkt.

standaardwaarde: 300

get

Haal de uitvoering voor deze werkruimte op met de uitvoerings-id.

static get(workspace, run_id)

Parameters

Name Description
workspace
Vereist

De werkruimte met daarin.

run_id
Vereist

De uitvoerings-id.

Retouren

Type Description
Run

De verzonden uitvoering.

get_all_logs

Download alle logboeken voor de uitvoering naar een map.

get_all_logs(destination=None)

Parameters

Name Description
destination
str

Het doelpad voor het opslaan van logboeken. Als dit niet wordt opgegeven, wordt een map met de naam als de uitvoerings-id gemaakt in de projectmap.

standaardwaarde: None

Retouren

Type Description

Een lijst met namen van gedownloade logboeken.

get_children

Haal alle onderliggende items op voor de huidige uitvoering die is geselecteerd door opgegeven filters.

get_children(recursive=False, tags=None, properties=None, type=None, status=None, _rehydrate_runs=True)

Parameters

Name Description
recursive

Geeft aan of alle afstammelingen moeten worden herhaald.

standaardwaarde: False
tags
str of dict

Indien opgegeven, retourneert deze uitvoeringen die overeenkomen met de opgegeven tag of {"tag": "value"}.

standaardwaarde: None
properties
str of dict

Indien opgegeven, retourneert deze uitvoeringen die overeenkomen met de opgegeven 'eigenschap' of {'property': 'value'}.

standaardwaarde: None
type
str

Indien opgegeven, retourneert uitvoeringen die overeenkomen met dit type.

standaardwaarde: None
status
str

Indien opgegeven, worden uitvoeringen geretourneerd met de status opgegeven 'status'.

standaardwaarde: None
_rehydrate_runs

Geeft aan of een uitvoering van het oorspronkelijke type of de basisuitvoering moet worden geïnstitueren.

standaardwaarde: True

Retouren

Type Description

Een lijst met Run objecten.

get_context

Huidige servicecontext retourneren.

Gebruik deze methode om de huidige servicecontext op te halen voor het vastleggen van metrische gegevens en het uploaden van bestanden. Als allow_offline True (de standaardinstelling) is, worden acties tegen het object Uitvoeren afgedrukt om standaard te worden weergegeven.

get_context(allow_offline=True, used_for_context_manager=False, **kwargs)

Parameters

Name Description
cls
Vereist

Geeft de klassemethode aan.

allow_offline

Sta toe dat de servicecontext terugvalt naar de offlinemodus, zodat het trainingsscript lokaal kan worden getest zonder een taak met de SDK te verzenden. Standaard waar.

standaardwaarde: True
kwargs
Vereist

Een woordenlijst met aanvullende parameters.

used_for_context_manager
standaardwaarde: False

Retouren

Type Description
Run

De verzonden uitvoering.

Opmerkingen

Deze functie wordt vaak gebruikt voor het ophalen van het geverifieerde Run-object in een script dat moet worden verzonden voor uitvoering via experiment.submit(). Dit uitvoeringsobject is zowel een geverifieerde context voor communicatie met Azure Machine Learning-services als een conceptuele container waarin metrische gegevens, bestanden (artefacten) en modellen zijn opgenomen.


   run = Run.get_context() # allow_offline=True by default, so can be run locally as well
   ...
   run.log("Accuracy", 0.98)
   run.log_row("Performance", epoch=e, error=err)

get_detailed_status

Haal de meest recente status van de uitvoering op. Als de status van de uitvoering 'In wachtrij' is, worden de details weergegeven.

get_detailed_status()

Retouren

Type Description

De meest recente status en details

Opmerkingen

  • status: de huidige status van de uitvoering. Dezelfde waarde als de waarde die wordt geretourneerd door get_status().

  • details: de gedetailleerde informatie voor de huidige status.


   run = experiment.submit(config)
   details = run.get_detailed_status()
   # details = {
   #     'status': 'Queued',
   #     'details': 'Run requested 1 node(s). Run is in pending status.',
   # }

get_details

Haal de definitie, statusinformatie, huidige logboekbestanden en andere details van de uitvoering op.

get_details()

Retouren

Type Description

De details voor de uitvoering retourneren

Opmerkingen

De geretourneerde woordenlijst bevat de volgende sleutel-waardeparen:

  • runId: id van deze uitvoering.

  • Doel

  • status: de huidige status van de uitvoering. Dezelfde waarde als de waarde die wordt geretourneerd door get_status().

  • startTimeUtc: UTC-tijd waarop deze uitvoering is gestart, in ISO8601.

  • endTimeUtc: UTC-tijd waarop deze uitvoering is voltooid (voltooid of mislukt), in ISO8601.

    Deze sleutel bestaat niet als de uitvoering nog wordt uitgevoerd.

  • eigenschappen: onveranderbare sleutel-waardeparen die aan de uitvoering zijn gekoppeld. Standaardeigenschappen omvatten de momentopname-id van de uitvoering en informatie over de Git-opslagplaats op basis waarvan de uitvoering is gemaakt (indien aanwezig). Aanvullende eigenschappen kunnen worden toegevoegd aan een uitvoering met behulp van add_properties.

  • inputDatasets: invoergegevenssets die zijn gekoppeld aan de uitvoering.

  • outputDatasets: uitvoergegevenssets die zijn gekoppeld aan de uitvoering.

  • Logbestanden

  • submittedBy


   run = experiment.start_logging()

   details = run.get_details()
   # details = {
   #     'runId': '5c24aa28-6e4a-4572-96a0-fb522d26fe2d',
   #     'target': 'sdk',
   #     'status': 'Running',
   #     'startTimeUtc': '2019-01-01T13:08:01.713777Z',
   #     'endTimeUtc': '2019-01-01T17:15:65.986253Z',
   #     'properties': {
   #         'azureml.git.repository_uri': 'https://example.com/my/git/repo',
   #         'azureml.git.branch': 'master',
   #         'azureml.git.commit': '7dc972657c2168927a02c3bc2b161e0f370365d7',
   #         'azureml.git.dirty': 'True',
   #         'mlflow.source.git.repoURL': 'https://example.com/my/git/repo',
   #         'mlflow.source.git.branch': 'master',
   #         'mlflow.source.git.commit': '7dc972657c2168927a02c3bc2b161e0f370365d7',
   #         'ContentSnapshotId': 'b4689489-ce2f-4db5-b6d7-6ad11e77079c'
   #     },
   #     'inputDatasets': [{
   #         'dataset': {'id': 'cdebf245-701d-4a68-8055-41f9cf44f298'},
   #         'consumptionDetails': {
   #             'type': 'RunInput',
   #             'inputName': 'training-data',
   #             'mechanism': 'Mount',
   #             'pathOnCompute': '/mnt/datasets/train'
   #         }
   #     }],
   #     'outputDatasets': [{
   #         'dataset': {'id': 'd04e8a19-1caa-4b1f-b318-4cbff9af9615'},
   #         'outputType': 'RunOutput',
   #         'outputDetails': {
   #             'outputName': 'training-result'
   #         }
   #     }],
   #     'runDefinition': {},
   #     'logFiles': {},
   #     'submittedBy': 'Alan Turing'
   # }

get_details_with_logs

Retourneer de uitvoeringsstatus, inclusief de inhoud van het logboekbestand.

get_details_with_logs()

Retouren

Type Description

Retourneert de status voor de uitvoering met de inhoud van het logboekbestand.

get_environment

Haal de omgevingsdefinitie op die door deze uitvoering is gebruikt.

get_environment()

Retouren

Type Description

Retourneer het omgevingsobject.

get_file_names

Vermeld de bestanden die zijn opgeslagen in verband met de uitvoering.

get_file_names()

Retouren

Type Description

De lijst met paden voor bestaande artefacten

get_metrics

Haal de metrische gegevens op die zijn vastgelegd in de uitvoering.

Als recursive waar is (standaard onwaar), haalt u metrische gegevens op voor uitvoeringen in de substructuur van de opgegeven uitvoering.

get_metrics(name=None, recursive=False, run_type=None, populate=False)

Parameters

Name Description
name
str

De naam van de metrische waarde.

standaardwaarde: None
recursive

Geeft aan of alle afstammelingen moeten worden herhaald.

standaardwaarde: False
run_type
str
standaardwaarde: None
populate

Hiermee wordt aangegeven of de inhoud van externe gegevens moet worden opgehaald die zijn gekoppeld aan de metrische waarde.

standaardwaarde: False

Retouren

Type Description

Een woordenlijst met de metrische gegevens van gebruikers.

Opmerkingen


   run = experiment.start_logging() # run id: 123
   run.log("A", 1)
   with run.child_run() as child: # run id: 456
       child.log("A", 2)

   metrics = run.get_metrics()
   # metrics = { 'A': 1 }

   metrics = run.get_metrics(recursive=True)
   # metrics = { '123': { 'A': 1 }, '456': { 'A': 2 } } note key is runId

get_properties

Haal de meest recente eigenschappen van de uitvoering op uit de service.

get_properties()

Retouren

Type Description

De eigenschappen van de uitvoering.

Opmerkingen

Eigenschappen zijn onveranderbare door het systeem gegenereerde informatie, zoals duur, datum van uitvoering, gebruiker en aangepaste eigenschappen die met de add_properties methode zijn toegevoegd. Zie Uitvoeringen taggen en zoeken voor meer informatie.

Wanneer u een taak verzendt naar Azure Machine Learning en bronbestanden worden opgeslagen in een lokale Git-opslagplaats, wordt informatie over de opslagplaats opgeslagen als eigenschappen. Deze git-eigenschappen worden toegevoegd bij het maken van een uitvoering of het aanroepen van Experiment.submit. Zie Git-integratie voor Azure Machine Learning voor meer informatie over Git-eigenschappen.

get_secret

Haal de geheime waarde op uit de context van een uitvoering.

Haal de geheime waarde op voor de opgegeven naam. De geheime naam verwijst naar een waarde die is opgeslagen in Azure Key Vault die is gekoppeld aan uw werkruimte. Zie Geheimen gebruiken in trainingsuitvoeringen voor een voorbeeld van het werken met geheimen.

get_secret(name)

Parameters

Name Description
name
Vereist
str

De naam van het geheim waarvoor een geheim moet worden geretourneerd.

Retouren

Type Description
str

De geheime waarde.

get_secrets

Haal de geheime waarden op voor een bepaalde lijst met geheime namen.

Haal een woordenlijst op met gevonden en niet-gevonden geheimen voor de opgegeven lijst met namen. Elke geheime naam verwijst naar een waarde die is opgeslagen in Azure Key Vault die is gekoppeld aan uw werkruimte. Zie Geheimen gebruiken in trainingsuitvoeringen voor een voorbeeld van het werken met geheimen.

get_secrets(secrets)

Parameters

Name Description
secrets
Vereist

Een lijst met geheime namen waarvoor geheime waarden moeten worden geretourneerd.

Retouren

Type Description

Retourneert een woordenlijst met gevonden en niet-gevonden geheimen.

get_snapshot_id

Haal de meest recente momentopname-id op.

get_snapshot_id()

Retouren

Type Description
str

De meest recente momentopname-id.

get_status

Haal de meest recente status van de uitvoering op.

Veelvoorkomende geretourneerde waarden zijn 'Wordt uitgevoerd', 'Voltooid' en 'Mislukt'.

get_status()

Retouren

Type Description
str

De meest recente status.

Opmerkingen

  • NotStarted: dit is een tijdelijke status van uitvoeringsobjecten aan de clientzijde vóór verzending in de cloud.

  • Starten: de uitvoering wordt verwerkt in de cloud. De aanroeper heeft op dit moment een uitvoerings-id.

  • Inrichting: wordt geretourneerd wanneer er rekenproces op aanvraag wordt gemaakt voor een bepaalde taakverzending.

  • Voorbereiden: de uitvoeringsomgeving wordt voorbereid:

    • docker-installatiekopieën bouwen

    • conda-omgeving instellen

  • In wachtrij: de taak wordt in de wachtrij geplaatst in het rekendoel. In BatchAI bevindt de taak zich bijvoorbeeld in de wachtrijstatus

    terwijl u wacht tot alle aangevraagde knooppunten gereed zijn.

  • Uitvoeren: de taak wordt uitgevoerd in het rekendoel.

  • Voltooien: de gebruikerscode is voltooid en de uitvoering bevindt zich in de naverwerkingsfasen.

  • CancelRequested: annulering is aangevraagd voor de taak.

  • Voltooid: de uitvoering is voltooid. Dit omvat zowel de gebruikerscode als de uitvoering

    naverwerkingsfasen.

  • Mislukt: de uitvoering is mislukt. Meestal geeft de eigenschap Error bij een uitvoering details over de reden.

  • Geannuleerd: volgt een annuleringsaanvraag en geeft aan dat de uitvoering nu is geannuleerd.

  • Reageert niet: voor uitvoeringen waarvoor heartbeats zijn ingeschakeld, is er onlangs geen heartbeat verzonden.


   run = experiment.submit(config)
   while run.get_status() not in ['Completed', 'Failed']: # For example purposes only, not exhaustive
       print('Run {} not in terminal state'.format(run.id))
       time.sleep(10)

get_submitted_run

AFGEKEURD. Gebruik get_context.

Haal de ingediende uitvoering voor dit experiment op.

get_submitted_run(**kwargs)

Retouren

Type Description
Run

De verzonden uitvoering.

get_tags

Haal de meest recente set veranderlijke tags op van de uitvoering van de service.

get_tags()

Retouren

Type Description

De tags die zijn opgeslagen in het uitvoeringsobject.

list

Haal een lijst op met uitvoeringen in een experiment dat is opgegeven door optionele filters.

static list(experiment, type=None, tags=None, properties=None, status=None, include_children=False, _rehydrate_runs=True)

Parameters

Name Description
experiment
Vereist

Het bevattende experiment.

type
str

Indien opgegeven, retourneert uitvoeringen die overeenkomen met het opgegeven type.

standaardwaarde: None
tags
str of dict

Indien opgegeven, retourneert deze uitvoeringen die overeenkomen met de opgegeven tag of {"tag": "value"}.

standaardwaarde: None
properties
str of dict

Indien opgegeven, retourneert deze uitvoeringen die overeenkomen met de opgegeven 'eigenschap' of {'property': 'value'}.

standaardwaarde: None
status
str

Indien opgegeven, worden uitvoeringen geretourneerd met de status opgegeven 'status'.

standaardwaarde: None
include_children

Als deze optie is ingesteld op true, haalt u alle uitvoeringen op, niet alleen de uitvoeringen op het hoogste niveau.

standaardwaarde: False
_rehydrate_runs

Als dit is ingesteld op Waar (standaard), wordt de geregistreerde provider gebruikt om een object voor dat type opnieuw te maken in plaats van de basisuitvoering.

standaardwaarde: True

Retouren

Type Description

Een lijst met uitvoeringen.

Opmerkingen

In het volgende codevoorbeeld ziet u enkele toepassingen van de list methode.


   favorite_completed_runs = Run.list(experiment, status='Completed', tags='favorite')

   all_distinct_runs = Run.list(experiment)
   and_their_children = Run.list(experiment, include_children=True)

   only_script_runs = Run.list(experiment, type=ScriptRun.RUN_TYPE)

list_by_compute

Haal een lijst op met uitvoeringen in een berekening die is opgegeven door optionele filters.

static list_by_compute(compute, type=None, tags=None, properties=None, status=None)

Parameters

Name Description
compute
Vereist

De bevattende berekening.

type
str

Indien opgegeven, retourneert uitvoeringen die overeenkomen met het opgegeven type.

standaardwaarde: None
tags
str of dict

Indien opgegeven, retourneert deze uitvoeringen die overeenkomen met de opgegeven tag of {"tag": "value"}.

standaardwaarde: None
properties
str of dict

Indien opgegeven, retourneert deze uitvoeringen die overeenkomen met de opgegeven 'eigenschap' of {'property': 'value'}.

standaardwaarde: None
status
str

Indien opgegeven, worden uitvoeringen geretourneerd met de status opgegeven 'status'. Alleen toegestane waarden zijn 'Actief' en 'In wachtrij'.

standaardwaarde: None

Retouren

Type Description
<xref:builtin.generator>

een generator van ~_restclient.models.RunDto

log

Registreer een metrische waarde bij de uitvoering met de opgegeven naam.

log(name, value, description='', step=None)

Parameters

Name Description
name
Vereist
str

De naam van de metrische waarde.

value
Vereist

De waarde die naar de service moet worden geboekt.

description
Vereist
str

Een optionele beschrijving van metrische gegevens.

step
int

Een optionele as om de waardevolgorde binnen een metrische waarde op te geven.

standaardwaarde: None

Opmerkingen

Als u een metrische waarde bij een uitvoering registreert, wordt die metrische waarde opgeslagen in de uitvoeringsrecord in het experiment. U kunt dezelfde metrische waarde meerdere keren binnen een uitvoering vastleggen, waarbij het resultaat wordt beschouwd als een vector van die metrische waarde. Als stap is opgegeven voor een metrische waarde, moet deze worden opgegeven voor alle waarden.

log_accuracy_table

Registreer een nauwkeurigheidstabel in het artefactarchief.

De metrische waarde voor de nauwkeurigheidstabel is een niet-scalaire metrische waarde voor meerdere toepassingen die kan worden gebruikt voor het produceren van meerdere typen lijndiagrammen die continu variëren over de ruimte van voorspelde waarschijnlijkheden. Voorbeelden van deze grafieken zijn ROC, precision-recall en lift curves.

De berekening van de nauwkeurigheidstabel is vergelijkbaar met de berekening van een ROC-curve. Een ROC-curve slaat true-positieve percentages en fout-positieve percentages op bij veel verschillende waarschijnlijkheidsdrempels. In de nauwkeurigheidstabel wordt het onbewerkte aantal terecht-positieven, fout-positieven, terecht-negatieven en fout-negatieven opgeslagen tegen veel waarschijnlijkheidsdrempels.

Er worden twee methoden gebruikt voor het selecteren van drempelwaarden: 'waarschijnlijkheid' en 'percentiel'. Ze verschillen in de wijze waarop ze een steekproef nemen van de ruimte van voorspelde waarschijnlijkheden.

Waarschijnlijkheidsdrempels zijn gelijkmatig verdeelde drempelwaarden tussen 0 en 1. Als NUM_POINTS 5 is, zijn de waarschijnlijkheidsdrempels [0,0, 0,25, 0,5, 0,75, 1,0].

Percentieldrempels worden gespreid op basis van de verdeling van voorspelde waarschijnlijkheden. Elke drempelwaarde komt overeen met het percentiel van de gegevens bij een waarschijnlijkheidsdrempelwaarde. Als NUM_POINTS bijvoorbeeld 5 is, ligt de eerste drempelwaarde op het 0e percentiel, de tweede op het 25e percentiel, de derde op de 50e, enzovoort.

De kanstabellen en percentieltabellen zijn beide 3D-lijsten, waarbij de eerste dimensie het klasselabel vertegenwoordigt, de tweede dimensie de steekproef vertegenwoordigt op één drempelwaarde (schaalt met NUM_POINTS) en de derde dimensie altijd 4 waarden heeft: TP, FP, TN, FN en altijd in die volgorde.

De verwarringswaarden (TP, FP, TN, FN) worden berekend met de één versus rest-strategie. Zie de volgende koppeling voor meer informatie: https://en.wikipedia.org/wiki/Multiclass_classification

N = aantal voorbeelden in validatiegegevensset (200 in voorbeeld) M = # drempelwaarden = # steekproeven uit de waarschijnlijkheidsruimte (5 in voorbeeld) C = # klassen in volledige gegevensset (3 in voorbeeld)

Enkele invarianten van de nauwkeurigheidstabel:

  • TP + FP + TN + FN = N voor alle drempelwaarden voor alle klassen
  • TP + FN is hetzelfde bij alle drempelwaarden voor elke klasse
  • TN + FP is hetzelfde bij alle drempelwaarden voor elke klasse
  • Waarschijnlijkheidstabellen en percentieltabellen hebben vorm [C, M, 4]

Opmerking: M kan elke waarde zijn en bepaalt de resolutie van de grafieken Dit is onafhankelijk van de gegevensset, wordt gedefinieerd bij het berekenen van metrische gegevens en maakt gebruik van opslagruimte, rekentijd en resolutie.

Klasselabels moeten tekenreeksen zijn, verwarringswaarden moeten gehele getallen zijn en drempelwaarden moeten zwevende waarden zijn.

log_accuracy_table(name, value, description='')

Parameters

Name Description
name
Vereist
str

De naam van de nauwkeurigheidstabel.

value
Vereist
str of dict

JSON met naam, versie en gegevenseigenschappen.

description
Vereist
str

Een optionele beschrijving van metrische gegevens.

Opmerkingen

Voorbeeld van een geldige JSON-waarde:


   {
       "schema_type": "accuracy_table",
       "schema_version": "1.0.1",
       "data": {
           "probability_tables": [
               [
                   [82, 118, 0, 0],
                   [75, 31, 87, 7],
                   [66, 9, 109, 16],
                   [46, 2, 116, 36],
                   [0, 0, 118, 82]
               ],
               [
                   [60, 140, 0, 0],
                   [56, 20, 120, 4],
                   [47, 4, 136, 13],
                   [28, 0, 140, 32],
                   [0, 0, 140, 60]
               ],
               [
                   [58, 142, 0, 0],
                   [53, 29, 113, 5],
                   [40, 10, 132, 18],
                   [24, 1, 141, 34],
                   [0, 0, 142, 58]
               ]
           ],
           "percentile_tables": [
               [
                   [82, 118, 0, 0],
                   [82, 67, 51, 0],
                   [75, 26, 92, 7],
                   [48, 3, 115, 34],
                   [3, 0, 118, 79]
               ],
               [
                   [60, 140, 0, 0],
                   [60, 89, 51, 0],
                   [60, 41, 99, 0],
                   [46, 5, 135, 14],
                   [3, 0, 140, 57]
               ],
               [
                   [58, 142, 0, 0],
                   [56, 93, 49, 2],
                   [54, 47, 95, 4],
                   [41, 10, 132, 17],
                   [3, 0, 142, 55]
               ]
           ],
           "probability_thresholds": [0.0, 0.25, 0.5, 0.75, 1.0],
           "percentile_thresholds": [0.0, 0.01, 0.24, 0.98, 1.0],
           "class_labels": ["0", "1", "2"]
       }
   }

log_confusion_matrix

Registreer een verwarringsmatrix in het artefactarchief.

Hiermee wordt een wrapper rond de sklearn-verwarringsmatrix gelogd. De metrische gegevens bevatten de klasselabels en een 2D-lijst voor de matrix zelf. Zie de volgende koppeling voor meer informatie over hoe de metrische gegevens worden berekend: https://scikit-learn.org/stable/modules/generated/sklearn.metrics.confusion_matrix.html

log_confusion_matrix(name, value, description='')

Parameters

Name Description
name
Vereist
str

De naam van de verwarringsmatrix.

value
Vereist
str of dict

JSON met naam, versie en gegevenseigenschappen.

description
Vereist
str

Een optionele beschrijving van metrische gegevens.

Opmerkingen

Voorbeeld van een geldige JSON-waarde:


   {
       "schema_type": "confusion_matrix",
       "schema_version": "1.0.0",
       "data": {
           "class_labels": ["0", "1", "2", "3"],
           "matrix": [
               [3, 0, 1, 0],
               [0, 1, 0, 1],
               [0, 0, 1, 0],
               [0, 0, 0, 1]
           ]
       }
   }

log_image

Een metrische afbeelding registreren in de uitvoeringsrecord.

log_image(name, path=None, plot=None, description='')

Parameters

Name Description
name
Vereist
str

De naam van de metrische waarde.

path
Vereist
str

Het pad of de stroom van de afbeelding.

plot
Vereist
<xref:matplotlib.pyplot>

De plot die moet worden opgenomen als een afbeelding.

description
Vereist
str

Een optionele beschrijving van metrische gegevens.

Opmerkingen

Gebruik deze methode om een afbeeldingsbestand of een matplotlib-plot aan de uitvoering vast te leggen. Deze installatiekopieën zijn zichtbaar en vergelijkbaar in de uitvoeringsrecord.

log_list

Registreer een lijst met metrische waarden bij de uitvoering met de opgegeven naam.

log_list(name, value, description='')

Parameters

Name Description
name
Vereist
str

De naam van de metrische waarde.

value
Vereist

De waarden van de metrische waarde.

description
Vereist
str

Een optionele beschrijving van metrische gegevens.

log_predictions

Logboekvoorspellingen in het artefactarchief.

Hiermee wordt een metrische score geregistreerd die kan worden gebruikt om de distributies van werkelijke doelwaarden te vergelijken met de distributie van voorspelde waarden voor een regressietaak.

De voorspellingen zijn binned en standaarddeviaties worden berekend voor foutbalken in een lijndiagram.

log_predictions(name, value, description='')

Parameters

Name Description
name
Vereist
str

De naam van de voorspellingen.

value
Vereist
str of dict

JSON met naam, versie en gegevenseigenschappen.

description
Vereist
str

Een optionele beschrijving van metrische gegevens.

Opmerkingen

Voorbeeld van een geldige JSON-waarde:


   {
       "schema_type": "predictions",
       "schema_version": "1.0.0",
       "data": {
           "bin_averages": [0.25, 0.75],
           "bin_errors": [0.013, 0.042],
           "bin_counts": [56, 34],
           "bin_edges": [0.0, 0.5, 1.0]
       }
   }

log_residuals

Log residuen in het artefactarchief.

Hiermee worden de gegevens die nodig zijn voor het weergeven van een histogram van residuen voor een regressietaak, in een logboek opgeslagen. De residuen worden voorspeld- werkelijk.

Er moet één rand meer zijn dan het aantal aantallen. Raadpleeg de documentatie over het numpy-histogram voor voorbeelden van het gebruik van aantallen en randen om een histogram weer te geven. https://docs.scipy.org/doc/numpy/reference/generated/numpy.histogram.html

log_residuals(name, value, description='')

Parameters

Name Description
name
Vereist
str

De naam van de residuen.

value
Vereist
str of dict

JSON met naam, versie en gegevenseigenschappen.

description
Vereist
str

Een optionele beschrijving van metrische gegevens.

Opmerkingen

Voorbeeld van een geldige JSON-waarde:


   {
       "schema_type": "residuals",
       "schema_version": "1.0.0",
       "data": {
           "bin_edges": [50, 100, 200, 300, 350],
           "bin_counts": [0.88, 20, 30, 50.99]
       }
   }

log_row

Registreer een rijmetriek bij de uitvoering met de opgegeven naam.

log_row(name, description=None, **kwargs)

Parameters

Name Description
name
Vereist
str

De naam van de metrische waarde.

description
str

Een optionele beschrijving van metrische gegevens.

standaardwaarde: None
kwargs
Vereist

Een woordenlijst met aanvullende parameters. In dit geval de kolommen van de metrische waarde.

Opmerkingen

Met behulp log_row van maakt u een tabelmetriek met kolommen zoals beschreven in kwargs. Elke benoemde parameter genereert een kolom met de opgegeven waarde. log_row kan eenmaal worden aangeroepen om een willekeurige tuple te registreren, of meerdere keren in een lus om een volledige tabel te genereren.


   citrus = ['orange', 'lemon', 'lime']
   sizes = [ 10, 7, 3]
   for index in range(len(citrus)):
       run.log_row("citrus", fruit = citrus[index], size=sizes[index])

log_table

Registreer een metrische tabelwaarde bij de uitvoering met de opgegeven naam.

log_table(name, value, description='')

Parameters

Name Description
name
Vereist
str

De naam van de metrische waarde.

value
Vereist

De tabelwaarde van de metrische waarde, een woordenlijst waarin sleutels kolommen zijn die naar de service moeten worden gepost.

description
Vereist
str

Een optionele beschrijving van metrische gegevens.

register_model

Een model registreren voor operationalisatie.

register_model(model_name, model_path=None, tags=None, properties=None, model_framework=None, model_framework_version=None, description=None, datasets=None, sample_input_dataset=None, sample_output_dataset=None, resource_configuration=None, **kwargs)

Parameters

Name Description
model_name
Vereist
str

De naam van het model.

model_path
str

Het relatieve cloudpad naar het model, bijvoorbeeld 'outputs/modelname'. Wanneer niet wordt opgegeven (Geen), model_name wordt gebruikt als het pad.

standaardwaarde: None
tags

Een woordenlijst met sleutelwaardetags die aan het model moeten worden toegewezen.

standaardwaarde: None
properties

Een woordenlijst met sleutelwaarde-eigenschappen die aan het model moeten worden toegewezen. Deze eigenschappen kunnen niet worden gewijzigd nadat het model is gemaakt, maar er kunnen nieuwe sleutelwaardeparen worden toegevoegd.

standaardwaarde: None
model_framework
str

Het framework van het model dat moet worden geregistreerd. Momenteel ondersteunde frameworks: TensorFlow, ScikitLearn, Onnx, Custom, Multi

standaardwaarde: None
model_framework_version
str

De frameworkversie van het geregistreerde model.

standaardwaarde: None
description
str

Een optionele beschrijving van het model.

standaardwaarde: None
datasets

Een lijst met tuples waarbij het eerste element de relatie tussen gegevensset en model beschrijft en het tweede element de gegevensset is.

standaardwaarde: None
sample_input_dataset

Optioneel. Voorbeeld van invoergegevensset voor het geregistreerde model

standaardwaarde: None
sample_output_dataset

Optioneel. Voorbeeld van uitvoergegevensset voor het geregistreerde model

standaardwaarde: None
resource_configuration

Optioneel. Resourceconfiguratie voor het uitvoeren van het geregistreerde model

standaardwaarde: None
kwargs
Vereist

Optionele parameters.

Retouren

Type Description

Het geregistreerde model.

Opmerkingen


   model = best_run.register_model(model_name = 'best_model', model_path = 'outputs/model.pkl')

remove_tags

Verwijder de lijst met veranderlijke tags tijdens deze uitvoering.

remove_tags(tags)

Parameters

Name Description
tags
Vereist

Een lijst met tags die moeten worden verwijderd.

Retouren

Type Description

De tags die zijn opgeslagen in het uitvoeringsobject

restore_snapshot

Een momentopname herstellen als een ZIP-bestand. Retourneert het pad naar het ZIP-bestand.

restore_snapshot(snapshot_id=None, path=None)

Parameters

Name Description
snapshot_id
str

De momentopname-id die moet worden hersteld. De meest recente wordt gebruikt als deze niet is opgegeven.

standaardwaarde: None
path
str

Het pad waar de gedownloade ZIP wordt opgeslagen.

standaardwaarde: None

Retouren

Type Description
str

Het pad.

set_tags

Voeg een set tags toe of wijzig deze tijdens de uitvoering. Tags die niet worden doorgegeven in de woordenlijst, blijven ongewijzigd.

U kunt ook eenvoudige tekenreekstags toevoegen. Wanneer deze tags als sleutels in de tagwoordenlijst worden weergegeven, hebben ze de waarde Geen. Zie Uitvoeringen taggen en zoeken voor meer informatie.

set_tags(tags)

Parameters

Name Description
tags
Vereist
dict[str] of str

De tags die zijn opgeslagen in het uitvoeringsobject.

start

Markeer de uitvoering als gestart.

Dit wordt meestal gebruikt in geavanceerde scenario's wanneer de uitvoering is gemaakt door een andere actor.

start()

submit_child

Dien een experiment in en retourneer de actieve onderliggende uitvoering.

submit_child(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, bijvoorbeeld {"tag": "value"}.

standaardwaarde: None
kwargs
Vereist

Aanvullende parameters die worden gebruikt in de functie submit voor configuraties.

Retouren

Type Description
Run

Een uitvoeringsobject.

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 onderliggend experiment vanaf uw lokale computer met behulp van ScriptRunConfig 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 = parent_run.submit_child(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 voor meer informatie over het configureren van een uitvoering submit.

tag

Tag de uitvoering met een tekenreekssleutel en optionele tekenreekswaarde.

tag(key, value=None)

Parameters

Name Description
key
Vereist
str

De tagsleutel

value
str

Een optionele waarde voor de tag

standaardwaarde: None

Opmerkingen

Tags en eigenschappen op een uitvoering zijn beide woordenlijsten van tekenreeks -> tekenreeks. Het verschil is veranderlijkheid: tags kunnen worden ingesteld, bijgewerkt en verwijderd, terwijl Eigenschappen alleen kunnen worden toegevoegd. Dit maakt Eigenschappen geschikter voor systeem-/werkstroomgerelateerde gedragtriggers, terwijl tags over het algemeen gebruikersgericht en betekenisvol zijn voor de gebruikers van het experiment.


   run = experiment.start_logging()
   run.tag('DeploymentCandidate')
   run.tag('modifiedBy', 'Master CI')
   run.tag('modifiedBy', 'release pipeline') # Careful, tags are mutable

   run.add_properties({'BuildId': os.environ.get('VSTS_BUILD_ID')}) # Properties are not

   tags = run.get_tags()
   # tags = { 'DeploymentCandidate': None, 'modifiedBy': 'release pipeline' }

take_snapshot

Sla een momentopname van het invoerbestand of de invoermap op.

take_snapshot(file_or_folder_path)

Parameters

Name Description
file_or_folder_path
Vereist
str

Het bestand of de map met de broncode uitvoeren.

Retouren

Type Description
str

Retourneert de momentopname-id.

Opmerkingen

Momentopnamen zijn bedoeld als de broncode die wordt gebruikt om de experimentuitvoering uit te voeren. Deze worden bij de uitvoering opgeslagen, zodat de proefversie van de uitvoering in de toekomst kan worden gerepliceerd.

Notitie

Momentopnamen worden automatisch gemaakt wanneer submit wordt aangeroepen. Normaal gesproken is dit de take_snapshot-methode alleen vereist voor interactieve uitvoeringen (notebook).

upload_file

Upload een bestand naar de uitvoeringsrecord.

upload_file(name, path_or_stream, datastore_name=None)

Parameters

Name Description
name
Vereist
str

De naam van het bestand dat u wilt uploaden.

path_or_stream
Vereist
str

Het relatieve lokale pad of de stroom naar het bestand dat u wilt uploaden.

datastore_name
Vereist
str

Optionele naam van gegevensarchief

Retouren

Type Description

Opmerkingen


   run = experiment.start_logging()
   run.upload_file(name='important_file', path_or_stream="path/on/disk/file.txt")

Notitie

Hiermee wordt het bestand automatisch vastgelegd in de opgegeven uitvoermap, die voor de meeste uitvoeringstypen standaard is ingesteld op './outputs'. Gebruik upload_file alleen als er extra bestanden moeten worden geüpload of als er geen uitvoermap is opgegeven.

upload_files

Bestanden uploaden naar de uitvoeringsrecord.

upload_files(names, paths, return_artifacts=False, timeout_seconds=None, datastore_name=None)

Parameters

Name Description
names
Vereist

De namen van de bestanden die moeten worden geüpload. Indien ingesteld, moeten paden ook worden ingesteld.

paths
Vereist

De relatieve lokale paden naar de bestanden die moeten worden geüpload. Indien ingesteld, zijn namen vereist.

return_artifacts
Vereist

Geeft aan dat een artefactobject moet worden geretourneerd voor elk bestand dat wordt geüpload.

timeout_seconds
Vereist
int

De time-out voor het uploaden van bestanden.

datastore_name
Vereist
str

Optionele naam van gegevensarchief

Opmerkingen

upload_files heeft hetzelfde effect als upload_file op afzonderlijke bestanden, maar er zijn prestatie- en resourcegebruiksvoordelen bij het gebruik van upload_files.


   import os

   run = experiment.start_logging()
   file_name_1 = 'important_file_1'
   file_name_2 = 'important_file_2'
   run.upload_files(names=[file_name_1, file_name_2],
                       paths=['path/on/disk/file_1.txt', 'other/path/on/disk/file_2.txt'])

   run.download_file(file_name_1, 'file_1.txt')

   os.mkdir("path")  # The path must exist
   run.download_file(file_name_2, 'path/file_2.txt')

Notitie

Hiermee worden automatisch bestanden vastgelegd in de opgegeven uitvoermap, die standaard './outputs' is voor de meeste uitvoeringstypen. Gebruik upload_files alleen als er extra bestanden moeten worden geüpload of als er geen uitvoermap is opgegeven.

upload_folder

Upload de opgegeven map naar de opgegeven voorvoegselnaam.

upload_folder(name, path, datastore_name=None)

Parameters

Name Description
name
Vereist
str

De naam van de map met bestanden die u wilt uploaden.

folder
Vereist
str

Het relatieve lokale pad naar de map die u wilt uploaden.

datastore_name
Vereist
str

Naam van optionele gegevensopslag

Opmerkingen


   run = experiment.start_logging()
   run.upload_folder(name='important_files', path='path/on/disk')

   run.download_file('important_files/existing_file.txt', 'local_file.txt')

Notitie

Hiermee worden automatisch bestanden vastgelegd in de opgegeven uitvoermap, die standaard './outputs' is voor de meeste uitvoeringstypen. Gebruik upload_folder alleen als er extra bestanden moeten worden geüpload of als er geen uitvoermap is opgegeven.

wait_for_completion

Wacht tot de uitvoering is voltooid. Retourneert het statusobject na de wachttijd.

wait_for_completion(show_output=False, wait_post_processing=False, raise_on_error=True)

Parameters

Name Description
show_output

Geeft aan of de uitvoer van de uitvoering op sys.stdout moet worden weergegeven.

standaardwaarde: False
wait_post_processing

Geeft aan of moet worden gewacht tot de naverwerking is voltooid nadat de uitvoering is voltooid.

standaardwaarde: False
raise_on_error

Geeft aan of er een fout optreedt wanneer de uitvoering de status Mislukt heeft.

standaardwaarde: True

Retouren

Type Description

Het statusobject.

Kenmerken

description

Retourneer de beschrijving van de uitvoering.

De optionele beschrijving van de uitvoering is een door de gebruiker opgegeven tekenreeks die handig is voor het beschrijven van een uitvoering.

Retouren

Type Description
str

De beschrijving van de uitvoering.

display_name

Retourneer de weergavenaam van de uitvoering.

De optionele weergavenaam van de uitvoering is een door de gebruiker opgegeven tekenreeks die nuttig is voor latere identificatie van de uitvoering.

Retouren

Type Description
str

De weergavenaam van de uitvoering.

experiment

Experiment ophalen met de uitvoering.

Retouren

Type Description

Hiermee wordt het experiment opgehaald dat overeenkomt met de uitvoering.

id

Haal de uitvoerings-id op.

De id van de uitvoering is een id die uniek is in het betreffende experiment.

Retouren

Type Description
str

De uitvoerings-id.

name

AFGEKEURD. Gebruik display_name.

De optionele naam van de uitvoering is een door de gebruiker opgegeven tekenreeks die nuttig is voor latere identificatie van de uitvoering.

Retouren

Type Description
str

De uitvoerings-id.

number

Haal het uitvoeringsnummer op.

Een monotonisch toenemend getal dat de volgorde van uitvoeringen binnen een experiment aangeeft.

Retouren

Type Description
int

Het uitvoeringsnummer.

parent

Haal de bovenliggende uitvoering voor deze uitvoering op uit de service.

Uitvoeringen kunnen een optioneel bovenliggend item hebben, wat resulteert in een potentiële structuurhiërarchie van uitvoeringen. Als u metrische gegevens wilt vastleggen in een bovenliggende uitvoering, gebruikt u de log methode van het bovenliggende object, run.parent.log()bijvoorbeeld .

Retouren

Type Description
Run

De bovenliggende uitvoering of Geen als er geen is ingesteld.

properties

Retourneer de onveranderbare eigenschappen van deze uitvoering.

Retouren

Type Description
dict[str],
str

De lokaal opgeslagen eigenschappen van de uitvoering.

Opmerkingen

Eigenschappen omvatten onveranderbare door het systeem gegenereerde informatie, zoals duur, datum van uitvoering, gebruiker, enzovoort.

status

Retourneer de status van het uitvoeringsobject.

tags

Retourneer de set veranderlijke tags voor deze uitvoering.

Retouren

Type Description

De tags die zijn opgeslagen in het run-object.

type

Haal het uitvoeringstype op.

Geeft aan hoe de uitvoering is gemaakt of geconfigureerd.

Retouren

Type Description
str

Het uitvoeringstype.