Lineaire regressie

Hiermee maakt u een lineair regressie model

Categorie: model/regressie 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 lineaire regressie module in azure machine learning Studio (klassiek) gebruikt om een lineair regressie model te maken voor gebruik in een experiment. Lineaire regressie pogingen om een lineaire relatie tot stand te brengen tussen een of meer onafhankelijke variabelen en een numeriek resultaat of een afhankelijke variabele.

Met deze module kunt u een lineaire regressie methode definiëren en vervolgens een model trainen met een gegevensset met een label. Het getrainde model kan vervolgens worden gebruikt voor het maken van voor spellingen. Het niet-trained model kan ook worden door gegeven aan kruislings valideren model voor kruis validatie op basis van een gegevensset met een label.

Meer informatie over lineaire regressie

Lineaire regressie is een gemeen schappelijke statistische methode, die in machine learning is aangenomen en uitgebreid met veel nieuwe methoden voor het aanpassen van de lijn en het meten van de fout. In de meest eenvoudige zin verwijst regressie naar de voor spelling van een numeriek doel. Lineaire regressie is nog steeds een goede keuze als u een zeer eenvoudig model voor een eenvoudige, voorspellende taak wilt. Lineaire regressie kan ook worden gebruikt voor zeer dimensionale, sparse gegevens sets die geen complexiteit hebben.

Azure Machine Learning Studio (klassiek) ondersteunt een groot aantal regressie modellen, naast lineaire regressie. De term ' regressie ' kan echter soepel worden geïnterpreteerd en bepaalde typen regressies die worden geboden in andere hulpprogram ma's, worden niet ondersteund in Studio (klassiek).

  • Het klassieke regressie probleem omvat één onafhankelijke variabele en een afhankelijke variabele. Dit heet eenvoudige regressie. Deze module biedt ondersteuning voor eenvoudige regressie.

  • Meerdere lineaire regressie omvat twee of meer onafhankelijke variabelen die bijdragen aan één afhankelijke variabele. Problemen waarbij meerdere invoer wordt gebruikt om een enkele numerieke uitkomst te voors pellen, ook wel multidimensionale lineaire regressiegenoemd.

    Deze problemen kunnen worden opgelost met de module Linear Regression , evenals de meeste andere regressie modules in Studio (klassiek).

  • Regressie met meerdere labels is de taak voor het voors pellen van meerdere afhankelijke variabelen binnen één model. Zo kan in een logistiek-regressie met meerdere labels een voor beeld worden toegewezen aan meerdere labels. (Dit wijkt af van de taak voor het voors pellen van meerdere niveaus binnen één klassen variabele.)

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

Voor jaren statistici zijn steeds meer geavanceerde methoden ontwikkeld voor regressie. Dit geldt ook voor lineaire regressie. Deze module ondersteunt twee methoden om een fout te meten en te voldoen aan de regressie regel: normale, minimale kwadraten methode en daal van kleur overgang.

  • Gradient Daal is een methode die de fout waarde bij elke stap van het model trainings proces minimaliseert. Er zijn veel variaties in Daal en de optimalisatie voor verschillende leer problemen is uitgebreid bestudeerd. Als u deze optie voor de oplossings methodekiest, kunt u een aantal para meters instellen om de stap grootte, het leer tempo, enzovoort te bepalen. Deze optie biedt ook ondersteuning voor het gebruik van een geïntegreerde parameter opruiming.

  • Normale minimale kwadraten is een van de meest gebruikte technieken in lineaire regressie. Bijvoorbeeld, minste kwadraten is de methode die wordt gebruikt in Analysis ToolPak voor micro soft Excel.

    Normale minimale kwadraten verwijzen naar de functie verlies, waarbij fout wordt berekend als de som van het kwadraat van de afstand van de werkelijke waarde tot de voorspelde regel, en past het model aan door de gekwadrateerde fout te minimaliseren. Bij deze methode wordt uitgegaan van een sterke lineaire relatie tussen de invoer en de afhankelijke variabele.

Lineaire regressie configureren

Deze module ondersteunt twee methoden voor het aanpassen van een regressie model met zeer verschillende opties:

Een regressie model maken met behulp van normale, minimale kwadraten

  1. Voeg de module Linear regressie model toe aan uw experiment in Studio (klassiek).

    U kunt deze module vinden in de categorie machine learning . Vouw Initialiseer modeluit, vouw regressieuit en sleep de module Linear regressie model naar uw experiment.

  2. Selecteer in het deel venster Eigenschappen in de vervolg keuzelijst oplossings methode de optie normale kleinste kwadraten. Met deze optie geeft u de reken methode op die wordt gebruikt om de regressie regel te vinden.

  3. In L2-regularisatie gewichttypt u de waarde die moet worden gebruikt als gewicht voor de L2-regularisatie. U kunt het beste een andere waarde dan nul gebruiken om te voor komen dat deze wordt overpast.

    Zie dit artikel: L1 en L2 regularisatie voor machine learning voor meer informatie over hoe regularisatie van invloed is op model fittings.

  4. Selecteer de optie, Voeg interceptie termtoe als u de term voor het snij punt wilt weer geven.

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

  5. Voor wille keurig getal Seedkunt u optioneel een waarde typen om de wille keurige generator te seeden die door het model wordt gebruikt.

    Het gebruik van een Seed-waarde is handig als u dezelfde resultaten wilt behouden in verschillende uitvoeringen van hetzelfde experiment. Anders wordt de standaard instelling gebruikt voor het gebruik van een waarde uit de systeem klok.

  6. Schakel de optie uit, sta onbekende categorische-niveaus toeals u wilt dat ontbrekende waarden een fout veroorzaken.

    Als deze optie is geselecteerd, wordt er een extra niveau gemaakt voor elke kolom categorische. Alle niveaus in de test-gegevensset die niet aanwezig zijn in de trainings gegevensset, worden toegewezen aan dit extra niveau.

  7. Voeg de module Train model toe aan uw experiment en Verbind een gegevensset met een label.

  8. Voer het experiment uit.

Resultaten voor model met de normale kleinste kwadraten

Nadat de training is voltooid:

  • Als u de para meters van het model wilt weer geven, klikt u met de rechter muisknop op de leider uitvoer en selecteert u visualiseren.

  • Als u voor spellingen wilt doen, verbindt u het getrainde model met de module score model , samen met een gegevensset met nieuwe waarden.

  • Als u kruis validatie wilt uitvoeren op een gegevensgestuurde gegevensset, verbindt u het niet-trainde model om het model te valideren.

Een regressie model maken met online verloop Daal

  1. Voeg de module Linear regressie model toe aan uw experiment in Studio (klassiek).

    U kunt deze module vinden in de categorie machine learning . Vouw initialiseren modeluit, vouw regressieuit en sleep de module Linear regressie model naar uw experiment

  2. Kies in het deel venster Eigenschappen in de vervolg keuzelijst oplossings methode de optie online verloop Daal als de reken methode die wordt gebruikt om de regressie lijn te vinden.

  3. Voor de modus trainer makengeeft u aan of u het model wilt trainen met een vooraf gedefinieerde set para meters of als u het model wilt optimaliseren met behulp van een parameter sweep.

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

    • Parameter bereik: als u wilt dat het algoritme de beste para meters voor u vindt, stelt u de optie trainer modus maken in op parameter bereik. U kunt vervolgens meerdere waarden opgeven om het algoritme te proberen.

  4. Voor het leer tempogeeft u het eerste leer tempo op voor de stochastische Daal Optimizer van een kleur overgang.

  5. Voor het aantal trainings-epochentypt u een waarde die aangeeft hoe vaak de algoritme voor beelden moet herhalen. Voor gegevens sets met een klein aantal voor beelden 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 deselecteren. Standaard normaleert de module alle numerieke invoer naar een bereik tussen 0 en 1.

    Notitie

    Vergeet niet om dezelfde normalisatie methode toe te passen op nieuwe gegevens die worden gebruikt voor een score.

  7. In L2-regularisatie gewichttypt u de waarde die moet worden gebruikt als gewicht voor de L2-regularisatie. U kunt het beste een andere waarde dan nul gebruiken om te voor komen dat deze wordt overpast.

    Zie dit artikel: L1 en L2 regularisatie voor machine learning voor meer informatie over hoe regularisatie van invloed is op model fittings.

  8. Selecteer de optie gemiddelde hypo thesevoor het berekenen van de laatste hypo these.

    In regressie modellen houdt hypo Thesen het gebruik van bepaalde statistieken bij het evalueren van de kans op een null-hypo these, waarmee wordt aangegeven dat er geen lineaire correlatie is tussen een afhankelijke en onafhankelijke variabele. In veel regressie problemen moet u een hypo these testen met meer dan één variabele.

    Deze optie is standaard ingeschakeld, wat betekent dat het algoritme een combi natie van de para meters test waarbij twee of meer para meters betrokken zijn.

  9. Selecteer de optie, Verminder het leertempo als u wilt dat het leer tempo afneemt als de voortgang van herhalingen.

  10. Voor wille keurig getal Seedkunt u optioneel een waarde typen om de wille keurige generator te seeden die door het model wordt gebruikt. Het gebruik van een Seed-waarde is handig als u dezelfde resultaten wilt behouden in verschillende uitvoeringen van hetzelfde experiment.

  11. Schakel de optie uit, sta onbekende categorische-niveaus toeals u wilt dat ontbrekende waarden een fout veroorzaken.

    Als deze optie is geselecteerd, wordt er een extra niveau gemaakt voor elke kolom categorische. Alle niveaus in de test gegevensset die niet aanwezig zijn in de trainings gegevensset, worden toegewezen aan dit extra niveau.

  12. Voeg een gegevensset met een label en een van de trainings modulestoe.

    Als u geen parameter sweep gebruikt, gebruikt u de module Train model .

    Als u het algoritme de beste para meters voor u wilt laten vinden, traint u het model met behulp van Tune model Hyper parameters.

    Notitie

    Als u het model configureert met specifieke waarden met behulp van de optie voor één para meter en vervolgens overschakelt naar de optie voor het parameter bereik , wordt het model getraind met behulp van de minimum waarde in het bereik voor elke para meter.

    Als u daarentegen specifieke instellingen configureert wanneer u het model maakt, maar de optie voor het parameter bereik selecteert, wordt het model getraind met de standaard waarden voor de cursist als het bereik van de waarden die moeten worden geveegd.

  13. Voer het experiment uit.

Resultaten voor online verloop Daal

Nadat de training is voltooid:

  • Als u voor spellingen wilt doen, verbindt u het getrainde model met de module score model , samen met nieuwe invoer gegevens.
  • Als u kruis validatie wilt uitvoeren op een gegevensgestuurde gegevensset, verbindt u het niet-trainde model om het model te valideren.

Voorbeelden

Voor voor beelden van regressie modellen raadpleegt u deze voorbeeld experimenten in de Azure AI Gallery:

Technische opmerkingen

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

Gebruiks tips

Veel hulp middelen bieden ondersteuning voor het maken van lineaire regressie, variërend van eenvoudig tot complex. U kunt bijvoorbeeld eenvoudig lineaire regressie uitvoeren in Excel, met behulp van het solver ToolPak of u kunt uw eigen regressie algoritme coderen met R, python of C#.

Omdat lineaire regressie echter een goed opgebouwde techniek is die wordt ondersteund door veel verschillende hulpprogram ma's, zijn er veel verschillende interpretaties en implementaties. Niet alle soorten modellen worden even per hulp programma ondersteund. Er zijn ook enkele verschillen in de nomenclatuur die u moet naleven.

  • Regressie methoden worden vaak gecategoriseerd op basis van het aantal reactie variabelen. Meerdere lineaire regressie betekent bijvoorbeeld een model met meerdere variabelen om te voors pellen.

  • In MATLAB verwijst multidimensionale regressie naar een model met meerdere reactie variabelen.

  • In Azure Machine Learning ondersteunen regressie modellen een enkele respons variabele.

  • In de R-taal zijn de functies van lineaire regressie afhankelijk van het pakket dat u gebruikt. Zo biedt het GLM -pakket u de mogelijkheid om een logistiek regressie model met meerdere onafhankelijke variabelen te maken. In het algemeen biedt Azure Machine Learning Studio (klassiek) dezelfde functionaliteit als het R GLM -pakket.

U wordt aangeraden deze module, lineaire regressie, te gebruiken voor typische regressie problemen.

Als u daarentegen meerdere variabelen gebruikt om een klassewaarde te voors pellen, raden we u aan om de twee klasse- regressie modules voor logistiek of multi Class te gebruiken.

Als u andere lineaire regressie pakketten wilt gebruiken die beschikbaar zijn voor de R-taal, raden we u aan de script module Execute R te gebruiken en de LM -of GLM -pakketten aan te roepen, die zijn opgenomen in de runtime-omgeving van Azure machine learning Studio (klassiek).

Module parameters

Naam Bereik Type Standaard Beschrijving
Functies normaliseren alle Boolean-waarde true Geef aan of exemplaren moeten worden genormaliseerd
Gemiddelde hypo these alle Boolean-waarde true Geef aan of de laatste hypo these moet worden berekend
Leersnelheid >= double. Letter Drijvendekommagetal 0,1 Het eerste leer tempo voor de stochastische Gradient Daal Optimizer opgeven
Aantal trainings-epoches >= 0 Geheel getal 10 Geef op hoe vaak de algoritme door voor beelden moet worden herhaald. Voor gegevens sets met een klein aantal voor beelden moet dit aantal groot zijn om convergentie te bereiken.
Leer frequentie verlagen Alle Boolean-waarde true Geef aan of het leer tempo moet afnemen als de voortgang van herhalingen
L2-regularisatie gewicht >= 0,0 Drijvendekommagetal 0,001 Geef het gewicht op voor de L2-regularisatie. Gebruik een waarde die niet gelijk is aan nul om te voor komen dat deze wordt overpast.
Wille keurig getal zaad alle Geheel getal Geef een waarde op voor het seeding van de generator voor wille keurige getallen die wordt gebruikt door het model. Laat de standaard waarde leeg.
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.
Interceptie term toevoegen Alle Boolean-waarde True Geef aan of er een extra term moet worden toegevoegd voor het interceptie

Outputs

Naam Type Beschrijving
Niet-traind model ILearner-interface Een niet-uitgetraind regressie model

Zie ook

Regressie