Adatok csoportosítása intervallumokba

Fontos

A (klasszikus) Machine Learning Studio támogatása 2024. augusztus 31-én megszűnik. Javasoljuk, hogy addig térjen át az Azure Machine Learning használatára.

2021. december 1-től kezdve nem fog tudni létrehozni új (klasszikus) Machine Learning Studio-erőforrásokat. 2024. augusztus 31-ig továbbra is használhatja a meglévő (klasszikus) Machine Learning Studio-erőforrásokat.

A (klasszikus) ML Studio dokumentációjának kivezetése folyamatban van, és a jövőben nem várható a frissítése.

Numerikus adatokat helyez intervallumokba

Kategória: Skálázás és csökkentés

Megjegyzés

Csak a következőre vonatkozik: Machine Learning Studio (klasszikus)

Hasonló húzási modulok érhetők el Azure Machine Learning tervezőben.

A modul áttekintése

Ez a cikk azt ismerteti, hogyan használhatja a Group Data into Bins (Group Data into Bins) modult a Machine Learning Studio (klasszikus) szolgáltatásban számok csoportosítására vagy a folyamatos adatok eloszlásának módosítására.

Az Adatok csoportosítása intervallumokba modul több lehetőséget is támogat az adatok dobozolására. Testre szabhatja a doboz széleinek beállítását és az értékek intervallumokba való felosztását. Például a következőt teheti:

  • Manuálisan írjon be egy intervallumhatárként szolgáló értéksorozatot.
  • A prediktív modell intervallumainak optimalizálása érdekében számítsa ki az entrópia-pontszámokat az egyes tartományokhoz tartozó információs értékek meghatározásához. + Értékeket rendelhet intervallumokhoz kvantilisek vagy percentilisrangok használatával.
  • Az egyes intervallumokban lévő értékek számának szabályozása is szabályozható.
  • Az értékek egyenletes eloszlásának kényszerítése az intervallumokban.

További információ a dobozolásról és a csoportosításról

Az adatok dobozolása vagy csoportosítása (más néven kvantálás) fontos eszköz a numerikus adatok gépi tanuláshoz való előkészítésében, és az alábbi helyzetekben hasznos:

  • A folyamatos számok oszlopa túl sok egyedi értéket tartalmaz a hatékony modellezéshez, ezért automatikusan vagy manuálisan rendelheti hozzá az értékeket csoportokhoz, hogy kisebb tartományokat hozzon létre.

    Használhatja például az Adatok csoportosítása intervallumokba létrehozott entrópia-pontszámokat az adatértékek optimális csoportosításának azonosításához, és ezeket a csoportokat használhatja a modell jellemzőiként.

  • A számok oszlopát cserélje le adott tartományokat képviselő kategorikus értékekre.

    Előfordulhat például, hogy egyéni tartományok (például 1-15, 16-22, 23-30 stb.) megadásával szeretne értékeket csoportosítani egy koroszlopban.

  • Egy adathalmaz néhány szélsőséges értékkel rendelkezik, amelyek mindegyike a várt tartományon kívül esik, és ezek az értékek kiugró hatással vannak a betanított modellre. A modell torzításainak csökkentése érdekében az adatokat átalakíthatja egységes eloszlásra a kvantilis (vagy egyenlő magasság) módszer használatával.

    Ezzel a módszerrel az Adatok csoportosítása intervallumokba modul határozza meg az ideális intervallumhelyeket és intervallumszélességeket, így biztosítva, hogy körülbelül ugyanannyi minta kerüljön az egyes intervallumokba. Ezután a kiválasztott normalizálási módszertől függően az intervallumokban lévő értékek vagy percentilisekre lesznek átalakítva, vagy egy intervallumszámra vannak leképezve.

Példák dobozolásra

Az alábbi ábrán a numerikus értékek eloszlása látható a kvantilis módszerrel történő dobozolás előtt és után. Figyelje meg, hogy a bal oldali nyers adatokhoz képest az adatok rögzítve lettek, és egységszintű skálázásra lettek átalakítva.

raw data and data binned and normalized

A dobozolás másik megközelítését a mellrák kimutatási mintájában mutatjuk be, amelyben a dobozokba helyezett csoportadatokkal a betegeket különböző kontroll- és tesztcsoportokhoz rendelik, így garantálva, hogy minden csoportnak azonos számú betege van.

Mivel az adatok csoportosításának számos módja van, amelyek mindegyike testre szabható, javasoljuk, hogy kísérletezzen különböző módszerekkel és értékekkel. A Példák szakasz olyan mintakísérletekre mutató hivatkozásokat tartalmaz, amelyek bemutatják a különböző dobozoló algoritmusok használatát.

Csoportadatok konfigurálása intervallumokba

  1. Adja hozzá a Group Data Into Bins modult a kísérlethez a Studióban (klasszikus). Ezt a modult az Adatátalakítás kategóriában találja a Méretezés és csökkentés területen.

  2. Csatlakozás a számadatokat tartalmazó adatkészletet. A kvantálás csak numerikus adatokat tartalmazó oszlopokra alkalmazható.

    Ha az adatkészlet nem numerikus oszlopokat tartalmaz, az Adathalmaz oszlopainak kijelölése modullal jelölje ki a használni kívánt oszlopok egy részhalmazát.

  3. Adja meg a dobozolás módját. A dobozolás mód más paramétereket is meghatároz, ezért először mindenképpen a Dobozolás mód beállítást válassza! A dobozolás alábbi típusai támogatottak:

    Entrópia MDL: Ehhez a módszerhez ki kell jelölni az előrejelezni kívánt oszlopot, valamint a csoportosítani kívánt oszlopot vagy oszlopokat intervallumokba. Ezután áthalad az adatokon, és megpróbálja meghatározni az entrópiát minimalizáló intervallumok számát. Más szóval több intervallumot választ ki, amelyek lehetővé teszik, hogy az adatoszlop a legjobban előrejelezhesse a céloszlopot. Ezután visszaadja az adatok egyes soraihoz társított intervallumszámot egy nevű <colname>quantizedoszlopban.

    Ha az Entrópia MDL metódus nem talál módot az adatok eredeti dobozolására egy jó előrejelzéshez, az összes adatot egy egységes intervallumhoz rendeli. Ez nem jelenti azt, hogy az oszlop nem jó előrejelző. Ebben az esetben más módszerekkel is megkeresheti az entrópiát minimalizáló intervallumok számát, és jobb előrejelzést adhat az adatoknak.

    Ez a metódus nem adja vissza a tényleges entrópia-pontszámokat.

    Kvantilisek: A kvantilis metódus percentilisrangok alapján rendel értékeket intervallumokhoz. A kvantiliseket egyenlő magasságú dobozolásnak is nevezik.

    Egyenlő szélesség: Ezzel a beállítással meg kell adnia a dobozok teljes számát. Az adatoszlop értékei úgy vannak elhelyezve a intervallumokban, hogy minden intervallumnak azonos intervalluma legyen a kezdő és a záró érték között. Ennek eredményeképpen előfordulhat, hogy egyes intervallumok több értékkel rendelkeznek, ha az adatok egy adott pont körül vannak összecsukva.

    Egyéni élek: Megadhatja az egyes intervallumok kezdőértékeit. Az él értéke mindig a doboz alsó határa. Tegyük fel például, hogy az értékeket két intervallumba szeretné csoportosítani, az egyik 0-nál nagyobb, a másik pedig 0-nál kisebb vagy azzal egyenlő értékeket tartalmaz. Ebben az esetben a doboz széleinél 0-t kell beírnia a doboz széleinek vesszővel tagolt listájába. A modul kimenete 1 és 2 lesz, ami az egyes sorértékek intervallumindexét jelzi.

    Egyenlő szélesség egyéni Start menü és Leállítás beállítással: Ez a módszer hasonlít az Egyenlő szélesség beállításhoz, de megadhat alsó és felső intervallumhatárokat is.

  4. Intervallumok száma: Ha az Entrópia MDL, a Kvantilis és az Egyenlő szélességű dobozolás módot használja, ezzel a beállítással megadhatja, hogy hány intervallumot vagy kvantilist szeretne létrehozni.

  5. A dobozolni kívánt oszlopok esetében az Oszlopválasztóval válassza ki azokat az oszlopokat, amelyek értékeit el szeretné helyezni. Az oszlopoknak numerikus adattípusnak kell lenniük.

    A rendszer minden kiválasztott oszlopra ugyanazt a dobozolási szabályt alkalmazza. Ezért ha egyes oszlopokat más módszerrel kell intervallumba helyeznie, minden oszlopkészlethez használjon külön Csoportosítási adatok tárolókba példányát.

    Figyelmeztetés

    Ha olyan oszlopot választ, amely nem engedélyezett típus, futásidejű hiba jön létre. A modul hibát ad vissza, amint nem engedélyezett típusú oszlopot talál. Ha hibaüzenet jelenik meg, tekintse át az összes kijelölt oszlopot. A hiba nem sorolja fel az összes érvénytelen oszlopot.

  6. Kimeneti mód esetén adja meg, hogyan szeretné kimenetként megjeleníteni a kvantált értékeket.

    • Hozzáfűzés: Létrehoz egy új oszlopot a rögzített értékekkel, és hozzáfűzi azt a bemeneti táblához.

    • Hely: Az eredeti értékeket az adathalmaz új értékeire cseréli.

    • ResultOnly: Csak az eredményoszlopokat adja vissza.

  7. Ha a Quantiles dobozolási módot választja, a kvantilis normalizálási lehetőséggel meghatározhatja az értékek normalizálásának módját a kvantilisek szerinti rendezés előtt. Vegye figyelembe, hogy az értékek normalizálása átalakítja az értékeket, de nincs hatással a dobozok végső számára. Példa: A különböző normalizálási módszerek hatásai.

    A következő normalizálási típusok támogatottak:

    • Százalék: Az értékek normalizálva vannak a tartományon belül [0100]

    • PQuantile: Az értékek normalizálása a következő tartományon belül történt: [0,1]

    • QuantileIndex: Az értékek normalizálva vannak az [1,számú intervallum] tartományon belül

  8. Ha az Egyéni élek lehetőséget választja, írjon be egy vesszővel tagolt számlistát, amelyet doboz széleként szeretne használni a doboz élek + Vesszővel elválasztott lista intervallumszélek szövegmezőjében. Az értékek a dobozokat elválasztó pontot jelölik, ezért ha egy intervallum élértéket ír be, két intervallum jön létre; Ha két intervallum élértéket ír be, a rendszer három intervallumot hoz létre, és így tovább.

    Az értékeket az intervallumok létrehozásának sorrendjében kell rendezni, a legalacsonyabbtól a legmagasabbig.

  9. Ha az egyenlő szélességű egyéni Start menü és leállítás beállítást használja, meg kell adnia a dobozok határait.

    Definiálja az első doboz alsó határát úgy, hogy beír egy értéket az Első él pozíció szövegmezőbe.

    Definiálja az utolsó doboz alsó határát úgy, hogy beír egy értéket az Utolsó él pozíció szövegmezőbe.

  10. Oszlopok kategorikus címkézése: Ezzel a beállítással automatikusan metaadat-jelzőt adhat hozzá a rögzített értékek oszlopához. A metaadat-jelző azt jelzi, hogy a kvantált oszlopokat kategorikus változóként kell kezelni.

  11. Futtassa a kísérletet, vagy válassza ki ezt a modult, és kattintson a Kijelölt futtatás gombra.

Results (Eredmények)

A Group Data into Bins (Adatok csoportosítása intervallumokba ) modul egy adatkészletet ad vissza, amelyben minden elem a megadott módnak megfelelően van rögzítve.

Binning transzformációt is ad vissza, amely egy függvény, amely átadható az Átalakítás alkalmazása modulnak új adatminták dobozolásához ugyanazzal a dobozolási móddal és paraméterekkel.

Ha meg szeretné tekinteni, hogy a dobozolás módszere mennyire jól működik előrejelzőként, kattintson az adathalmaz csoportadatok és intervallumok közötti kimenetére, és hasonlítsa össze a címkeoszlopot a rögzített oszloppal. Ha a gyűjtőkbe való csoportosítás prediktív, a lapközi mátrix értékeinek néhány cellába kell koncentrálnia.

Tipp

Ne feledje, hogy ha dobozolást használ a betanítási adatokon, ugyanazt a dobozolási módszert kell használnia a teszteléshez és előrejelzéshez használt adatokon. Ez magában foglalja a dobozolás módját, a raktárhelyeket és a doboz szélességét.

Annak érdekében, hogy az adatok mindig ugyanazzal a dobozolási módszerrel legyenek átalakítva, javasoljuk, hogy mentse a hasznos adatátalakításokat, majd alkalmazza őket más adathalmazokra az Átalakítás alkalmazása modullal.

Példák

A kvantálás gépi tanulási forgatókönyvekben való alkalmazásának példáiért tekintse meg az Azure AI-katalógust:

Műszaki megjegyzések

Ez a szakasz implementálási részleteket, tippeket és válaszokat tartalmaz a gyakori kérdésekre.

A különböző normalizálási módszerek hatásai

Ha a kvantilis normalizálás lehetőséget választja, a dobozolás előtt az értékek át lesznek alakítva. Így a normalizáláshoz választott módszer erős hatással van a numerikus értékekre.

Az alábbi táblázat például azt szemlélteti, fLengthhogy a Teleszkóp adatkészletből származó egyetlen oszlop értékei hogyan alakulnak át az egyes normalizálási módszerekkel. Az oszlopot fLengthvéletlenszerűen választottuk ki az egyes lehetőségek kimeneti értékeinek szemléltetése céljából, és nem rendelkezik normál eloszlással.

Forrás (fLength) pQuantile QuantileIndex Százalék
28.7967 0.363636 4 36.363636
31.6036 0.454545 5 45.454545
162.052 0.909091 10 90.909091
23.8172 0.272727 3 27.272727

A dobozolás eredménye minden metódushoz hasonló.

Az alábbi ábra az oszlop értékeinek eloszlását mutatja be a dobozolás előtt és után, az alapértelmezett 10 intervallum használatával.

Comparison of Normalization Methods for Binning

Megvalósítás részletei

  • A kvantálás során minden szám egy intervallumra van leképezve úgy, hogy összehasonlítja annak értékét a doboz széleinek értékeivel.

    Ha például az érték 1,5, az intervallum élei pedig 1, 2 és 3, akkor az elem a 2-es intervallumszámra lesz leképezve. A 0,5 érték az 1-es intervallumra (az alulcsordulási intervallumra) lesz leképezve, a 3,5 érték pedig a 4-es intervallumra (a túlcsordulási intervallumra) lesz leképezve.

  • Ha a dobozolandó oszlop (kvantálás) ritka, akkor az eredményként kapott oszlop kitöltésekor az intervallumindex eltolása (kvantilis eltolása) lesz felhasználva. Az eltolás úgy van kiválasztva, hogy a ritka 0 mindig a 0 indexű intervallumba kerül (más szóval a 0 értékkel rendelkező kvantilishez).

  • A ritka nullák propagálva lesznek a bemenetből a kimeneti oszlopba.

  • A sűrű oszlopok feldolgozása mindig 1-nek megfelelő minimális intervallumindexet eredményez; vagyis a minimális kvantilisérték megegyezik az oszlopban található minimális értékkel. Ugyanakkor egy ritka oszlop feldolgozása változó minimális intervallumindexet (minimális kvantilis értéket) eredményez.

  • A rendszer a bemeneti oszlopból a kimeneti oszlopba propagálja az összes NaN-t és a hiányzó értékeket. Az egyetlen kivétel az, amikor a modul kvantilis indexeket ad vissza. Ebben az esetben az összes NaN hiányzó értékre lesz előléptetve.

  • A bin.indexek 1-alapúak. Ez a kvantilisek (1. kvantilis, 2. kvantilis stb.) természetes konvenciója. Az egyetlen kivétel az a helyzet, amikor a dobozba helyezett oszlop ritka.

Várt bemenetek

Név Típus Description
Adathalmaz Adattábla Elemezni kívánt adathalmaz

Modulparaméterek

Name Tartomány Típus Alapértelmezett Description
Dobozolás mód Lista QuantizationMode Kvantilisek Dobozolási módszer kiválasztása
Intervallumba helyezett oszlopok bármelyik ColumnSelection NumericAll Oszlopok kiválasztása kvantáláshoz
Kimeneti mód bármelyik OutputTo A kvantált oszlopok kimenetének jelzése
Oszlopok címkézése kategorikusként bármelyik Logikai true Annak jelzése, hogy a kimeneti oszlopok kategorikusként legyenek-e megjelölve
Intervallumok száma >=1 Egész szám 10 Adja meg a kívánt számú intervallumot
Kvantilis normalizálás bármelyik BinningNormalization A kvantilisek normalizálásának módszerének kiválasztása
Első él pozíciója bármelyik Float 0,0 Adja meg az első intervallum élének értékét
Doboz szélessége bármelyik Float 0,5 Egyéni intervallumszélesség megadása
Utolsó él pozíciója bármelyik Float 1.0 Adja meg az utolsó intervallum szélének értékét
Intervallumszélek vesszővel tagolt listája bármelyik Sztring Írjon be egy vesszővel tagolt számlistát, amelyet intervallumszélként szeretne használni

Kimenetek

Név Típus Description
Kvantált adatkészlet Adattábla Adatkészlet kvantált oszlopokkal
Binning átalakítás ITransform-felület Az adathalmazra kvantálást alkalmazó átalakítás

Kivételek

Kivétel Description
0003-os hiba Kivétel akkor fordul elő, ha egy vagy több bemenet null értékű vagy üres.
0004-s hiba Kivétel akkor fordul elő, ha a paraméter kisebb vagy egyenlő egy adott értékkel.
0011-s hiba Kivétel akkor fordul elő, ha az átadott oszlophalmaz argumentum egyik adathalmazoszlopra sem vonatkozik.
0021-s hiba Kivétel akkor fordul elő, ha a modulnak átadott adathalmazok egy részének sorainak száma túl kicsi.
0024-s hiba Kivétel akkor fordul elő, ha az adathalmaz nem tartalmaz címkeoszlopot.
0020-ás hiba Kivétel akkor fordul elő, ha a modulnak átadott adathalmazok némelyikében túl kicsi az oszlopok száma.
0038-ás hiba Kivétel akkor fordul elő, ha a várt elemek számának pontos értéknek kell lennie, de nem.
0005-ös hiba Kivétel akkor fordul elő, ha a paraméter kisebb egy adott értéknél.
0002-s hiba Kivétel akkor fordul elő, ha egy vagy több paraméter nem elemezhető vagy konvertálható a megadott típusból a célmetódus típusa által megköveteltre.
0019-s hiba Kivétel akkor fordul elő, ha az oszlop várhatóan rendezett értékeket tartalmaz, de nem.
0039-s hiba Kivétel akkor történik, ha a művelet meghiúsult.
0075-ös hiba Kivétel akkor fordul elő, ha érvénytelen dobozoló függvényt használ egy adatkészlet kvantálásakor.

A Studio (klasszikus) modulokkal kapcsolatos hibák listáját Machine Learning hibakódok között találja.

Az API-kivételek listájáért lásd Machine Learning REST API hibakódjait.

Lásd még

Skálázás és csökkentés
Adatok normalizálása
Értékek levágása