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

experiment
Experiment
Vereist

Het bevattende experiment.

run_id
str
Vereist

De id voor de uitvoering.

outputs
str
standaardwaarde: None

De uitvoer die moet worden bijgehouden.

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

Alleen intern gebruik.

kwargs
dict
Vereist

Een woordenlijst met aanvullende configuratieparameters.

experiment
Experiment
Vereist

Het bevattende experiment.

run_id
str
Vereist

De id voor de uitvoering.

outputs
str
Vereist

De uitvoer die moet worden bijgehouden.

kwargs
dict
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 taak is gekoppeld aan een ingestelde cancel_uri veld, beëindigt u ook die taak.

child_run

Maak een onderliggende uitvoering.

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 waarden die worden geretourneerd, zijn 'Wordt uitgevoerd', 'Voltooid' en 'Mislukt'.

get_submitted_run

AFGEKEURD. Gebruik get_context.

Haal de verzonden uitvoering voor dit experiment op.

get_tags

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

list

Een lijst met uitvoeringen ophalen 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 om meerdere typen lijndiagrammen te produceren die continu variëren in 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 de werkelijke positieve en fout-positieve percentages op bij veel verschillende waarschijnlijkheidsdrempels. De nauwkeurigheidstabel slaat het onbewerkte aantal terecht-positieven, fout-positieven, terecht-negatieven en fout-negatieven op bij veel waarschijnlijkheidsdrempels.

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

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

De percentieldrempels worden verdeeld op basis van de verdeling van de voorspelde waarschijnlijkheden. Elke drempelwaarde komt overeen met het percentiel van de gegevens bij een waarschijnlijkheidsdrempel. Als NUM_POINTS bijvoorbeeld 5 is, is de eerste drempelwaarde op het 0e percentiel, de tweede op het 25e percentiel, de derde op het 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 strategie voor één versus rest. 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 kansruimte (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 opgeslagen. 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 waarde voor een installatiekopieën registreren bij 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 worden binned en standaarddeviaties worden berekend voor foutbalken in een lijndiagram.

log_residuals

Log residuen naar het artefactarchief.

Hiermee registreert u de gegevens die nodig zijn om een histogram van residuen voor een regressietaak weer te geven. De residuen worden voorspeld - werkelijk.

Er moet één rand meer zijn dan het aantal tellingen. Raadpleeg de documentatie voor numpy-histogrammen 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 metrische rijwaarde 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 op deze uitvoering.

restore_snapshot

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

set_tags

Voeg een set tags toe aan de uitvoering of wijzig deze. Tags die niet zijn 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

Verzend een experiment 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

properties
dict
Vereist

De verborgen eigenschappen die zijn opgeslagen in het uitvoeringsobject.

add_type_provider

Uitbreidbaarheidshook voor aangepaste uitvoeringstypen die zijn opgeslagen in Uitvoeringsgeschiedenis.

static add_type_provider(runtype, run_factory)

Parameters

runtype
str
Vereist

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

run_factory
<xref:function>
Vereist

Een functie met handtekening (Experiment, RunDto):> uitvoeren die moet worden aangeroepen bij het weergeven van uitvoeringen.

cancel

Markeer de uitvoering als geannuleerd.

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

cancel()

child_run

Maak een onderliggende uitvoering.

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

Parameters

name
str
standaardwaarde: None

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

run_id
str
standaardwaarde: None

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

outputs
str
standaardwaarde: None

Optionele uitvoermap die voor het onderliggende item moet worden bijgehouden.

Retouren

Het onderliggende item wordt uitgevoerd.

Retourtype

Run

Opmerkingen

Dit wordt gebruikt om een deel van een run in een subsectie te isoleren. 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

Een lijst met verwijderde bestanden.

Retourtype

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

_set_status
bool
standaardwaarde: True

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

create_children

Maak een of meer onderliggende uitvoeringen.

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

Parameters

count
int
standaardwaarde: None

Een optioneel aantal onderliggende items dat moet worden gemaakt.

tag_key
str
standaardwaarde: None

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

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

De lijst met onderliggende uitvoeringen.

Retourtype

Opmerkingen

count Parameter OF parameters tag_key EN 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
str
Vereist

De naam van het artefact dat moet worden gedownload.

output_file_path
str
Vereist

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

prefix
str
Vereist

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

output_directory
str
Vereist

Een optionele map die door alle artefactpaden als voorvoegsel wordt gebruikt.

output_paths
[str]
Vereist

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

batch_size
int
Vereist

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

append_prefix
bool
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
int
Vereist

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

error_details
str of BaseException
standaardwaarde: None

Optionele details van de fout.

error_code
str
standaardwaarde: None

Optionele foutcode van de fout voor de foutclassificatie.

_set_status
bool
standaardwaarde: True

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

flush

Wacht totdat de taakwachtrij is verwerkt.

flush(timeout_seconds=300)

Parameters

timeout_seconds
int
standaardwaarde: 300

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

get

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

static get(workspace, run_id)

Parameters

workspace
Workspace
Vereist

De werkruimte met daarin.

run_id
string
Vereist

De uitvoerings-id.

Retouren

De verzonden uitvoering.

Retourtype

Run

get_all_logs

Download alle logboeken voor de uitvoering naar een map.

get_all_logs(destination=None)

Parameters

destination
str
standaardwaarde: None

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.

Retouren

Een lijst met namen van gedownloade logboeken.

Retourtype

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

recursive
bool
standaardwaarde: False

Geeft aan of alle afstammelingen moeten worden herhaald.

tags
str of dict
standaardwaarde: None

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

properties
str of dict
standaardwaarde: None

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

type
str
standaardwaarde: None

Indien opgegeven, retourneert uitvoeringen die overeenkomen met dit type.

status
str
standaardwaarde: None

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

_rehydrate_runs
bool
standaardwaarde: True

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

Retouren

Een lijst met Run objecten.

Retourtype

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

cls
Vereist

Geeft de klassemethode aan.

allow_offline
bool
standaardwaarde: True

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.

kwargs
dict
Vereist

Een woordenlijst met aanvullende parameters.

used_for_context_manager
standaardwaarde: False

Retouren

De verzonden uitvoering.

Retourtype

Run

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

De meest recente status en details

Retourtype

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

De details voor de uitvoering retourneren

Retourtype

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

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

Retourtype

get_environment

Haal de omgevingsdefinitie op die door deze uitvoering is gebruikt.

get_environment()

Retouren

Retourneer het omgevingsobject.

Retourtype

get_file_names

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

get_file_names()

Retouren

De lijst met paden voor bestaande artefacten

Retourtype

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
str
standaardwaarde: None

De naam van de metrische waarde.

recursive
bool
standaardwaarde: False

Geeft aan of alle afstammelingen moeten worden herhaald.

run_type
str
standaardwaarde: None
populate
bool
standaardwaarde: False

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

Retouren

Een woordenlijst met de metrische gegevens van gebruikers.

Retourtype

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

De eigenschappen van de uitvoering.

Retourtype

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
str
Vereist

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

Retouren

De geheime waarde.

Retourtype

str

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

secrets
list[str]
Vereist

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

Retouren

Retourneert een woordenlijst met gevonden en niet-gevonden geheimen.

Retourtype

dict[<xref:str: str>]

get_snapshot_id

Haal de meest recente momentopname-id op.

get_snapshot_id()

Retouren

De meest recente momentopname-id.

Retourtype

str

get_status

Haal de meest recente status van de uitvoering op.

Veelvoorkomende waarden die worden geretourneerd, zijn 'Wordt uitgevoerd', 'Voltooid' en 'Mislukt'.

get_status()

Retouren

De meest recente status.

Retourtype

str

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 heeft de taak bijvoorbeeld de status In wachtrij

    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 waarom.

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

  • Niet reagerend: voor uitvoeringen waarvoor Heartbeats is 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 verzonden uitvoering voor dit experiment op.

get_submitted_run(**kwargs)

Retouren

De verzonden uitvoering.

Retourtype

Run

get_tags

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

get_tags()

Retouren

De tags die zijn opgeslagen in het run-object.

Retourtype

list

Een lijst met uitvoeringen ophalen 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

experiment
Experiment
Vereist

Het bevattende experiment.

type
str
standaardwaarde: None

Indien opgegeven, worden uitvoeringen geretourneerd die overeenkomen met het opgegeven type.

tags
str of dict
standaardwaarde: None

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

properties
str of dict
standaardwaarde: None

Indien opgegeven, worden uitvoeringen geretourneerd die overeenkomen met de opgegeven 'eigenschap' of {'eigenschap': 'waarde'}.

status
str
standaardwaarde: None

Indien opgegeven, retourneert uitvoeringen met de status opgegeven 'status'.

include_children
bool
standaardwaarde: False

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

_rehydrate_runs
bool
standaardwaarde: True

Als deze optie is ingesteld op True (standaard), wordt de geregistreerde provider gebruikt om een object voor dat type opnieuw te bevestigen in plaats van de basisuitvoering.

Retouren

Een lijst met uitvoeringen.

Retourtype

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

compute
ComputeTarget
Vereist

De bevattende rekenkracht.

type
str
standaardwaarde: None

Indien opgegeven, worden uitvoeringen geretourneerd die overeenkomen met het opgegeven type.

tags
str of dict
standaardwaarde: None

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

properties
str of dict
standaardwaarde: None

Indien opgegeven, worden uitvoeringen geretourneerd die overeenkomen met de opgegeven 'eigenschap' of {'eigenschap': 'waarde'}.

status
str
standaardwaarde: None

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

Retouren

een generator van ~_restclient.models.RunDto

Retourtype

<xref:builtin.generator>

log

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

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

Parameters

name
str
Vereist

De naam van de metrische waarde.

value
Vereist

De waarde die moet worden geboekt bij de service.

description
str
Vereist

Een optionele beschrijving van metrische gegevens.

step
int
standaardwaarde: None

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

Opmerkingen

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. 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 om meerdere typen lijndiagrammen te produceren die continu variëren in 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 de werkelijke positieve en fout-positieve percentages op bij veel verschillende waarschijnlijkheidsdrempels. De nauwkeurigheidstabel slaat het onbewerkte aantal terecht-positieven, fout-positieven, terecht-negatieven en fout-negatieven op bij veel waarschijnlijkheidsdrempels.

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

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

De percentieldrempels worden verdeeld op basis van de verdeling van de voorspelde waarschijnlijkheden. Elke drempelwaarde komt overeen met het percentiel van de gegevens bij een waarschijnlijkheidsdrempel. Als NUM_POINTS bijvoorbeeld 5 is, is de eerste drempelwaarde op het 0e percentiel, de tweede op het 25e percentiel, de derde op het 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 strategie voor één versus rest. 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 kansruimte (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
str
Vereist

De naam van de nauwkeurigheidstabel.

value
str of dict
Vereist

JSON met naam, versie en gegevenseigenschappen.

description
str
Vereist

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 opgeslagen. 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
str
Vereist

De naam van de verwarringsmatrix.

value
str of dict
Vereist

JSON met naam, versie en gegevenseigenschappen.

description
str
Vereist

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 waarde voor een installatiekopieën registreren bij de uitvoeringsrecord.

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

Parameters

name
str
Vereist

De naam van de metrische waarde.

path
str
Vereist

Het pad of de stroom van de afbeelding.

plot
<xref:matplotlib.pyplot>
Vereist

De plot om te registreren als een afbeelding.

description
str
Vereist

Een optionele beschrijving van metrische gegevens.

Opmerkingen

Gebruik deze methode om een afbeeldingsbestand of een matplotlib-plot vast te leggen bij de uitvoering. Deze afbeeldingen 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
str
Vereist

De naam van de metrische waarde.

value
list
Vereist

De waarden van de metrische waarde.

description
str
Vereist

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 worden binned en standaarddeviaties worden berekend voor foutbalken in een lijndiagram.

log_predictions(name, value, description='')

Parameters

name
str
Vereist

De naam van de voorspellingen.

value
str of dict
Vereist

JSON met naam, versie en gegevenseigenschappen.

description
str
Vereist

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 naar het artefactarchief.

Hiermee registreert u de gegevens die nodig zijn om een histogram van residuen voor een regressietaak weer te geven. De residuen worden voorspeld - werkelijk.

Er moet één rand meer zijn dan het aantal tellingen. Raadpleeg de documentatie voor numpy-histogrammen 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
str
Vereist

De naam van de residuen.

value
str of dict
Vereist

JSON met naam, versie en gegevenseigenschappen.

description
str
Vereist

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 metrische rijwaarde bij de uitvoering met de opgegeven naam.

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

Parameters

name
str
Vereist

De naam van de metrische waarde.

description
str
standaardwaarde: None

Een optionele beschrijving van metrische gegevens.

kwargs
dict
Vereist

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

Opmerkingen

Met behulp log_row van maakt u een metrische tabelwaarde 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
str
Vereist

De naam van de metrische waarde.

value
dict
Vereist

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

description
str
Vereist

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

model_name
str
Vereist

De naam van het model.

model_path
str
standaardwaarde: None

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

tags
dict[str, str]
standaardwaarde: None

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

properties
dict[str, str]
standaardwaarde: None

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 wel nieuwe sleutelwaardeparen worden toegevoegd.

model_framework
str
standaardwaarde: None

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

model_framework_version
str
standaardwaarde: None

De frameworkversie van het geregistreerde model.

description
str
standaardwaarde: None

Een optionele beschrijving van het model.

datasets
list[(str, AbstractDataset)]
standaardwaarde: None

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

sample_input_dataset
AbstractDataset
standaardwaarde: None

Optioneel. Voorbeeld van invoergegevensset voor het geregistreerde model

sample_output_dataset
AbstractDataset
standaardwaarde: None

Optioneel. Voorbeeld van uitvoergegevensset voor het geregistreerde model

resource_configuration
ResourceConfiguration
standaardwaarde: None

Optioneel. Resourceconfiguratie voor het uitvoeren van het geregistreerde model

kwargs
dict
Vereist

Optionele parameters.

Retouren

Het geregistreerde model.

Retourtype

Opmerkingen


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

remove_tags

Verwijder de lijst met veranderlijke tags op deze uitvoering.

remove_tags(tags)

Parameters

tags
list
Vereist

Een lijst met tags die u wilt verwijderen.

Retouren

De tags die zijn opgeslagen in het run-object

restore_snapshot

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

restore_snapshot(snapshot_id=None, path=None)

Parameters

snapshot_id
str
standaardwaarde: None

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

path
str
standaardwaarde: None

Het pad waar de gedownloade ZIP is opgeslagen.

Retouren

Het pad.

Retourtype

str

set_tags

Voeg een set tags toe aan de uitvoering of wijzig deze. Tags die niet zijn 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

tags
dict[str] of str
Vereist

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

Verzend een experiment en retourneer de actieve onderliggende uitvoering.

submit_child(config, tags=None, **kwargs)

Parameters

config
object
Vereist

De configuratie die moet worden verzonden.

tags
dict
standaardwaarde: None

Tags die moeten worden toegevoegd aan de ingediende uitvoering, bijvoorbeeld {"tag": "value"}.

kwargs
dict
Vereist

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

Retouren

Een uitvoeringsobject.

Retourtype

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 onderliggend experiment vanaf uw lokale computer is ScriptRunConfig 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

key
str
Vereist

De tagsleutel

value
str
standaardwaarde: None

Een optionele waarde voor de tag

Opmerkingen

Tags en eigenschappen op een uitvoering zijn beide woordenlijsten van tekenreeks -> tekenreeks. Het verschil is de veranderlijkheid: tags kunnen worden ingesteld, bijgewerkt en verwijderd, terwijl Eigenschappen alleen kunnen worden toegevoegd. Hierdoor zijn Eigenschappen beter geschikt voor systeem-/werkstroomgerelateerde gedragstriggers, 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

file_or_folder_path
str
Vereist

Het bestand of de map met de broncode van de uitvoering.

Retouren

Retourneert de momentopname-id.

Retourtype

str

Opmerkingen

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

Notitie

Momentopnamen worden automatisch gemaakt wanneer submit wordt aangeroepen. Normaal gesproken is de methode take_snapshot 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
str
Vereist

De naam van het bestand dat u wilt uploaden.

path_or_stream
str
Vereist

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

datastore_name
str
Vereist

Naam van optionele gegevensopslag

Retourtype

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 standaard './outputs' is voor de meeste uitvoeringstypen. 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

names
list
Vereist

De namen van de bestanden die moeten worden geüpload. Als deze optie is ingesteld, moeten paden ook worden ingesteld.

paths
list
Vereist

De relatieve lokale paden naar de bestanden die moeten worden geüpload. Als deze optie is ingesteld, zijn namen vereist.

return_artifacts
bool
Vereist

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

timeout_seconds
int
Vereist

De time-out voor het uploaden van bestanden.

datastore_name
str
Vereist

Naam van optionele gegevensopslag

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
str
Vereist

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

folder
str
Vereist

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

datastore_name
str
Vereist

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

show_output
bool
standaardwaarde: False

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

wait_post_processing
bool
standaardwaarde: False

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

raise_on_error
bool
standaardwaarde: True

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

Retouren

Het statusobject.

Retourtype

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

De beschrijving van de uitvoering.

Retourtype

str

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

De weergavenaam van de uitvoering.

Retourtype

str

experiment

Experiment met de uitvoering ophalen.

Retouren

Hiermee wordt het experiment opgehaald dat overeenkomt met de uitvoering.

Retourtype

id

Haal de uitvoerings-id op.

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

Retouren

De uitvoerings-id.

Retourtype

str

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

De uitvoerings-id.

Retourtype

str

number

Haal het uitvoeringsnummer op.

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

Retouren

Het uitvoeringsnummer.

Retourtype

int

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 bij een bovenliggende uitvoering, gebruikt u de log methode van het bovenliggende object, run.parent.log()bijvoorbeeld .

Retouren

De bovenliggende uitvoering of Geen als er geen is ingesteld.

Retourtype

Run

properties

Retourneer de onveranderbare eigenschappen van deze uitvoering.

Retouren

De lokaal opgeslagen eigenschappen van de uitvoering.

Retourtype

dict[str],
str

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

De tags die zijn opgeslagen in het uitvoeringsobject.

Retourtype

type

Uitvoeringstype ophalen.

Geeft aan hoe de uitvoering is gemaakt of geconfigureerd.

Retouren

Het uitvoeringstype.

Retourtype

str