Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
VAN TOEPASSING OP:
Azure CLI ml-extensie v2 (huidige)
In dit artikel leert u hoe u machine learning-pijplijnen maakt en uitvoert met behulp van de Azure Machine Learning-studio en -onderdelen. U kunt pijplijnen maken zonder onderdelen te gebruiken, maar onderdelen bieden betere flexibiliteit en hergebruik. Azure Machine Learning-pijplijnen kunnen worden gedefinieerd in YAML en worden uitgevoerd vanuit de Azure CLI, geschreven in Python of samengesteld in Azure Machine Learning Studio Designer met een gebruikersinterface voor slepen en neerzetten. Dit artikel is gericht op de gebruikersinterface van Azure Machine Learning Studio Designer.
Vereisten
Als u geen Azure-abonnement hebt, maakt u een gratis account voordat u begint. Probeer de gratis of betaalde versie van Azure Machine Learning.
Een Azure Machine Learning-werkruimte. Werkruimtebronnen maken.
Installeer en stel de Azure CLI-extensie voor Machine Learning in.
Kloon de opslagplaats met voorbeelden:
git clone https://github.com/Azure/azureml-examples --depth 1 cd azureml-examples/cli/jobs/pipelines-with-components/
Notitie
Designer ondersteunt twee typen onderdelen, klassieke vooraf gebouwde onderdelen (v1) en aangepaste onderdelen (v2). Deze twee typen onderdelen zijn NIET compatibel.
Klassieke vooraf gebouwde onderdelen bieden voornamelijk vooraf gebouwde onderdelen voor gegevensverwerking en traditionele machine learning-taken, zoals regressie en classificatie. Klassieke vooraf gebouwde onderdelen worden nog steeds ondersteund, maar er zijn geen nieuwe onderdelen toegevoegd. Daarnaast biedt de implementatie van klassieke vooraf samengestelde onderdelen (v1) geen ondersteuning voor beheerde online-eindpunten (v2).
Met aangepaste onderdelen kunt u uw eigen code verpakken als onderdeel. Het biedt ondersteuning voor het delen van onderdelen in werkruimten en naadloze creatie in studio-, CLI v2- en SDK v2-interfaces.
Voor nieuwe projecten raden we u ten zeerste aan aangepaste onderdelen te gebruiken, die compatibel is met Azure Machine Learning V2 en nieuwe updates ontvangt.
Dit artikel is van toepassing op aangepaste onderdelen.
Een onderdeel registreren in uw werkruimte
Als u een pijplijn wilt bouwen met behulp van onderdelen in de gebruikersinterface van Designer, moet u eerst onderdelen registreren bij uw werkruimte. U kunt de gebruikersinterface, Azure CLI of de SDK gebruiken om onderdelen te registreren bij uw werkruimte, zodat u het onderdeel in de werkruimte kunt delen en opnieuw kunt gebruiken. Geregistreerde onderdelen ondersteunen automatische versiebeheer, zodat u het onderdeel kunt bijwerken, maar ervoor zorgen dat pijplijnen waarvoor een oudere versie is vereist, blijven werken.
In het volgende voorbeeld wordt de gebruikersinterface gebruikt om onderdelen te registreren. De bronbestanden van het onderdeel bevinden zich in de cli/jobs/pipelines-with-components/basics/1b_e2e_registered_components map van de azureml-examples opslagplaats. U moet de opslagplaats klonen.
Navigeer in uw Azure Machine Learning-werkruimte naar de pagina Onderdelen en selecteer Nieuw onderdeel. Het uiterlijk van de pagina Onderdelen verschilt, afhankelijk van of u eerder onderdelen hebt gemaakt.
In dit voorbeeld wordt gebruikgemaakt
train.ymlvan de map 1b_e2e_registered_components. Het YAML-bestand definieert de naam, het type, de interface, inclusief invoer en uitvoer, code, omgeving en opdracht van dit onderdeel. De code van dit onderdeel (train.py) bevindt zich in./train_srcde map. Deze code beschrijft de uitvoeringslogica van dit onderdeel. Zie de naslaginformatie over het YAML-schema van het opdrachtonderdeel voor meer informatie over het onderdeelschema.Notitie
Voor het registreren van onderdelen in de gebruikersinterface, gedefinieerd in het YAML-onderdeelbestand,
codekan alleen verwijzen naar de huidige map waar het YAML-bestand zich bevindt of de submappen. Omdat de gebruikersinterface de oudermap niet kan herkennen, kunt u../niet specificeren.additional_includeskan alleen verwijzen naar de huidige map of submap.Momenteel biedt de gebruikersinterface alleen ondersteuning voor het registreren van onderdelen met
commandhet type.Selecteer Map en blader vervolgens naar de
1b_e2e_registered_componentsmap die u wilt uploaden.Selecteer
train.ymluit de Yaml-bestandsnaam.Selecteer Volgende en bevestig vervolgens de details van dit onderdeel. Nadat u hebt bevestigd, selecteert u Maken om het registratieproces te voltooien.
Herhaal de vorige stappen om het onderdeel Score en Eval te registreren met
score.ymleneval.yml.Nadat u de drie onderdelen hebt geregistreerd, kunt u uw onderdelen zien in de gebruikersinterface van studio.
Pijplijn maken met behulp van een geregistreerd onderdeel
Maak een nieuwe pijplijn in Designer. Selecteer de optie Aangepast .
Selecteer het potloodpictogram om de pijplijn een betekenisvolle naam te geven.
In de assetbibliotheek Designer ziet u de tabbladen Gegevens, Model en Onderdelen . Selecteer Onderdelen. U kunt de onderdelen zien die zijn geregistreerd in de vorige sectie. Als er te veel onderdelen zijn, kunt u zoeken met de naam van het onderdeel.
Zoek de geregistreerde train-, score- en eval-componenten in de vorige sectie en sleep ze naar het canvas. Designer gebruikt standaard de standaardversie van het onderdeel. Als u wilt overschakelen naar een specifieke versie, dubbelklikt u op het onderdeel om het onderdeelvenster te openen.
In dit voorbeeld gebruikt u de voorbeeldgegevens in de gegevensmap. Als u gegevens in uw werkruimte wilt registreren, selecteert u het pictogram 'Toevoegen' in de activabibliotheek en volgt u vervolgens de wizard om ze te registreren. Het gegevenstype moet worden
uri_folderafgestemd op de definitie van het trainonderdeel.Sleep de gegevens naar het canvas. Uw pijplijn moet eruitzien als in de volgende schermopname.
Verbind de gegevens en onderdelen door verbindingen in het canvas te slepen.
Dubbelklik op één onderdeel. U ziet een rechterdeelvenster waarin u het onderdeel kunt configureren.
Voor onderdelen met primitieve typeinvoer, zoals getal, geheel getal, tekenreeks en booleaanse waarde, kunt u waarden van dergelijke invoer wijzigen in het detailvenster van het onderdeel, onder de sectie Invoer .
U kunt ook de uitvoerinstellingen wijzigen (waar de uitvoer van het onderdeel moet worden opgeslagen) en instellingen uitvoeren (rekendoel om dit onderdeel uit te voeren) in het rechterdeelvenster.
Bevorder de max_epocs invoer van de train component als invoer op pipelineniveau. Hierdoor kunt u elke keer een andere waarde aan deze invoer toewijzen voordat u de pijplijn verzendt.
Notitie
Aangepaste onderdelen en de klassieke vooraf samengestelde ontwerponderdelen kunnen niet samen worden gebruikt.
Pijplijn verzenden
Als u de pijplijn wilt verzenden, selecteert u Configureren en verzenden.
Vervolgens ziet u een stapsgewijze wizard. Volg de wizard om de pijplijntaak te verzenden.
In de basisstap kunt u het experiment, de weergavenaam van de taak, de taakbeschrijving, enzovoort configureren.
In de stap Invoer en uitvoer kunt u de invoer/uitvoer configureren die naar pijplijnniveau worden gepromoveerd. In de vorige stap hebben we de max_epocs van het trainingsonderdeel gepromoveerd naar pijplijninvoer, dus u moet hier waarde kunnen zien en toewijzen aan max_epocs .
In runtime-instellingen kunt u het standaardgegevensarchief en de standaard rekenkracht van de pijplijn configureren. Dit is de standaardgegevensopslag/compute voor alle onderdelen in de pijplijn. Als u echter expliciet een ander reken- of gegevensarchief instelt voor een onderdeel, respecteert het systeem de instelling op onderdeelniveau. Anders wordt de standaardwaarde voor de pijplijn gebruikt.
De stap Beoordelen en verzenden is de laatste stap om alle configuraties te controleren voordat u het verzendt. De wizard onthoudt de configuratie van uw laatste keer als u de pijplijn ooit verzendt.
Nadat u de pijplijntaak hebt verzonden, ziet u bovenaan een bericht met een koppeling naar de taakdetails. U kunt deze koppeling selecteren om de taakdetails te bekijken.
Identiteit opgeven in pijplijntaak
Wanneer u een pipelinejob indient, kunt u de identiteit opgeven om toegang te krijgen tot de gegevens onder Run settings. De standaardidentiteit is AMLToken, die geen identiteit gebruikt. Een pijplijn kan ook UserIdentity en Managed ondersteunen. De UserIdentityidentiteit van de taak-inzender wordt gebruikt om toegang te krijgen tot invoergegevens en het resultaat naar de uitvoermap te schrijven. Als u opgeeft Managed, gebruikt het systeem de beheerde identiteit voor toegang tot de invoergegevens en schrijft het resultaat naar de uitvoermap.
Verwante inhoud
- Gebruik deze Jupyter-notebooks op GitHub om machine learning-pijplijnen verder te verkennen.
- Meer informatie over het gebruik van CLI v2 voor het maken van pijplijnen met behulp van onderdelen.
- Meer informatie over het gebruik van SDK v2 voor het maken van pijplijnen met behulp van onderdelen.