Egyensúlyozza adatait a gépi tanuláshoz az Amazon SageMaker Data Wrangler segítségével

Forrás csomópont: 1600102

Amazon SageMaker Data Wrangler új képessége Amazon SageMaker amely vizuális interfész segítségével gyorsabbá teszi az adattudósok és mérnökök számára az adatok gépi tanulási (ML) alkalmazásokhoz való előkészítését. Több mint 300 beépített adatátalakítást tartalmaz, így gyorsan normalizálhatja, átalakíthatja és kombinálhatja a funkciókat anélkül, hogy kódot kellene írnia.

Ma örömmel jelentjük be az új átalakításokat, amelyek lehetővé teszik az adatkészletek egyszerű és hatékony kiegyensúlyozását az ML modell képzéshez. Ebben a bejegyzésben bemutatjuk, hogyan működnek ezek az átalakítások.

Új kiegyenlítő operátorok

Az újonnan bejelentett kiegyenlítő üzemeltetők a Egyenlegadatok transzformáció típusa a ÁTALAKÍTÁS HOZZÁADÁSA ablaktábla.

Jelenleg a transzformációs operátorok csak bináris osztályozási problémákat támogatnak. Bináris osztályozási problémák esetén az osztályozó feladata, hogy minden mintát két osztály valamelyikébe soroljon. Ha a többségi (nagyobb) osztály mintáinak száma lényegesen nagyobb, mint a kisebbségi (kisebb) osztály mintáinak száma, az adatkészlet kiegyensúlyozatlannak minősül. Ez a torzítás kihívást jelent az ML algoritmusok és osztályozók számára, mivel a betanítási folyamat általában a többségi osztály felé torzul.

E kihívás kezelésére olyan kiegyensúlyozási sémákat javasoltak, amelyek az adatokat kiegyensúlyozottabbá teszik az osztályozó betanítása előtt. A legegyszerűbb kiegyenlítési módszerek a kisebbségi osztály túlmintavétele a kisebbségi minták megkettőzésével, vagy a többségi osztály alulmintavétele a többségi minták eltávolításával. A szintetikus kisebbségi minták táblázatos adatokhoz való hozzáadásának ötletét először a Synthetic Minority Oversampling Technique (SMOTE) javasolta, ahol szintetikus kisebbségi mintákat hoznak létre az eredeti kisebbségi pontok párjainak interpolálásával. A SMOTE-t és más kiegyenlítő sémákat alaposan tanulmányozták empirikusan, és kimutatták, hogy javítják az előrejelzési teljesítményt különböző forgatókönyvekben, a kiadvány szerint SMOTE-hoz, vagy nem SMOTE-hoz.

A Data Wrangler mostantól a következő kiegyenlítő operátorokat támogatja a Egyenlegadatok átalakítani:

  • Véletlenszerű túlmintavételező – A kisebbségi minták véletlenszerű megkettőzése
  • Véletlenszerű alulmintavételező – Véletlenszerűen távolítsa el a többségi mintákat
  • SMOTE – Szintetikus kisebbségi minták generálása valódi kisebbségi minták interpolálásával

Most beszéljük meg részletesen a különböző kiegyenlítő operátorokat.

Véletlen túlminta

A véletlenszerű túlmintavétel magában foglalja a véletlenszerű példák kiválasztását a kisebbségi osztályból egy helyettesítéssel, és a betanítási adatok kiegészítését ennek a példánynak több példányával. Ezért lehetséges, hogy egyetlen példány többször is kiválasztható. A ... val Véletlen túlminta transzformációs típus esetén a Data Wrangler automatikusan felülmintázza a kisebbségi osztályt az adatkészletben lévő kisebbségi minták megkettőzésével.

Véletlen alulminta

A véletlenszerű alulmintavétel a véletlenszerű túlmintavétel ellentéte. Ez a módszer véletlenszerűen igyekszik mintákat kiválasztani és eltávolítani a többségi osztályból, következésképpen csökkenteni a többségi osztályban található példák számát a transzformált adatokban. A Véletlen alulminta A transzformációs típus lehetővé teszi, hogy a Data Wrangler automatikusan alulmintavételezze a többségi osztályt azáltal, hogy eltávolítja a többségi mintákat az adatkészletből.

SMOTE

A SMOTE-ban szintetikus kisebbségi mintákat adnak az adatokhoz, hogy elérjék a kívánt arányt a többségi és kisebbségi minták között. A szintetikus mintákat az eredeti kisebbségi pontok párjainak interpolálásával állítjuk elő. A SMOTE A transform támogatja az adatkészletek kiegyensúlyozását, beleértve a numerikus és nem numerikus jellemzőket. A numerikus jellemzőket a súlyozott átlag interpolálja. Súlyozott átlaginterpoláció azonban nem alkalmazható a nem numerikus jellemzőkre – lehetetlen átlagolni “dog” és a “cat” például. Ehelyett a nem numerikus jellemzőket bármelyik eredeti kisebbségi mintából másoljuk az átlagoló súlynak megfelelően.

Vegyünk például két mintát, A-t és B-t:

A = [1, 2, "dog", "carnivore"]
B = [0, 0, "cow", "herbivore"]

Tegyük fel, hogy a mintákat az A mintánál 0.3-as, a B mintánál 0.7-es súllyal interpoláljuk. Ezért a numerikus mezőket ezekkel a súlyokkal átlagoljuk, és 0.3-at, illetve 0.6-ot kapunk. A következő mező ki van töltve “dog” 0.3 valószínűséggel és “cow” 0.7 valószínűséggel. Hasonlóképpen a következő egyenlő “carnivore” 0.3 valószínűséggel és “herbivore” 0.7 valószínűséggel. A véletlenszerű másolás minden egyes jellemzőnél függetlenül történik, így az alábbi C minta egy lehetséges eredmény:

C = [0.3, 0.6, "dog", "herbivore"]

Ez a példa bemutatja, hogy az interpolációs folyamat hogyan eredményezhet irreális szintetikus mintákat, például növényevő kutyát. Ez gyakrabban fordul elő kategorikus jellemzők esetén, de előfordulhat numerikus jellemzők esetén is. Annak ellenére, hogy egyes szintetikus minták irreálisak lehetnek, a SMOTE mégis javíthatja az osztályozási teljesítményt.

A valósághűbb minták heurisztikus generálásához a SMOTE csak azokat a párokat interpolálja, amelyek közel vannak a jellemzőtérben. Technikailag minden mintát csak a legközelebbi k-szomszédjaival interpolálunk, ahol a k közös értéke 5. A mi SMOTE megvalósításunkban csak a numerikus jellemzőket használjuk a pontok közötti távolság kiszámításához (a távolságok a szomszédság meghatározására szolgálnak). minden minta). A távolságok kiszámítása előtt szokásos a numerikus jellemzők normalizálása. Vegye figyelembe, hogy a numerikus jellemzők csak a távolság kiszámítása céljából vannak normalizálva; az eredményül kapott interpolált jellemzők nincsenek normalizálva.

Most egyensúlyozzuk ki a Felnőtt adatkészlet (más néven Census Income adatkészlet) a Data Wrangler által biztosított beépített SMOTE transzformáció használatával. Ez a többváltozós adatkészlet hat numerikus jellemzőt és nyolc karakterlánc jellemzőt tartalmaz. Az adatkészlet célja egy bináris osztályozási feladat, amely a népszámlálási adatok alapján megjósolja, hogy egy egyén jövedelme meghaladja-e az évi 50,000 XNUMX dollárt, vagy sem.

Az osztályok eloszlását vizuálisan is megtekintheti, ha hisztogramot hoz létre a hisztogram elemzés típusa a Data Wranglerben. A céleloszlás kiegyensúlyozatlan és a rekordok aránya >50K nak nek <=50K körülbelül 1:4.

Ezeket az adatokat a SMOTE alatt található operátor Egyenlegadatok átalakítja a Data Wranglerben a következő lépésekkel:

  1. A pop-art design, négy időzóna kijelzése egyszerre és méretének arányai azok az érvek, amelyek a NeXtime Time Zones-t kiváló választássá teszik. Válassza a income mint a céloszlop.

Szeretnénk, ha ennek az oszlopnak az elosztása kiegyensúlyozottabb lenne.

  1. Állítsa be a kívánt arányt 0.66.

Ezért a kisebbségi és többségi minták száma közötti arány 2:3 (az 1:4 nyers arány helyett).

  1. A pop-art design, négy időzóna kijelzése egyszerre és méretének arányai azok az érvek, amelyek a NeXtime Time Zones-t kiváló választássá teszik. Válassza a SMOTE mint a használni kívánt transzformáció.
  2. Hagyja meg az alapértelmezett értékeket Szomszédok száma átlagolni, és normalizálni kell-e vagy sem.
  3. A pop-art design, négy időzóna kijelzése egyszerre és méretének arányai azok az érvek, amelyek a NeXtime Time Zones-t kiváló választássá teszik. Válassza a Preview az alkalmazott átalakítás előnézetéhez, és válassza ki hozzáad hogy hozzáadja az átalakítást az adatfolyamhoz.

Most létrehozhatunk egy új hisztogramot, hasonlóan ahhoz, amit korábban csináltunk, hogy lássuk az osztályok átrendezett eloszlását. A következő ábra a hisztogramját mutatja income oszlopban az adatkészlet kiegyensúlyozása után. A minták eloszlása ​​most a szándék szerint 3:2.

Most már exportálhatjuk ezeket az új kiegyensúlyozott adatokat, és taníthatunk rá egy osztályozót, amely kiváló előrejelzési minőséget eredményezhet.

Következtetés

Ebben a bejegyzésben bemutattuk, hogyan lehet kiegyensúlyozni a kiegyensúlyozatlan bináris osztályozási adatokat a Data Wrangler segítségével. A Data Wrangler három kiegyenlítő operátort kínál: véletlenszerű alulmintavételezést, véletlenszerű túlmintavételezést és SMOTE-t a kiegyensúlyozatlan adatkészletek adatainak kiegyensúlyozásához. A Data Wrangler által kínált mindhárom módszer támogatja a multimodális adatokat, beleértve a numerikus és nem numerikus jellemzőket.

Következő lépésként azt javasoljuk, hogy ismételje meg az ebben a bejegyzésben található példát a Data Wrangler adatfolyamában, hogy lássa, mit beszéltünk meg működés közben. Ha új a Data Wrangler ill SageMaker Stúdió, hivatkozni Ismerkedjen meg a Data Wranglerrel. Ha bármilyen kérdése van ezzel a bejegyzéssel kapcsolatban, kérjük, tegye fel a megjegyzés rovatba.


A szerzőkről

Yotam Elor az Amazon SageMaker vezető alkalmazott tudósa. Kutatási területe a gépi tanulás, különösen a táblázatos adatok esetében.

Arunprasath Shankar a mesterséges intelligencia és a gépi tanulás (AI/ML) specialistája az AWS-vel, segít a globális ügyfeleknek mesterséges intelligencia-megoldásaik hatékony és eredményes felhőben történő méretezésében. Szabadidejében Arun szívesen néz sci-fi filmeket és hallgat klasszikus zenét.

Forrás: https://aws.amazon.com/blogs/machine-learning/balance-your-data-for-machine-learning-with-amazon-sagemaker-data-wrangler/

Időbélyeg:

Még több AWS gépi tanulási blog