Delen via


Gegevensonderdeel normaliseren

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

Gebruik dit onderdeel om een gegevensset te transformeren via normalisatie.

Normalisatie is een techniek die vaak wordt toegepast als onderdeel van gegevensvoorbereiding voor machine learning. Het doel van normalisatie is het wijzigen van de waarden van numerieke kolommen in de gegevensset om een gemeenschappelijke schaal te gebruiken, zonder dat de verschillen in de waardenbereiken worden vervormd of gegevens verloren gaan. Normalisatie is ook vereist voor sommige algoritmen om de gegevens correct te modelleren.

Stel dat uw invoergegevensset één kolom bevat met waarden tussen 0 en 1 en een andere kolom met waarden tussen 10.000 en 100.000. Het grote verschil in de schaal van de getallen kan problemen veroorzaken wanneer u de waarden probeert te combineren als functies tijdens het modelleren.

Normalisatie voorkomt deze problemen door nieuwe waarden te maken die de algemene verdeling en verhoudingen in de brongegevens behouden, terwijl waarden binnen een schaal worden toegepast op alle numerieke kolommen die in het model worden gebruikt.

Dit onderdeel biedt verschillende opties voor het transformeren van numerieke gegevens:

  • U kunt alle waarden wijzigen in een schaal van 0-1 of de waarden transformeren door ze weer te geven als percentielrangen in plaats van absolute waarden.
  • U kunt normalisatie toepassen op één kolom of op meerdere kolommen in dezelfde gegevensset.
  • Als u de pijplijn wilt herhalen of dezelfde normalisatiestappen op andere gegevens wilt toepassen, kunt u de stappen opslaan als een normalisatietransformatie en deze toepassen op andere gegevenssets met hetzelfde schema.

Waarschuwing

Voor sommige algoritmen moeten gegevens worden genormaliseerd voordat een model wordt getraind. Andere algoritmen voeren hun eigen gegevensschaling of normalisatie uit. Wanneer u daarom een machine learning-algoritme kiest voor het bouwen van een voorspellend model, moet u de gegevensvereisten van het algoritme controleren voordat u normalisatie toepast op de trainingsgegevens.

Gegevens normaliseren configureren

U kunt slechts één normalisatiemethode tegelijk toepassen met behulp van dit onderdeel. Daarom wordt dezelfde normalisatiemethode toegepast op alle kolommen die u selecteert. Als u verschillende normalisatiemethoden wilt gebruiken, gebruikt u een tweede instantie van Normalize Data.

  1. Voeg het onderdeel Normalize Data toe aan uw pijplijn. U vindt het onderdeel in Azure Machine Learning, onder Gegevenstransformatie, in de categorie Schaal en Reductie .

  2. Een gegevensset verbinden die ten minste één kolom met alle getallen bevat.

  3. Gebruik de kolomkiezer om de numerieke kolommen te kiezen die u wilt normaliseren. Als u geen afzonderlijke kolommen kiest, worden standaard alle numerieke typekolommen in de invoer opgenomen en wordt hetzelfde normalisatieproces toegepast op alle geselecteerde kolommen.

    Dit kan leiden tot vreemde resultaten als u numerieke kolommen opneemt die niet moeten worden genormaliseerd. Controleer de kolommen altijd zorgvuldig.

    Als er geen numerieke kolommen worden gedetecteerd, controleert u de metagegevens van de kolom om te controleren of het gegevenstype van de kolom een ondersteund numeriek type is.

    Tip

    Als u ervoor wilt zorgen dat kolommen van een specifiek type als invoer worden opgegeven, gebruikt u het onderdeel Kolommen in gegevensset selecteren voordat u gegevens normaliseert.

  4. Gebruik 0 voor constante kolommen wanneer ingeschakeld: selecteer deze optie wanneer een numerieke kolom één onveranderlijke waarde bevat. Dit zorgt ervoor dat dergelijke kolommen niet worden gebruikt in normalisatiebewerkingen.

  5. Kies in de vervolgkeuzelijst Transformatiemethode één wiskundige functie die moet worden toegepast op alle geselecteerde kolommen.

    • Zscore: converteert alle waarden naar een z-score.

      De waarden in de kolom worden getransformeerd met behulp van de volgende formule:

      normalisatie met behulp van z-scores

      Gemiddelde en standaarddeviatie worden afzonderlijk berekend voor elke kolom. De standaarddeviatie van de populatie wordt gebruikt.

    • MinMax: De min-max normalizer herschaalt elke functie lineair naar het interval van [0,1]..

      De schaal van het interval [0,1] wordt aangepast door de waarden van elke functie te verschuiven, zodat de minimale waarde 0 is en vervolgens wordt gedeeld door de nieuwe maximale waarde (het verschil tussen de oorspronkelijke maximum- en minimale waarden).

      De waarden in de kolom worden getransformeerd met behulp van de volgende formule:

      normalisatie met de functie min-max

    • Logistiek: De waarden in de kolom worden getransformeerd met behulp van de volgende formule:

      formule voor normalisatie per logistieke functie

    • LogNormal: Met deze optie worden alle waarden geconverteerd naar een lognormale schaal.

      De waarden in de kolom worden getransformeerd met behulp van de volgende formule:

      normale verdeling van formulelogboek

      Hier μ en σ de parameters van de distributie zijn, die empirisch worden berekend op basis van de gegevens als schattingen van de maximale waarschijnlijkheid, voor elke kolom afzonderlijk.

    • TanH: Alle waarden worden geconverteerd naar een tangens hyperbolicus.

      De waarden in de kolom worden getransformeerd met behulp van de volgende formule:

      normalisatie met behulp van de tanh-functie

  6. Verzend de pijplijn of dubbelklik op het onderdeel Gegevens normaliseren en selecteer Uitvoeren geselecteerd.

Resultaten

Het onderdeel Gegevens normaliseren genereert twee uitvoerwaarden:

  • Als u de getransformeerde waarden wilt weergeven, klikt u met de rechtermuisknop op het onderdeel en selecteert u Visualiseren.

    Standaard worden waarden op hun plaats getransformeerd. Als u de getransformeerde waarden wilt vergelijken met de oorspronkelijke waarden, gebruikt u het onderdeel Kolommen toevoegen om de gegevenssets opnieuw te koppelen en de kolommen naast elkaar weer te geven.

  • Als u de transformatie wilt opslaan zodat u dezelfde normalisatiemethode op een andere gegevensset kunt toepassen, selecteert u het onderdeel en selecteert u Gegevensset registreren op het tabblad Uitvoer in het rechterdeelvenster.

    Vervolgens kunt u de opgeslagen transformaties uit de groep Transformaties van het linkernavigatiedeelvenster laden en toepassen op een gegevensset met hetzelfde schema met behulp van Transformatie toepassen.

Volgende stappen

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