Groepeer gegevens in het onderdeel Bins
In dit artikel wordt beschreven hoe u de groepsgegevens gebruikt in het onderdeel Bins in azure Machine Learning Designer om getallen te groeperen of de distributie van doorlopende gegevens te wijzigen.
Het onderdeel Group Data into Bins ondersteunt meerdere opties voor binning-gegevens. U kunt aanpassen hoe de bin-randen worden ingesteld en hoe waarden in de opslaglocaties worden verdeeld. U kunt bijvoorbeeld het volgende doen:
- Typ handmatig een reeks waarden die moeten fungeren als de bin-grenzen.
- Waarden toewijzen aan bins met behulp van kwantielen of percentielrangen.
- Forceer een gelijkmatige verdeling van waarden in de opslaglocaties.
Meer informatie over binning en groepering
Binning- of groeperingsgegevens (ook wel kwantisatie genoemd) is een belangrijk hulpmiddel bij het voorbereiden van numerieke gegevens voor machine learning. Dit is handig in scenario's zoals deze:
Een kolom met doorlopende getallen heeft te veel unieke waarden om effectief te modelleren. U kunt de waarden automatisch of handmatig toewijzen aan groepen om een kleinere set discrete bereiken te maken.
U wilt een kolom met getallen vervangen door categorische waarden die specifieke bereiken vertegenwoordigen.
U kunt bijvoorbeeld waarden in een leeftijdskolom groeperen door aangepaste bereiken op te geven, zoals 1-15, 16-22, 23-30 enzovoort voor demografische gebruikers.
Een gegevensset heeft enkele extreme waarden, allemaal goed buiten het verwachte bereik, en deze waarden hebben een grote invloed op het getrainde model. Als u de vooroordelen in het model wilt beperken, kunt u de gegevens transformeren naar een uniforme verdeling met behulp van de methode kwantielen.
Met deze methode bepaalt het onderdeel Groepsgegevens in Bins de ideale bin-locaties en bin-breedtes om ervoor te zorgen dat ongeveer hetzelfde aantal steekproeven in elke bin valt. Afhankelijk van de normalisatiemethode die u kiest, worden de waarden in de bins omgezet in percentielen of toegewezen aan een bin-getal.
Voorbeelden van binning
In het volgende diagram ziet u de verdeling van numerieke waarden vóór en na binning met de methode kwantielen . U ziet dat in vergelijking met de onbewerkte gegevens aan de linkerkant de gegevens zijn binned en getransformeerd naar een normale schaal van een eenheid.
Omdat er zoveel manieren zijn om gegevens te groeperen, raden we u aan om te experimenteren met verschillende methoden en waarden.
Groepsgegevens configureren in bins
Voeg het onderdeel Group Data Into Bins toe aan uw pijplijn in de ontwerpfunctie. U vindt dit onderdeel in de categorie Gegevenstransformatie.
Koppel de gegevensset met numerieke gegevens aan de bin. Kwantisatie kan alleen worden toegepast op kolommen die numerieke gegevens bevatten.
Als de gegevensset niet-numerieke kolommen bevat, gebruikt u het onderdeel Kolommen selecteren in gegevensset om een subset van kolommen te selecteren waarmee u wilt werken.
Geef de binning-modus op. De binning-modus bepaalt andere parameters, dus zorg ervoor dat u eerst de optie Binning-modus selecteert. De volgende typen binning worden ondersteund:
Kwantielen: De kwantielmethode wijst waarden toe aan bins op basis van percentielrangen. Deze methode wordt ook wel binning van gelijke hoogte genoemd.
Gelijke breedte: Met deze optie moet u het totale aantal bins opgeven. De waarden uit de gegevenskolom worden in de klassen geplaatst, zodat elke bin hetzelfde interval heeft tussen begin- en eindwaarden. Als gevolg hiervan kunnen sommige bins meer waarden hebben als gegevens rond een bepaald punt zijn geknipt.
Aangepaste randen: u kunt de waarden opgeven die aan elke bin beginnen. De randwaarde is altijd de ondergrens van de bin.
Stel dat u waarden wilt groeperen in twee klassen. Een heeft waarden groter dan 0 en één heeft waarden kleiner dan of gelijk aan 0. In dit geval voert u voor bin-randen 0 in de door komma's gescheiden lijst met bin-randen in. De uitvoer van het onderdeel is 1 en 2, waarmee de bin-index voor elke rijwaarde wordt aangegeven. Houd er rekening mee dat de lijst met door komma's gescheiden waarden in oplopende volgorde moet staan, zoals 1, 3, 5, 7.
Notitie
De Entropy MDL-modus is gedefinieerd in Studio (klassiek) en er is nog geen bijbehorende opensource-pakket dat kan worden gebruikt voor ondersteuning in Designer.
Als u de binningmodi Kwantielen en Gelijke breedte gebruikt, gebruikt u de optie Aantal bins om op te geven hoeveel bins of kwantielen u wilt maken.
Gebruik de kolomkiezer om de kolommen te kiezen met de waarden die u wilt bineren. Kolommen moeten een numeriek gegevenstype zijn.
Dezelfde binning-regel wordt toegepast op alle toepasselijke kolommen die u kiest. Als u een aantal kolommen wilt binnen met behulp van een andere methode, gebruikt u een afzonderlijk exemplaar van de groepsgegevens in het onderdeel Bins voor elke set kolommen.
Waarschuwing
Als u een kolom kiest die geen toegestaan type is, wordt er een runtimefout gegenereerd. Het onderdeel retourneert een fout zodra een kolom van een niet-toegestaan type wordt gevonden. Als er een fout optreedt, controleert u alle geselecteerde kolommen. De fout bevat niet alle ongeldige kolommen.
Geef voor de uitvoermodus aan hoe u de gekwantiseerde waarden wilt uitvoeren:
Toevoegen: Hiermee maakt u een nieuwe kolom met de binned-waarden en voegt u deze toe aan de invoertabel.
Inplace: Vervangt de oorspronkelijke waarden door de nieuwe waarden in de gegevensset.
ResultOnly: Retourneert alleen de resultaatkolommen.
Als u de binningmodus Quantiles selecteert, gebruikt u de optie Kwantielnormalisatie om te bepalen hoe waarden worden genormaliseerd voordat u sorteert in kwantielen. Houd er rekening mee dat het normaliseren van waarden de waarden transformeert, maar niet van invloed is op het uiteindelijke aantal bins.
De volgende normalisatietypen worden ondersteund:
Percentage: Waarden worden genormaliseerd binnen het bereik [0.100].
PQuantile: waarden worden genormaliseerd binnen het bereik [0,1].
QuantileIndex: waarden worden genormaliseerd binnen het bereik [1,aantal bins].
Als u de optie Aangepaste randen kiest, voert u een door komma's gescheiden lijst met getallen in die moeten worden gebruikt als bin-randen in het tekstvak Met door komma's gescheiden lijst met bin-randen .
De waarden markeren het punt dat bins deelt. Als u bijvoorbeeld één bin edge-waarde invoert, worden er twee bins gegenereerd. Als u twee bin edge-waarden invoert, worden er drie bins gegenereerd.
De waarden moeten worden gesorteerd in de volgorde waarin de opslaglocaties worden gemaakt, van laag naar hoog.
Selecteer de tagkolommen als categorische optie om aan te geven dat de gekwantiseerde kolommen moeten worden verwerkt als categorische variabelen.
Verzend de pijplijn.
Resultaten
Het onderdeel Groepsgegevens in bins retourneert een gegevensset waarin elk element is binned volgens de opgegeven modus.
Het retourneert ook een binning-transformatie. Deze functie kan worden doorgegeven aan het onderdeel Transformatie toepassen om nieuwe voorbeelden van gegevens te bineren met behulp van dezelfde binning-modus en parameters.
Tip
Als u binning gebruikt voor uw trainingsgegevens, moet u dezelfde binning-methode gebruiken voor gegevens die u gebruikt voor testen en voorspellingen. U moet ook dezelfde bin-locaties en bin-breedte gebruiken.
Om ervoor te zorgen dat gegevens altijd worden getransformeerd met behulp van dezelfde binning-methode, raden we u aan nuttige gegevenstransformaties op te slaan. Pas deze vervolgens toe op andere gegevenssets met behulp van het onderdeel Transformatie toepassen.
Volgende stappen
Bekijk de set onderdelen die beschikbaar zijn voor Azure Machine Learning.