Funkcióválasztás a gépi tanulásban

Szia Habr!

Mi a Reksoftnál fordítottuk le a cikket oroszra Funkcióválasztás a gépi tanulásban. Reméljük, mindenkinek hasznos lesz, akit érdekel a téma.

A való világban az adatok nem mindig olyan tiszták, mint azt az üzleti ügyfelek néha gondolják. Ezért van kereslet az adatbányászat és az adatcsavarás. Segít azonosítani a hiányzó értékeket és mintákat a lekérdezés-strukturált adatokban, amelyeket az emberek nem tudnak azonosítani. Annak érdekében, hogy ezeket a mintákat az adatokban felfedezett összefüggések segítségével előre jelezze, a gépi tanulás jól jöhet.

Bármely algoritmus megértéséhez meg kell néznie az adatok összes változóját, és ki kell találnia, hogy ezek a változók mit jelentenek. Ez kritikus fontosságú, mert az eredmények mögött meghúzódó indoklás az adatok megértésén alapul. Ha az adatok 5 vagy akár 50 változót tartalmaznak, akkor mindegyiket megvizsgálhatja. Mi van, ha 200-an vannak? Akkor egyszerűen nem lesz elég idő minden egyes változó tanulmányozására. Sőt, egyes algoritmusok nem működnek kategorikus adatok esetén, és ezután az összes kategorikus oszlopot kvantitatív változókká kell konvertálni (lehet, hogy kvantitatívnak tűnnek, de a metrikák azt mutatják, hogy kategorikusak), hogy hozzáadja őket a modellhez. Így a változók száma növekszik, és körülbelül 500. Mit tegyünk most? Azt gondolhatnánk, hogy a válasz a dimenziók csökkentése lenne. A dimenziócsökkentő algoritmusok csökkentik a paraméterek számát, de negatív hatással vannak az értelmezhetőségre. Mi van, ha vannak más technikák, amelyek kiküszöbölik a funkciókat, miközben a többieket könnyen érthetővé és értelmezhetővé teszik?

Attól függően, hogy az elemzés regresszión vagy osztályozáson alapul, a jellemző kiválasztási algoritmusok eltérőek lehetnek, de megvalósításuk fő gondolata ugyanaz marad.

Erősen korrelált változók

Az egymással erősen korreláló változók ugyanazt az információt adják a modellnek, így nem kell mindegyiket felhasználni az elemzéshez. Például, ha egy adatkészlet tartalmazza az "Online idő" és a "Felhasznált forgalom" jellemzőket, akkor feltételezhetjük, hogy ezek némileg korrelálnak, és akkor is erős korrelációt fogunk látni, ha elfogulatlan adatmintát választunk. Ebben az esetben e változók közül csak az egyikre van szükség a modellben. Ha mindkettőt használja, a modell túl lesz illesztve, és elfogul egy adott funkció felé.

P-értékek

Az olyan algoritmusokban, mint a lineáris regresszió, mindig jó ötlet egy kezdeti statisztikai modell. Segít megmutatni a jellemzők fontosságát a modell által kapott p-értékeiken keresztül. A szignifikanciaszint beállítása után ellenőrizzük a kapott p-értékeket, és ha valamelyik érték a megadott szignifikanciaszint alatt van, akkor ezt a tulajdonságot szignifikánsnak nyilvánítjuk, azaz értékének változása valószínűleg az érték változásához vezet. a célpont.

Közvetlen kiválasztás

Az előre irányuló szelekció egy olyan technika, amely lépésenkénti regressziót alkalmaz. A modellépítés egy teljes nullával, azaz egy üres modellel kezdődik, majd minden iteráció hozzáad egy változót, amely javítja a készülő modellt. Azt, hogy melyik változót adjuk hozzá a modellhez, a szignifikancia határozza meg. Ezt különféle mérőszámok segítségével lehet kiszámítani. A legáltalánosabb módszer az eredeti statisztikai modellben kapott p-értékek használata az összes változó felhasználásával. Néha az előre kiválasztás a modell túlillesztéséhez vezethet, mert lehetnek erősen korrelált változók a modellben, még akkor is, ha ugyanazt az információt szolgáltatják a modellnek (de a modell továbbra is javulást mutat).

Fordított kiválasztás

A fordított szelekció magában foglalja a tulajdonságok lépésről lépésre történő kiküszöbölését is, de az előre irányuló szelekcióhoz képest ellenkező irányban. Ebben az esetben a kezdeti modell minden független változót tartalmaz. A változók ezután megszűnnek (iterációnként egy), ha nem adnak értéket az új regressziós modellhez minden iterációban. A funkciók kizárása a kezdeti modell p-értékein alapul. Ez a módszer is bizonytalan az erősen korrelált változók eltávolításakor.

Rekurzív jellemzők kiküszöbölése

Az RFE egy széles körben használt technika/algoritmus a jelentős jellemzők pontos számának kiválasztására. Néha a módszert számos „legfontosabb” jellemző magyarázatára használják, amelyek befolyásolják az eredményeket; és néha nagyon sok változó (körülbelül 200-400) csökkentésére, és csak azok maradnak meg, amelyek legalább valamennyire hozzájárulnak a modellhez, és az összes többit kizárják. Az RFE rangsorolási rendszert használ. Az adatkészlet jellemzői rangokhoz vannak rendelve. Ezek a rangok azután a jellemzők rekurzív kiküszöbölésére szolgálnak a köztük lévő kollinearitás és ezen jellemzők modellbeli fontossága alapján. A jellemzők rangsorolása mellett az RFE képes megmutatni, hogy ezek a jellemzők fontosak-e vagy sem egy adott számú funkcióhoz (mert nagyon valószínű, hogy a kiválasztott jellemzők száma nem optimális, és a jellemzők optimális száma akár több is lehet vagy kisebb, mint a kiválasztott szám).

Funkció fontossági diagram

Amikor a gépi tanulási algoritmusok értelmezhetőségéről beszélünk, általában a lineáris regressziókat (amelyek lehetővé teszik a jellemzők fontosságának elemzését p-értékek segítségével) és a döntési fákat (szó szerint fa formájában mutatják be a jellemzők fontosságát, és a ugyanakkor hierarchiájuk). Másrészt az olyan algoritmusok, mint a Random Forest, a LightGBM és az XG Boost, gyakran használnak jellemző fontossági diagramot, vagyis a változók diagramját és „fontossági számukat” ábrázolják. Ez különösen akkor hasznos, ha strukturált indoklást kell adnia az attribútumok fontosságáról a vállalkozásra gyakorolt ​​hatásuk szempontjából.

Szabályozás

A szabályosítás az elfogultság és a variancia közötti egyensúly szabályozása érdekében történik. A torzítás azt mutatja meg, hogy a modell mennyire illesztette túl a betanítási adatkészletet. Az eltérés azt mutatja, hogy mennyire különböztek az előrejelzések a képzési és a tesztadatkészlet között. Ideális esetben a torzításnak és a szórásnak kicsinek kell lennie. Itt jön a segítség a rendszeresítés! Két fő technika létezik:

L1 szabályosítás – Lasso: A Lasso megbünteti a modellsúlyokat, hogy megváltoztassák azok fontosságát a modellben, és akár nullázhatja is azokat (azaz eltávolítja ezeket a változókat a végső modellből). A Lasso-t általában akkor használják, ha egy adatkészlet nagyszámú változót tartalmaz, és ki szeretne zárni néhányat, hogy jobban megértse, hogyan hatnak a fontos jellemzők a modellre (vagyis a Lasso által kiválasztott és fontosságot tulajdonított jellemzők).

L2 Regularizálás – Ridge módszer: A Ridge feladata az összes változó tárolása, és egyúttal fontosságot tulajdonítani nekik a modell teljesítményéhez való hozzájárulásuk alapján. A Ridge akkor jó választás, ha az adatkészlet kevés változót tartalmaz, és mindegyik szükséges a megállapítások és eredmények értelmezéséhez.

Mivel a Ridge az összes változót megtartja, a Lasso pedig jobban meg tudja állapítani fontosságukat, egy algoritmust fejlesztettek ki, amely egyesíti mindkét regularizáció legjobb tulajdonságait, az Elastic-Net néven ismert.

A gépi tanuláshoz sokkal több lehetőség van a funkciók kiválasztására, de a fő gondolat mindig ugyanaz: mutasd be a változók fontosságát, majd a kapott fontosság alapján szüntess meg néhányat. A fontosság nagyon szubjektív fogalom, hiszen nem csak egy, hanem egy egész mérőszám és diagram használható a kulcsfontosságú attribútumok megtalálásához.

Köszönöm hogy elolvastad! Boldog tanulást!

Forrás: will.com

Hozzászólás