Logistieke regressie met twee klassen

Hiermee maakt u een logistiek regressie model met twee klassen

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 (twee klasse ) gebruikt in azure machine learning Studio (klassiek) om een logistiek regressie model te maken dat kan worden gebruikt om twee (en slechts twee) resultaten te voors pellen.

Logistiek regressie is een goed bekende statistische techniek die wordt gebruikt voor het model leren van veel problemen. Dit algoritme is een gesupere leer methode; Daarom moet u een gegevensset opgeven die al de resultaten bevat om het model te trainen.

Meer informatie over logistiek regressie

Logistiek regressie is een bekende methode in statistieken die wordt gebruikt om de kans op een resultaat te voors pellen en is met name 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 deze module is het classificatie algoritme geoptimaliseerd voor dichotomous of binaire variabelen. Als u meerdere resultaten wilt classificeren, gebruikt u de module logistiek-regressie (multi klasse).

Two-Class logistiek-regressie configureren

Als u dit model wilt trainen, moet u een gegevensset opgeven die een kolom van het type label of klasse bevat. Omdat deze module is bedoeld voor problemen met twee klassen, moet de kolom Label of klasse precies twee waarden bevatten.

De kolom Label kan bijvoorbeeld [gestemd] zijn met mogelijke waarden ' Yes ' of ' no '. Het kan ook [Credit Risk] zijn, met mogelijke waarden van ' hoog ' of ' laag '.

  1. Voeg de module logistiek-regressie met twee klassen toe aan uw experiment in Studio (klassiek).

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

    • Eén para meter: als u weet hoe u het model wilt configureren, kunt u een specifieke set waarden als argumenten opgeven.

    • Parameter bereik: als u niet zeker weet wat de beste para meters zijn, kunt u de optimale para meters vinden door meerdere waarden op te geven en de module model Hyper parameters te gebruiken om de optimale configuratie te vinden. De trainer herhaalt meerdere combi Naties van de instellingen en bepaalt de combi natie van waarden die het beste model produceert.

  3. Geef bij optimalisatie tolerantieeen drempel waarde op die moet worden gebruikt bij het optimaliseren van het model. Als de verbetering tussen herhalingen onder de opgegeven drempel waarde valt, wordt het algoritme gezien als geconvergeerd op een oplossing en stopt de training.

  4. Typ voor L1 regularisatie Weight en L2 regularisatie Weighteen waarde om te gebruiken 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 zou dus meer worden 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 en y = L2 vervolgens ax + by = c de lineaire lijn van de regularisatie-voor waarden definieert.

    Notitie

    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: L1 en L2 regularisatie voor machine learning

    Er zijn verschillende lineaire combi Naties van L1-en L2-termen ontwikkeld voor logistieke regressie modellen: bijvoorbeeld elastische net regularisatie. U wordt aangeraden om te verwijzen naar deze combi Naties om een lineaire combi natie te definiëren die effectief is in uw model.

  5. Geef voor de geheugen grootte voor l-BFGSde hoeveelheid geheugen op die moet worden gebruikt voor de optimalisatie van l-BFGS .

    L-BFGS staat voor ' Limited Memory Broyden-Fletcher-Goldfarb-Shanno '. Het is een optimalisatie algoritme dat populair is voor de schatting van de para meters. Met deze para meter wordt het aantal vroegere posities en verlopen aangegeven dat moet worden opgeslagen voor de berekening van de volgende stap.

    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. Voor wille keurig getal zaadtypt u een geheel getal. Het definiëren van een Seed-waarde is belang rijk als u wilt dat de resultaten worden gereproduceerd over meerdere uitvoeringen van hetzelfde experiment.

  7. Selecteer de optie onbekende categorische niveaus toestaan om een extra ' onbekend ' niveau te maken in elke categorische-kolom. Als u dit doet, worden alle waarden (niveaus) in de test-gegevensset die niet beschikbaar zijn in de trainings gegevensset, toegewezen aan dit ' onbekende ' niveau.

  8. Voeg een gecodeerde gegevensset toe aan het experiment en Verbind een van de trainings 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 .

    Notitie

    Als u het bereik van de para meter doorgeeft aan 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 gebruikt gedurende de sweep, zelfs als andere para meters worden gewijzigd in een bereik van 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 Train model of op model Hyper parametersen selecteert u visualiseren.

  • Als u voor spellingen wilt doen op nieuwe gegevens, gebruikt u het getrainde model en de nieuwe gegevens als invoer voor de module score model .

  • Als u kruis validatie wilt uitvoeren op een gegevensgestuurde gegevensset, koppelt u de gegevens en het niet-getrainde model om het model kruislings te valideren.

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.

Gebruiks tips

Voor logistiek-regressie zijn numerieke variabelen vereist. Wanneer u categorische-kolommen als variabele gebruikt, 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 Framework)-opmerkingen(Engelstalig) voor 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.

Implementatie Details

In logistiek 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.

Nader

Zie voor meer informatie over de implementatie van dit algoritme een schaal bare training van L-1 regular Log-Linear models, Andrew en Gao.

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 Het gewicht van L1 regularisatie opgeven
L2-regularisatie gewicht >= 0,0 Drijvendekommagetal 1.0 Het regularisatie-gewicht van L2 opgeven
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
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.

Uitvoer

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

Zie ook

Classificatie

Logistieke regressie met meerdere klassen

Module lijst a-Z