Logistieke regressie met meerdere klassen

Hiermee maakt u een logistiek-classificatie model met een multi klasse-regressie

Categorie: model/classificatie machine learning/initialiseren

Notitie

Van toepassing op : machine learning Studio (klassiek)

Deze inhoud is alleen van toepassing op Studio (klassiek). Er zijn Vergelijk bare modules voor slepen en neerzetten toegevoegd aan Azure Machine Learning Designer. In dit artikel vindt u meer informatie over de twee versies.

Module overzicht

In dit artikel wordt beschreven hoe u de module logistiek-regressie (multi Class Regression ) in azure machine learning Studio (klassiek) kunt gebruiken om een logistiek regressie model te maken dat kan worden gebruikt om meerdere waarden te voors pellen.

Classificatie met behulp van logistiek regressie is een geclassificeerde leer methode en vereist daarom een gegevensset met een label. U traint het model door het model en de gelabelde gegevensset op te geven als invoer voor een module, zoals Train model of Hyper parameters model. Het getrainde model kan vervolgens worden gebruikt om waarden voor nieuwe invoer voorbeelden te voors pellen.

Azure Machine Learning Studio (klassiek) biedt ook een logistiek regressie module van twee klassen , die geschikt is voor de classificatie van binaire of dichotomous variabelen.

Meer informatie over de regressie van meerdere klassen logistiek

Logistiek regressie is een bekende methode in statistieken die wordt gebruikt om de kans op een resultaat te voors pellen en is bijzonder populair bij classificatie taken. Het algoritme voor spelt de kans op een gebeurtenis door gegevens aan een logistiek functie toe te passen. Zie de sectie technische opmerkingen voor meer informatie over deze implementatie.

In een logistiek-regressie met meerdere klassen kan de classificatie worden gebruikt voor het voors pellen van meervoudige resultaten.

Een logistiek-regressie met meer klasse configureren

  1. Voeg de module logistiek-regressie voor multi klasse toe aan het experiment.

  2. Geef op hoe u wilt dat het model wordt getraind door de optie trainer modus maken in te stellen.

    • Eén para meter: gebruik deze optie als u weet hoe u het model wilt configureren en geef een specifieke set waarden als argumenten op.

    • Parameter bereik: gebruik deze optie als u niet zeker bent van de beste para meters en een parameter sweep wilt gebruiken.

  3. Optimalisatie tolerantie, geeft u de drempel waarde voor optimalisatie convergentie op. Als de verbetering tussen herhalingen kleiner is dan de drempel waarde, wordt het algoritme gestopt en wordt het huidige model geretourneerd.

  4. L1 regularisatie Weight, L2-regularisatie gewicht: Typ een waarde die moet worden gebruikt voor de regularisatie-para meters L1 en L2. Een andere waarde dan nul wordt aanbevolen voor beide.

    Regularisatie is een methode voor het voor komen van overmontage door het bestraffen van modellen met extreme coëfficiënt waarden. Regularisatie werkt door de sanctie toe te voegen die is gekoppeld aan coëfficiënt waarden voor de fout van de hypo these. Een nauw keurig model met extreme coëfficiënt waarden wordt meer bestraft, maar een minder nauw keurig model met meer conservatieve waarden zou minder worden bestraft.

    L1 en L2-regularisatie hebben verschillende effecten en worden gebruikt. L1 kan worden toegepast op sparse modellen, wat handig is bij het werken met zeer dimensionale gegevens. In tegens telling tot L2-regularisatie is de voor keur voor gegevens die niet sparse zijn. Dit algoritme ondersteunt een lineaire combi natie van L1-en L2-regularisatie-waarden: dat wil zeggen, als x = L1 en y = L2 , ax + by = c de lineaire reeks van de regularisatie-voor waarden definieert.

    Er zijn verschillende lineaire combi Naties van L1-en L2-termen ontwikkeld voor logistieke regressie modellen, zoals elastische net regularisatie.

  5. Geheugen grootte voor l-BFGS: Geef de hoeveelheid geheugen op die moet worden gebruikt voor de optimalisatie van l-BFGS . Met deze para meter wordt het aantal vroegere posities en verlopen aangegeven dat moet worden opgeslagen voor de berekening van de volgende stap.

    L-BFGS staat voor beperkt geheugen Broyden-Fletcher-Goldfarb-Shanno en is een optimalisatie algoritme dat populair is voor de schatting van de para meters. Deze optimalisatie parameter beperkt de hoeveelheid geheugen die wordt gebruikt voor het berekenen van de volgende stap en richting. Wanneer u minder geheugen opgeeft, is de training sneller, maar minder nauw keurig.

  6. Wille keurig getal Seed: Typ een geheel getal dat moet worden gebruikt als seed voor het algoritme als u wilt dat de resultaten herhaaldelijk worden uitgevoerd. Anders wordt een waarde van de systeem klok gebruikt als seed, waardoor er iets andere resultaten kunnen worden geproduceerd in uitvoeringen van hetzelfde experiment.

  7. Onbekende categorische-niveaus toestaan: Selecteer deze optie als u een extra ' onbekend ' niveau wilt maken in elke categorische-kolom. Alle waarden (niveaus) in de test-gegevensset die niet aanwezig zijn in de trainings gegevensset, worden toegewezen aan dit onbekende niveau.

  8. Verbind een gegevensset met een label en een van de trein modules:

    • Als u de modus trainer maken instelt op één para meter, gebruikt u de module Train model .

    • Als u de modus trainer maken instelt op het parameter bereik, gebruikt u de Hyper parameters-module voor het afstemmen van modellen . Met deze optie kunt u meerdere waarden opgeven en de trainer herhaalt over meerdere combi Naties van de instellingen om de combi natie van waarden te bepalen die het beste model produceert.

    Notitie

    Als u een parameter bereik doorgeeft aan een Train-model, wordt alleen de eerste waarde in de lijst met para meters gebruikt.

    Als u één set parameter waarden doorgeeft aan de Hyper parameters-module voor het Tune-model , worden de waarden genegeerd en worden de standaard waarden gebruikt voor de cursist als er een reeks instellingen voor elke para meter wordt verwacht.

    Als u de optie voor het parameter bereik selecteert en één waarde voor een para meter opgeeft, wordt die enkele waarde die u hebt opgegeven overal in de sweep gebruikt, zelfs als andere para meters worden gewijzigd in een reeks waarden.

  9. Voer het experiment uit.

Resultaten

Nadat de training is voltooid:

  • Als u een samen vatting van de para meters van het model wilt weer geven, samen met de functie gewichten die zijn geleerd van training, klikt u met de rechter muisknop op de uitvoer van de module Train model of stemt u model Hyper parameters afen selecteert u visualiseren.

Voorbeelden

Voor voor beelden van hoe dit leer algoritme wordt gebruikt, raadpleegt u de Azure AI Gallery:

Technische opmerkingen

Deze sectie bevat implementatie details, tips en antwoorden op veelgestelde vragen.

Wilt u meer informatie over L1 en L2-regularisatie? In het volgende artikel wordt uitgelegd hoe L1 en L2 regularisatie verschillend zijn en hoe deze van invloed zijn op model fitting, met code voorbeelden voor logistiek-regressie en Neural-netwerk modellen.

Zie voor meer informatie over de implementatie van deze algoritme:

Implementatie Details

Voor logistiek-regressie zijn numerieke variabelen vereist. Wanneer u categorische-kolommen als een variabele probeert te gebruiken, worden de waarden daarom intern door Azure Machine Learning geconverteerd naar een indicator matrix.

Voor datums en tijden wordt een numerieke representatie gebruikt. Zie DateTime Structure .NET Frameworkvoor meer informatie over datum-en tijd waarden. Als u datums en tijden anders wilt afhandelen, raden we u aan om een afgeleide kolom te maken.

Standaard logistiek regressie is binomiale en gaat ervan uit dat er twee uitvoer klassen zijn. Bij een MultiNomial van meerdere klassen of voor de logistiek, wordt ervan uitgegaan dat er drie of meer uitvoer klassen zijn.

In de binomiale-regressie wordt uitgegaan van een Logistiek distributie van de gegevens, waarbij de kans dat een voor beeld bij klasse 1 hoort, de volgende formule is:

p(x;β0,…, βD-1)

Waar:

  • x is een D-dimensionale vector met de waarden van alle functies van het exemplaar.

  • p is de functie Logistiek distributie.

  • β{0},..., β {D-1} zijn de onbekende para meters van de logistiek distributie.

Het algoritme probeert de optimale waarden te vinden voor β{0},..., β {D-1} door de logboek kans van de para meters voor de invoer te maximaliseren. Er wordt gemaximaliseerd met behulp van een populaire methode voor het uitvoeren van para meters, ook wel beperkt geheugen BFGSgenoemd.

Module parameters

Naam Bereik Type Standaard Beschrijving
Optimalisatie tolerantie >= double. Letter Drijvendekommagetal 0,0000001 Geef een tolerantie waarde op voor de L-BFGS Optimizer
L1 regularisatie-gewicht >= 0,0 Drijvendekommagetal 1.0 Geef het gewicht van L1 regularisatie op. Gebruik een waarde die niet gelijk is aan nul om te voor komen dat deze wordt overpast.
L2-regularisatie gewicht >= 0,0 Drijvendekommagetal 1.0 Geef het regularisatie-gewicht van L2 op. Gebruik een waarde die niet gelijk is aan nul om te voor komen dat deze wordt overpast.
Geheugen grootte voor L-BFGS >= 1 Geheel getal 20 Geef de hoeveelheid geheugen (in MB) op die moet worden gebruikt voor de L-BFGS Optimizer. Wanneer minder geheugen wordt gebruikt, is de training sneller, maar minder nauw keurig.
Wille keurig getal zaad Alle Geheel getal Typ een waarde voor het seeden van de generator voor wille keurige getallen die wordt gebruikt door het model. Laat het veld leeg voor de standaard instelling.
Onbekende categorische-niveaus toestaan Alle Boolean-waarde True Geef aan of er een extra niveau moet worden gemaakt voor elke kolom categorische. Alle niveaus in de test-gegevensset die niet beschikbaar zijn in de trainings gegevensset, worden toegewezen aan dit extra niveau.

Outputs

Naam Type Beschrijving
Niet-traind model ILearner-interface Een niet-traind classificatie model

Zie ook

Ontbreekt
Logistiek regressie met twee klassen
Module lijst a-Z