Lineaire regressiecomponent

In dit artikel wordt een onderdeel in azure Machine Learning Designer beschreven.

Gebruik dit onderdeel om een lineair regressiemodel te maken voor gebruik in een pijplijn. Lineaire regressie probeert een lineaire relatie tot stand te brengen tussen een of meer onafhankelijke variabelen en een numeriek resultaat of afhankelijke variabele.

U gebruikt dit onderdeel om een lineaire regressiemethode te definiëren en vervolgens een model te trainen met behulp van een gelabelde gegevensset. Het getrainde model kan vervolgens worden gebruikt om voorspellingen te doen.

Over lineaire regressie

Lineaire regressie is een veelgebruikte statistische methode, die is gebruikt in machine learning en uitgebreid met veel nieuwe methoden voor het aanpassen van de lijn en het meten van fouten. Eenvoudig gezegd, regressie verwijst naar voorspelling van een numeriek doel. Lineaire regressie is nog steeds een goede keuze als u een eenvoudig model wilt voor een eenvoudige voorspellende taak. Lineaire regressie werkt ook goed bij hoogdimensionale, verspreide gegevenssets die niet complex zijn.

Azure Machine Learning ondersteunt diverse regressiemodellen, naast lineaire regressie. De term 'regressie' kan echter losjes worden geïnterpreteerd en sommige typen regressie in andere hulpprogramma's worden niet ondersteund.

  • Het klassieke regressieprobleem omvat één onafhankelijke variabele en een afhankelijke variabele. Dit wordt eenvoudige regressie genoemd. Dit onderdeel ondersteunt eenvoudige regressie.

  • Meervoudige lineaire regressie omvat twee of meer onafhankelijke variabelen die bijdragen aan één afhankelijke variabele. Problemen waarbij meerdere invoerwaarden worden gebruikt om één numeriek resultaat te voorspellen, worden ook wel multivariate lineaire regressie genoemd.

    Het onderdeel Lineaire regressie kan deze problemen oplossen, net als de meeste andere regressieonderdelen.

  • Regressie met meerdere labels is de taak van het voorspellen van meerdere afhankelijke variabelen binnen één model. In logistieke regressie met meerdere labels kan een voorbeeld bijvoorbeeld worden toegewezen aan meerdere verschillende labels. (Dit verschilt van de taak van het voorspellen van meerdere niveaus binnen één klassevariabele.)

    Dit type regressie wordt niet ondersteund in Azure Machine Learning. Als u meerdere variabelen wilt voorspellen, maakt u een afzonderlijke cursist voor elke uitvoer die u wilt voorspellen.

Al jaren ontwikkelen statistici steeds geavanceerdere methoden voor regressie. Dit geldt zelfs voor lineaire regressie. Dit onderdeel ondersteunt twee methoden voor het meten van fouten en het passend maken van de regressielijn: de methode voor de kleinste kwadraten en de gradiëntafname.

  • Gradiëntafname is een methode waarmee de hoeveelheid fouten bij elke stap van het modeltrainingsproces wordt geminimaliseerd. Er zijn veel variaties op gradiëntafname en de optimalisatie ervan voor verschillende leerproblemen is uitgebreid bestudeerd. Als u deze optie kiest voor oplossingsmethode, kunt u verschillende parameters instellen om de stapgrootte, het leerpercentage, enzovoort te bepalen. Deze optie biedt ook ondersteuning voor het gebruik van een geïntegreerde parameter-sweep.

  • Gewone kleinste kwadraten is een van de meest gebruikte technieken in lineaire regressie. Minimale kwadraten is bijvoorbeeld de methode die wordt gebruikt in Analysis Toolpak voor Microsoft Excel.

    Gewone kleinste kwadraten verwijst naar de verliesfunctie, die fout berekent als de som van het kwadraat van de afstand van de werkelijke waarde tot de voorspelde lijn, en past bij het model door de kwadratische fout te minimaliseren. Bij deze methode wordt uitgegaan van een sterke lineaire relatie tussen de invoer en de afhankelijke variabele.

Lineaire regressie configureren

Dit onderdeel ondersteunt twee methoden voor het aanpassen van een regressiemodel, met verschillende opties:

Een regressiemodel maken met gewone kleinste kwadraten

  1. Voeg het onderdeel Linear Regression Model toe aan uw pijplijn in de ontwerpfunctie.

    U vindt dit onderdeel in de categorie Machine Learning . Vouw Model initialiseren uit, vouw Regressie uit en sleep vervolgens het onderdeel Linear Regression Model naar uw pijplijn.

  2. Selecteer in het deelvenster Eigenschappen in de vervolgkeuzelijst Oplossingsmethodede optie Gewone kleinste vierkantjes. Met deze optie geeft u de berekeningsmethode op die wordt gebruikt om de regressielijn te vinden.

  3. Typ in L2 regularisatiegewicht de waarde die moet worden gebruikt als het gewicht voor L2-regularisatie. U wordt aangeraden een niet-nulwaarde te gebruiken om overfitting te voorkomen.

    Zie dit artikel voor meer informatie over hoe regularisatie van invloed is op modelfitting: L1 en L2 Regularization for Machine Learning (Regularisatie van L1 en L2 voor Machine Learning)

  4. Selecteer de optie Onderscheppingsterm opnemen als u de term voor de onderschepping wilt weergeven.

    Schakel deze optie uit als u de regressieformule niet hoeft te controleren.

  5. Voor Random number seed kunt u desgewenst een waarde typen om de generator voor willekeurige getallen te seeden die door het model wordt gebruikt.

    Het gebruik van een seed-waarde is handig als u dezelfde resultaten wilt behouden voor verschillende uitvoeringen van dezelfde pijplijn. Anders wordt standaard een waarde van de systeemklok gebruikt.

  6. Voeg het onderdeel Model trainen toe aan uw pijplijn en verbind een gelabelde gegevensset.

  7. Verzend de pijplijn.

Resultaten voor een gewoon model met minimale kwadraten

Nadat de training is voltooid:

  • Als u voorspellingen wilt doen, verbindt u het getrainde model met het onderdeel Score Model , samen met een gegevensset met nieuwe waarden.

Een regressiemodel maken met behulp van online gradiëntafname

  1. Voeg het onderdeel Linear Regression Model toe aan uw pijplijn in de ontwerpfunctie.

    U vindt dit onderdeel in de categorie Machine Learning . Vouw Model initialiseren uit, vouw Regressie uit en sleep het onderdeel Linear Regression Model naar uw pijplijn

  2. Kies in het deelvenster Eigenschappen in de vervolgkeuzelijst Oplossingsmethodede optie Online gradiëntafname als de berekeningsmethode die wordt gebruikt om de regressielijn te vinden.

  3. Geef voor Trainer-modus maken aan of u het model wilt trainen met een vooraf gedefinieerde set parameters of dat u het model wilt optimaliseren met behulp van een parameter sweep.

    • Enkele parameter: als u weet hoe u het lineaire regressienetwerk wilt configureren, kunt u een specifieke set waarden opgeven als argumenten.

    • Parameterbereik: selecteer deze optie als u niet zeker bent van de beste parameters en een parameter-sweep wilt uitvoeren. Selecteer een waardenbereik dat u wilt herhalen en de Hyperparameters van model afstemmen herhaalt alle mogelijke combinaties van de instellingen die u hebt opgegeven om de hyperparameters te bepalen die de optimale resultaten produceren.

  4. Geef bij Leersnelheid de initiële leersnelheid op voor de stochastische gradiëntafnameoptimalisatie.

  5. Bij Aantal trainingstijdvakken typt u een waarde die aangeeft hoe vaak het algoritme voorbeelden moet doorlopen. Voor gegevenssets met een klein aantal voorbeelden moet dit aantal groot zijn om convergentie te bereiken.

  6. Functies normaliseren: als u de numerieke gegevens die worden gebruikt voor het trainen van het model al hebt genormaliseerd, kunt u deze optie uitschakelen. Standaard normaliseert het onderdeel alle numerieke invoer naar een bereik tussen 0 en 1.

    Notitie

    Vergeet niet om dezelfde normalisatiemethode toe te passen op nieuwe gegevens die worden gebruikt voor scoren.

  7. Typ in L2 regularisatiegewicht de waarde die moet worden gebruikt als het gewicht voor L2-regularisatie. U wordt aangeraden een niet-nulwaarde te gebruiken om overfitting te voorkomen.

    Zie dit artikel voor meer informatie over hoe regularisatie van invloed is op modelfitting: L1 en L2 Regularization for Machine Learning (Regularisatie van L1 en L2 voor Machine Learning)

  8. Selecteer de optie Leersnelheid verlagen als u wilt dat de leersnelheid afneemt naarmate de iteraties worden voortgezet.

  9. Voor Random number seed kunt u desgewenst een waarde typen om de generator voor willekeurige getallen te seeden die door het model wordt gebruikt. Het gebruik van een seed-waarde is handig als u dezelfde resultaten wilt behouden voor verschillende uitvoeringen van dezelfde pijplijn.

  10. Het model trainen:

    • Als u de modus Trainer maken instelt op Enkele parameter, verbindt u een getagde gegevensset en het onderdeel Train Model .

    • Als u de modus Trainer maken instelt op Parameterbereik, verbindt u een getagde gegevensset en traint u het model met behulp van Hyperparameters afstemmen.

    Notitie

    Als u een parameterbereik doorgeeft aan Train Model, wordt alleen de standaardwaarde in de lijst met parameters gebruikt.

    Als u één set parameterwaarden doorgeeft aan het onderdeel Model hyperparameters afstemmen en er een reeks instellingen voor elke parameter wordt verwacht, worden de waarden genegeerd en worden de standaardwaarden voor de cursist gebruikt.

    Als u de optie Parameterbereik selecteert en één waarde invoert voor een parameter, wordt die ene waarde die u hebt opgegeven, gebruikt tijdens de sweep, zelfs als andere parameters in een bereik van waarden veranderen.

  11. Verzend de pijplijn.

Resultaten voor online gradiëntafname

Nadat de training is voltooid:

  • Als u voorspellingen wilt doen, koppelt u het getrainde model aan het onderdeel Score Model , samen met nieuwe invoergegevens.

Volgende stappen

Bekijk de set onderdelen die beschikbaar zijn voor Azure Machine Learning.