Share via


Regressie Poisson

Belangrijk

De ondersteuning voor Azure Machine Learning-studio (klassiek) eindigt op 31 augustus 2024. U wordt aangeraden om vóór die datum over te stappen naar Azure Machine Learning.

Vanaf 1 december 2021 kunt u geen nieuwe resources voor Azure Machine Learning-studio (klassiek) meer maken. Tot en met 31 augustus 2024 kunt u de bestaande resources van Azure Machine Learning-studio (klassiek) blijven gebruiken.

De documentatie van ML-studio (klassiek) wordt buiten gebruik gesteld en wordt in de toekomst mogelijk niet meer bijgewerkt.

Hiermee maakt u een regressiemodel dat ervan uit gaat dat gegevens een Poisson-distributie hebben

Categorie: Machine Learning/model initialiseren/regressie

Notitie

Van toepassing op: Machine Learning Studio (klassiek)

Vergelijkbare modules met slepen en neerzetten zijn beschikbaar in Azure Machine Learning designer.

Moduleoverzicht

In dit artikel wordt beschreven hoe u de Poisson Regression-module in Machine Learning Studio (klassiek) gebruikt om een Poisson-regressiemodel te maken.

Poisson-regressie is bedoeld voor gebruik in regressiemodellen die worden gebruikt om numerieke waarden te voorspellen, meestal tellingen. Daarom moet u deze module gebruiken om uw regressiemodel alleen te maken als de waarden die u probeert te voorspellen aan de volgende voorwaarden voldoen:

  • De antwoordvariabele heeft een Poisson-distributie.

  • Tellingen kunnen niet negatief zijn. De methode mislukt direct als u deze probeert te gebruiken met negatieve labels.

  • Een Poisson-distributie is een discrete verdeling; Daarom is het niet zinvol om deze methode te gebruiken met niet-gehele getallen.

Tip

Als uw doel geen telling is, is Poisson-regressie waarschijnlijk geen geschikte methode. Probeer een van de andere modules in deze categorie. Voor hulp bij het kiezen van een regressiemethode, zie Machine Learning cheatsheet voor het algoritme.

Nadat u de regressiemethode hebt ingesteld, moet u het model trainen met behulp van een gegevensset met voorbeelden van de waarde die u wilt voorspellen. Het getrainde model kan vervolgens worden gebruikt om voorspellingen te doen.

Meer informatie over Poisson-regressie

Poisson-regressie is een speciaal type regressieanalyse dat doorgaans wordt gebruikt om het aantal modellen te modelleren. Poisson-regressie is bijvoorbeeld nuttig in deze scenario's:

  • Modelleren van het aantal koude weer dat is gekoppeld aan vliegtuig vluchten

  • Het aantal noodoproepen schatten tijdens een gebeurtenis

  • Het aantal klantenvragen na een promotie projecteren

  • Tabellen voor onvoorziene gebeurtenissen maken

Omdat de antwoordvariabele een Poisson-distributie heeft, maakt het model verschillende veronderstellingen over de gegevens en de waarschijnlijkheidsverdeling dan bijvoorbeeld de regressie van de minste kwadraat. Poisson-modellen moeten daarom anders worden geïnterpreteerd dan andere regressiemodellen.

Poisson-regressie configureren

  1. Voeg de Poisson Regression-module toe aan uw experiment in Studio (klassiek).

    U vindt deze module onder Machine Learning - Initialiseren, in de categorie Regressie.

  2. Voeg een gegevensset toe die trainingsgegevens van het juiste type bevat.

    U wordt aangeraden Gegevens normaliseren te gebruiken om de invoergegevensset te normaliseren voordat u deze gebruikt om de regressor te trainen.

  3. Geef in het deelvenster Eigenschappen van de Poisson Regression-module op hoe u het model wilt trainen door de optie Trainer-modus maken in te stellen.

    • Eén parameter: Als u weet hoe u het model wilt configureren, geeft u een specifieke set waarden op als argumenten.

    • Parameterbereik. Als u niet zeker bent van de beste parameters, kunt u een parameteropsruiming met behulp van de module Tune Model Hyperparameters . De docent doorveert meerdere waarden die u opgeeft om de optimale configuratie te vinden.

  4. Optimalisatietolerantie: typ een waarde die het tolerantieinterval tijdens de optimalisatie definieert. Hoe lager de waarde, hoe langzamer en nauwkeuriger de aanpassing.

  5. L1-regularisatiegewicht en L2-regularisatiegewicht: typewaarden die moeten worden gebruikt voor L1- en L2-regularisatie. Regularisatie voegt beperkingen toe aan het algoritme met betrekking tot aspecten van het model die onafhankelijk zijn van de trainingsgegevens. Regularisatie wordt vaak gebruikt om overfitting te voorkomen.

    • L1-regularisatie is handig als het doel is om een model te hebben dat zo verspreid mogelijk is.

      L1-regularisatie wordt uitgevoerd door het L1-gewicht van de gewichtsvector af te trekken van de verliesexpressie die de learner probeert te minimaliseren. De L1-norm is een goede benadering van de L0-norm, wat het aantal coördinaten is dat niet nul is.

    • L2-regularisatie voorkomt dat één coördinaat in de gewichtsvector te veel groeit. L2-regularisatie is handig als het doel is om een model met kleine algemene gewichten te hebben.

    In deze module kunt u een combinatie van L1- en L2-regularisaties toepassen. Door L1 en L2-regularisatie te combineren, kunt u een boete opleggen aan de magnitude van de parameterwaarden. De leerder probeert de boete te minimaliseren, in een afweging met het minimaliseren van het verlies.

    Zie L1- en L2-regularisatie voor meer Machine Learning.

  6. Geheugengrootte voor L-BFGS: geef de hoeveelheid geheugen op die moet worden reserveren voor modelfitting en -optimalisatie.

    L-BFGS is een specifieke methode voor optimalisatie, op basis van het algoritme Broyden–Contact–Goldfarb–Shanno (BFGS). De methode gebruikt een beperkte hoeveelheid geheugen (L) om de volgende staprichting te berekenen.

    Door deze parameter te wijzigen, kunt u invloed hebben op het aantal eerdere posities en kleurovergangen dat is opgeslagen voor de berekening van de volgende stap.

  7. Verbinding maken trainingsset en het niet-getrainde model aan een van de trainingsmodules toe:

    Waarschuwing

    • Als u een parameterbereik doorgeeft aan Train Model, wordt alleen de eerste waarde in de lijst met parameterbereiken gebruikt.

    • Als u één set parameterwaarden doorgeeft aan de module Tune Model Hyperparameters , worden de waarden genegeerd en worden de standaardwaarden voor de learner gebruikt wanneer er een bereik van instellingen voor elke parameter wordt verwacht.

    • Als u de optie Parameterbereik selecteert en één waarde voor een parameter ingeeft, wordt die ene waarde die u hebt opgegeven, overal in het bereik gebruikt, zelfs als andere parameters worden gewijzigd binnen een bereik van waarden.

  8. Voer het experiment uit om het model te trainen.

Voorbeelden

Zie de machine learning voor voorbeelden van hoe Poisson-regressie wordt Azure AI Gallery.

Technische opmerkingen

Poisson-regressie wordt gebruikt om het aantal gegevens te modelleren, ervan uitgaande dat het label een Poisson-distributie heeft. U kunt deze bijvoorbeeld gebruiken om het aantal aanroepen naar een klantondersteuningscentrum op een bepaalde dag te voorspellen.

Voor dit algoritme wordt ervan uitgegaan dat een onbekende functie, aangeduid met Y, een Poisson-distributie heeft. De Poisson-distributie wordt als volgt gedefinieerd:

Gezien het exemplaar x = (x0, ..., xd-1), berekent de module voor elke k=0,1, ..., de waarschijnlijkheid dat de waarde van het exemplaar k is.

Op basis van de set trainingsvoorbeelden probeert het algoritme de optimale waarden voor grenswaarden te vinden door de kans op parameters in het logboek te maximaliseren. De waarschijnlijkheid van de parameters lihood0, ...,enkele-1 is de waarschijnlijkheid dat de trainingsgegevens zijn verzameld uit een distributie met deze parameters.

De waarschijnlijkheid van het logboek kan worden gezien als logp(y = pk)

De voorspellingsfunctie geeft de verwachte waarde van die geparameteriseerde Poisson-distributie als uitvoer: fw,b(x) = E[Y|x] = ewTx+b.

Zie de vermelding voor Poisson-regressie op Wikipedia voor meer informatie.

Moduleparameters

Name Bereik Type Standaard Beschrijving
Optimalisatietolerantie >= dubbel. Epsilon Float 0.0000001 Geef een tolerantiewaarde op voor optimalisatieconvergentie. Hoe lager de waarde, hoe langzamer en nauwkeuriger de aanpassing.
L1-regularisatiegewicht >= 0,0 Float 1.0 Geef het L1-regularisatiegewicht op. Gebruik een waarde die niet nul is om overfitting van het model te voorkomen.
L2-regularisatiegewicht >= 0,0 Float 1.0 Geef het L2-regularisatiegewicht op. Gebruik een waarde die niet nul is om overfitting van het model te voorkomen.
Geheugengrootte voor L-BFGS >= 1 Geheel getal 20 Geef aan hoeveel geheugen (in MB) moet worden gebruikt voor de L-BFGS-optimalisatie. Met minder geheugen is de training sneller, maar minder nauwkeurig.
Seed van willekeurig getal alle Geheel getal Typ een waarde om de generator voor willekeurige getallen te seeden die door het model wordt gebruikt. Laat de standaardwaarde leeg.
Onbekende categorische niveaus toestaan alle Booleaans true Geef aan of er een extra niveau moet worden gemaakt voor elke categorische kolom. Alle niveaus in de testset die niet beschikbaar zijn in de trainingsset, worden toegewezen aan dit extra niveau.

Uitvoerwaarden

Naam Type Description
Niet-getraind model ILearner-interface Een ongetraind regressiemodel

Zie ook

Regressie
Lijst met A-Z-modules