Share via


ML-modellen trainen met de AutoML-gebruikersinterface van Azure Databricks

In dit artikel wordt beschreven hoe u een machine learning-model traint met behulp van AutoML en de Gebruikersinterface van Databricks Machine Learning. De AutoML-gebruikersinterface begeleidt u bij het trainen van een classificatie-, regressie- of prognosemodel op een gegevensset.

Toegang tot de gebruikersinterface:

  1. Selecteer nieuw > AutoML-experiment in de zijbalk.

    U kunt ook een nieuw AutoML-experiment maken op de pagina Experimenten.

    De pagina AutoML-experiment configureren wordt weergegeven. Op deze pagina configureert u het AutoML-proces, waarbij u de gegevensset, het probleemtype, de doelkolom of de labelkolom opgeeft om te voorspellen, metrische gegevens te gebruiken om de uitvoeringen van het experiment te evalueren en te beoordelen en te stoppen.

Vereisten

Zie Vereisten voor AutoML-experimenten.

Problemen met classificatie of regressie instellen

U kunt een classificatie- of regressieprobleem instellen met behulp van de AutoML-gebruikersinterface met de volgende stappen:

  1. Selecteer in het veld Compute een cluster met Databricks Runtime ML.

  2. Selecteer regressie of classificatie in de vervolgkeuzelijst ml-probleemtype. Als u een doorlopende numerieke waarde wilt voorspellen voor elke waarneming, zoals jaarinkomen, selecteert u regressie. Als u elke observatie probeert toe te wijzen aan een van een afzonderlijke set klassen, zoals een goed kredietrisico of een slecht kredietrisico, selecteert u classificatie.

  3. Selecteer Bladeren onder Gegevensset.

  4. Navigeer naar de tabel die u wilt gebruiken en klik op Selecteren. Het tabelschema wordt weergegeven.

    Voor alleen classificatie- en regressieproblemen kunt u opgeven welke kolommen moeten worden opgenomen in de training en aangepaste imputatiemethoden selecteren.

  5. Klik in het veld Voorspellingsdoel . Er wordt een vervolgkeuzelijst weergegeven met de kolommen die in het schema worden weergegeven. Selecteer de kolom die u wilt voorspellen in het model.

  6. In het veld Experimentnaam wordt de standaardnaam weergegeven. Als u deze wilt wijzigen, typt u de nieuwe naam in het veld.

U kunt ook het volgende doen:

Problemen met prognoses instellen

U kunt een prognoseprobleem instellen met behulp van de AutoML-gebruikersinterface met de volgende stappen:

  1. Selecteer in het veld Compute een cluster met Databricks Runtime 10.0 ML of hoger.
  2. Selecteer Prognose in de vervolgkeuzelijst ml-probleemtype.
  3. Klik onder Gegevensset op Bladeren. Navigeer naar de tabel die u wilt gebruiken en klik op Selecteren. Het tabelschema wordt weergegeven.
  4. Klik in het veld Voorspellingsdoel . Er wordt een vervolgkeuzelijst weergegeven met de kolommen die in het schema worden weergegeven. Selecteer de kolom die u wilt voorspellen in het model.
  5. Klik in het veld Tijdkolom . Er wordt een vervolgkeuzelijst weergegeven met de gegevenssetkolommen van het type timestamp of date. Selecteer de kolom met de tijdsperioden voor de tijdreeks.
  6. Selecteer voor prognoses met meerdere reeksen de kolommen die de afzonderlijke tijdreeks in de vervolgkeuzelijst Tijdreeks-id's identificeren. AutoML groepeerde de gegevens op deze kolommen als verschillende tijdreeksen en traint een model voor elke reeks afzonderlijk. Als u dit veld leeg laat, gaat AutoML ervan uit dat de gegevensset één tijdreeks bevat.
  7. Geef in de velden Prognose horizon en frequentie het aantal perioden in de toekomst op waarvoor AutoML geraamde waarden moet berekenen. Voer in het linkervak het gehele aantal perioden in dat moet worden voorspeld. Selecteer de eenheden in het rechtervak. .. opmerking:: als u Auto-ARIMA wilt gebruiken, moet de tijdreeks een normale frequentie hebben (dat wil gezegd, het interval tussen twee punten moet hetzelfde zijn gedurende de tijdreeks). De frequentie moet overeenkomen met de frequentie-eenheid die is opgegeven in de API-aanroep of in de AutoML-gebruikersinterface. AutoML verwerkt ontbrekende tijdstappen door deze waarden in te vullen met de vorige waarde.
  8. In Databricks Runtime 11.3 LTS ML en hoger kunt u voorspellingsresultaten opslaan. Geef hiervoor een database op in het veld Uitvoerdatabase . Klik op Bladeren en selecteer een database in het dialoogvenster. AutoML schrijft de voorspellingsresultaten naar een tabel in deze database.
  9. In het veld Experimentnaam wordt de standaardnaam weergegeven. Als u deze wilt wijzigen, typt u de nieuwe naam in het veld.

U kunt ook het volgende doen:

Bestaande functietabellen uit Databricks Feature Store gebruiken

In Databricks Runtime 11.3 LTS ML en hoger kunt u functietabellen in Databricks Feature Store gebruiken om de invoertrainingsgegevensset voor uw classificatie- en regressieproblemen uit te breiden.

In Databricks Runtime 12.2 LTS ML en hoger kunt u functietabellen in Databricks Feature Store gebruiken om de invoertrainingsgegevensset voor al uw AutoML-problemen uit te breiden: classificatie, regressie en prognoses.

Zie Een functietabel maken in Unity Catalog of Een functietabel maken in Databricks Feature Store om een functietabel te maken.

Nadat u klaar bent met het configureren van uw AutoML-experiment, kunt u een tabel met functies selecteren met de volgende stappen:

  1. Klik op Join-functies (optioneel).

    Knop Join-functies selecteren

  2. Selecteer op de pagina Aanvullende functies toevoegen een functietabel in het veld Functietabel .

  3. Selecteer voor elke primaire sleutel van de functietabel de bijbehorende opzoeksleutel. De zoeksleutel moet een kolom zijn in de trainingsgegevensset die u hebt opgegeven voor uw AutoML-experiment.

  4. Voor tijdreeksfunctietabellen selecteert u de bijbehorende tijdstempelzoeksleutel. Op dezelfde manier moet de zoeksleutel voor tijdstempels een kolom zijn in de trainingsgegevensset die u hebt opgegeven voor uw AutoML-experiment.

    Primaire sleutel en opzoektabellen selecteren

  5. Als u meer functietabellen wilt toevoegen, klikt u op Nog een tabel toevoegen en herhaalt u de bovenstaande stappen.

Geavanceerde configuraties

Open de sectie Geavanceerde configuratie (optioneel) voor toegang tot deze parameters.

  • De metrische evaluatiewaarde is de primaire metriek die wordt gebruikt om de uitvoeringen te beoordelen.
  • In Databricks Runtime 10.4 LTS ML en hoger kunt u trainingsframeworks uitsluiten van overweging. AutoML traint standaard modellen met behulp van frameworks die worden vermeld onder AutoML-algoritmen.
  • U kunt de stopvoorwaarden bewerken. Standaardcondities voor stoppen zijn:
    • Voor het voorspellen van experimenten stopt u na 120 minuten.
    • Stop in Databricks Runtime 10.4 LTS ML en hieronder voor classificatie- en regressieexperimenten na 60 minuten of na het voltooien van 200 proefversies, afhankelijk van wat het eerst gebeurt. Voor Databricks Runtime 11.0 ML en hoger wordt het aantal experimenten niet gebruikt als stopvoorwaarde.
    • In Databricks Runtime 10.4 LTS ML en hoger, voor classificatie- en regressieexperimenten, omvat AutoML vroege stop; het stopt met het trainen en afstemmen van modellen als de metrische validatiegegevens niet meer worden verbeterd.
  • In Databricks Runtime 10.4 LTS ML en hoger kunt u een tijdkolom selecteren om de gegevens te splitsen voor training, validatie en testen in chronologische volgorde (alleen van toepassing op classificatie en regressie).
  • Databricks raadt aan het veld Gegevensmap niet in te vullen. Hierdoor wordt het standaardgedrag geactiveerd dat is om de gegevensset veilig op te slaan als een MLflow-artefact. Een DBFS-pad kan worden opgegeven, maar in dit geval neemt de gegevensset de toegangsmachtigingen van het AutoML-experiment niet over.

Kolomselectie

Notitie

Deze functionaliteit is alleen beschikbaar voor classificatie- en regressieproblemen

In Databricks Runtime 10.3 ML en hoger kunt u opgeven welke kolommen AutoML moet gebruiken voor training. Als u een kolom wilt uitsluiten, schakelt u deze uit in de kolom Opnemen .

U kunt de geselecteerde kolom niet verwijderen als het voorspellingsdoel of als de tijdkolom om de gegevens te splitsen.

Standaard worden alle kolommen opgenomen.

Imputatie van ontbrekende waarden

In Databricks Runtime 10.4 LTS ML en hoger kunt u opgeven hoe null-waarden worden ingevoerd. Selecteer in de gebruikersinterface een methode in de vervolgkeuzelijst in de kolom Impute in het tabelschema.

Standaard selecteert AutoML een imputatiemethode op basis van het kolomtype en de inhoud.

Notitie

Als u een niet-standaardimplicatiemethode opgeeft, voert AutoML geen semantische typedetectie uit.

Voer het experiment uit en bewaak de resultaten

Klik op AutoML starten om het AutoML-experiment te starten. Het experiment wordt uitgevoerd en de AutoML-trainingspagina wordt weergegeven. Als u de uitvoeringstabel wilt vernieuwen, klikt u op Knop Vernieuwen.

Op deze pagina kunt u het volgende doen:

  • Stop het experiment op elk gewenst moment.
  • Open het notebook voor gegevensverkenning.
  • Uitvoeringen bewaken.
  • Navigeer naar de uitvoeringspagina voor elke uitvoering.

Met Databricks Runtime 10.1 ML en hoger geeft AutoML waarschuwingen weer voor mogelijke problemen met de gegevensset, zoals niet-ondersteunde kolomtypen of kolommen met hoge kardinaliteit.

Notitie

Databricks doet het beste om potentiële fouten of problemen aan te geven. Dit is echter mogelijk niet uitgebreid en legt mogelijk geen problemen of fouten vast waarvoor u mogelijk zoekt. Zorg ervoor dat u ook uw eigen beoordelingen uitvoert.

Als u waarschuwingen voor de gegevensset wilt zien, klikt u op het tabblad Waarschuwingen op de trainingspagina of op de experimentpagina nadat het experiment is voltooid.

AutoML-waarschuwingen

Wanneer het experiment is voltooid, kunt u het volgende doen:

  • Registreer en implementeer een van de modellen met MLflow.
  • Selecteer Notitieblok weergeven voor het beste model om het notitieblok te bekijken en te bewerken dat het beste model heeft gemaakt.
  • Selecteer Het notitieblok voor gegevensverkenning weergeven om het notitieblok voor gegevensverkenning te openen.
  • Zoek, filter en sorteer de uitvoeringen in de uitvoeringstabel.
  • Zie de details voor elke uitvoering:
    • Het gegenereerde notebook met broncode voor een proefuitvoering vindt u door te klikken op de MLflow-uitvoering. Het notebook wordt opgeslagen in de sectie Artefacten van de uitvoeringspagina. U kunt dit notitieblok downloaden en importeren in de werkruimte als het downloaden van artefacten is ingeschakeld door uw werkruimtebeheerders.
    • Als u de resultaten van de uitvoering wilt weergeven, klikt u in de kolom Modellen of de kolom Begintijd . De uitvoeringspagina wordt weergegeven met informatie over de proefversie (zoals parameters, metrische gegevens en tags) en artefacten die door de uitvoering zijn gemaakt, inclusief het model. Deze pagina bevat ook codefragmenten die u kunt gebruiken om voorspellingen te doen met het model.

Als u later wilt terugkeren naar dit AutoML-experiment, zoekt u het in de tabel op de pagina Experimenten. De resultaten van elk AutoML-experiment, inclusief de notebooks voor gegevensverkenning en training, worden opgeslagen in een databricks_automl map in de basismap van de gebruiker die het experiment heeft uitgevoerd.

Een model registreren en implementeren

U kunt uw model registreren en implementeren met de AutoML-gebruikersinterface:

  1. Selecteer de koppeling in de kolom Modellen voor het model dat u wilt registreren. Wanneer een uitvoering is voltooid, is het beste model (op basis van de primaire metriek) de bovenste rij.
  2. Selecteer knop model registreren deze optie om het model te registreren in het modelregister.
  3. Selecteer ModellenModellen in de zijbalk om naar het modelregister te navigeren.
  4. Selecteer de naam van uw model in de modeltabel.
  5. Op de geregistreerde modelpagina kunt u het model bedienen met Model Serving.

Geen module met de naam pandas.core.indexes.numeriek

Bij het leveren van een model dat is gebouwd met Behulp van AutoML met Model Serving, krijgt u mogelijk de volgende fout: No module named 'pandas.core.indexes.numeric.

Dit komt door een incompatibele pandas versie tussen AutoML en het model voor eindpuntomgeving. U kunt deze fout oplossen door het add-pandas-dependency.py script uit te voeren. Het script bewerkt het requirements.txt en conda.yaml voor het vastgelegde model om de juiste pandas afhankelijkheidsversie op te nemen: pandas==1.5.3

  1. Wijzig het script om de run_id MLflow-uitvoering op te nemen waarin uw model is vastgelegd.
  2. Het model opnieuw registreren bij het MLflow-modelregister.
  3. Probeer de nieuwe versie van het MLflow-model te leveren.