Gekissimo.net - Opi ansaitsemaan rahaa webilläsi Internetissä!

Kaksisuuntainen koneoppiminen arviointia ja päätelmiä varten

Seuraava artikkeli auttaa sinua: Kaksisuuntainen koneoppiminen arviointia ja päätelmiä varten

Kun riippumattomia muuttujia on suuri määrä, prosessit, kuten ominaisuuden valinta ja ominaisuuksien eliminointi, ovat todennäköisesti merkityksellisiä hyödynnettäessä merkityksellisimpien valinnassa. Joissakin olosuhteissa on kuitenkin suuri mahdollisuus ottaa käyttöön harha, joka tunnetaan nimellä regularisointi, esitestaus tai ominaisuusvalintaharha. Tässä artikkelissa keskitytään ymmärtämään kaksinkertaisten puolueellisten koneoppimisalgoritmien toiminnallisuutta harhan eliminoimiseksi ja harhaan liittyvän kausaalisen johtopäätöksen luomiseksi. Seuraavassa on käsiteltävät aiheet.

Sisällysluettelo

  1. Mikä on kaksinkertainen/debiased ML?
  2. Kuinka kaksinkertainen/debiased ML toimii?
  3. Miksi näytteen jakaminen on tärkeää?
  4. Double/Debied ML:n toteuttaminen DoubleML:llä

Kaksoiskoneoppimisen lähestymistapa on yhdistelmä ortogonalisoitua koneoppimista ja näytteiden jakamista. Aloitetaan ymmärtämällä kaksinkertainen / puolueellinen koneoppiminen.

Mikä on kaksinkertainen/debiased ML?

Debiased koneoppiminen on metamenetelmä, joka käyttää harhakorjausta ja otosjakamista koneoppimisfunktioiden (eli skalaariyhteenvedon) luottamusvälien laskemiseen.

Algoritmi tarjoaa ei-symptoottisen puolueettoman koneoppimislauseen, jota sovelletaan kaikkiin minkä tahansa koneoppimisalgoritmin globaaleihin tai paikallisiin toimintoihin, jotka täyttävät muutamat tulkittavissa olevat perusrajoitukset. Algoritmi johtaa yksinkertaisiin vaatimuksiin, joita käyttäjät voivat käyttää muuntaakseen nykypäivän oppimisteorian arvot klassisiksi tilastollisiksi päätelmiksi.

Mikä on tavoite?

Erittäin monimutkaisessa ympäristössä Double/Debiased koneoppimistekniikka tarjoaa yksinkertaisen ja yleisen tavan arvioida ja päätellä kiinnostava matalaulotteinen parametri.

Suuri monimutkaisuus osoittaa, että haittaparametrin parametriavaruuden entropia kasvaa otoskoon myötä. Kiinnostava parametri on yleensä syy- tai hoitovaikutusparametri.

Etsitkö täydellistä arkistoa tietotieteessä käytettävistä Python-kirjastoista, katso tästä.

Kuinka kaksinkertainen/debiased ML toimii?

Päätavoitteena on tarjota yleinen kehys matalaulotteisen parametrin arvioimiseksi ja päätelmien tekemiseksi suuren ulottuvuuden häiritsevän parametrin läsnä ollessa, joka voidaan estimoida uusilla ei-parametrisilla tilastomenetelmillä.

  • Haittaparametri on toissijainen populaatioparametri, joka on otettava huomioon, jotta ensisijaiselle parametrille voidaan tuottaa arvioitu arvo.

Regressioongelmassa naiivi lähestymistapa kiinnostavan parametrin estimointiin ML-menetelmiä käyttämällä olisi esimerkiksi rakentaa pitkälle kehitetty ML-estimaattori regressiofunktion oppimiseksi. Oletetaan selvyyden vuoksi, että tiedot jaetaan satunnaisesti kahteen yhtä suureen osaan (pää- ja apunäytteet). Otoksen jakaminen on tärkeässä roolissa harhan voittamisessa.

Nyt olisi kaksi arviota, jotka saataisiin käyttämällä apu- ja pääotosta. Päänäytteestä saadun estimaattorin konvergenssinopeus on yleensä hitaampi. Tämän “alempiarvoisen” käytöksen liikkeellepaneva voima on apunäytteestä oppimisen harha

🔥 Empfohlen:  Webinaarin päätelmä: Taidot, joita voit ruokkia digitaalisen markkinoinnin uraasi varten

Tämä käyttäytyminen johtuu tietyistä termeistä, joilla on nollasta poikkeava keskiarvo. Näillä termeillä on nollasta poikkeava keskiarvo, koska korkean ulottuvuuden tai muuten erittäin monimutkaisissa olosuhteissa meidän on käytettävä säänneltyjä estimaattoreita – kuten lassoa, harjannetta, tehostusta tai rangaistavia hermoverkkoja – jotta informatiivinen oppiminen olisi mahdollista. Näiden estimaattoreiden regularisointi estää estimaattorin varianssia paisumasta, mutta se myös tuo estimaattiin vakavia harhoja. Tarkemmin sanottuna estimaattorin poikkeaman konvergenssinopeus keskiarvon neliövirheen merkityksessä on tyypillisesti pienempi kuin ‘1’. Siten termien summa, joilla on nollasta poikkeava keskiarvo, olisi stokastisessa järjestyksessä, joka pyrkii äärettömään.

Mutta poikkeamien laillistaminen luo toisen harhan, joka tunnetaan nimellä regularized bias. Tämäntyyppisen harhan lieventämiseksi algoritmi käyttää “ortogonalisoitua” muotoilua. Tämä formulaatio saadaan suoraan osittaista poista riippumattomien muuttujien vaikutus hoitomuuttujasta ortogonalisoidun regressorin saamiseksi.

  • Ositus on tilastollinen menetelmä, jolla kontrolloidaan muuttujan tai tekijöiden joukon vaikutusta muihin kiinnostaviin muuttujiin (tyypillisesti riippuvaisiin ja riippumattomiin muuttujiin). Ositus auttaa tietyn yhteyden selkiyttämisessä poistamalla muiden mahdollisesti kytkettävien muuttujien vaikutuksen.

Erityisesti laskettu ortogonaalinen regressori sisältää ML-estimaattorin, joka on johdettu datan apunäytteestä. Ratkaise nyt riippumattomien muuttujien avulla apuennusteongelma hoitomuuttujan (kiinnostavan parametrin) ehdollisen keskiarvon arvioimiseksi. Loppujen lopuksi se on “kaksoisennustus” tai “kaksoiskoneoppiminen”.

Apunäytteestä tuotetun estimaattorin osittaisen ja estimoimisen jälkeen rakennetaan seuraava “poistettu” koneoppimisestimaattori havaintojen päänäytteestä hankitulle estimaattorille.

Miksi näytteen jakaminen on tärkeää?

Otosjakamisen käyttö on avainasemassa sen määrittämisessä, että jäännöstermit katoavat todennäköisyydessään. Koko estimointivirheen yhtälö on jaettu kolmeen komponenttiin, jotka ovat

  • Johtava termi sisältää debiased koneoppimisestimaattorin.
  • Toinen termi kuvaa regularisointiharhan vaikutusta eri näytteiden estimaattorin arvioinnissa.
  • Jäljelle jäävä termi sisältää rakenteellisten havaitsemattomien tulojen normalisoidut summat käytetystä mallista, kuten lasso, puupohjainen.

Jäljellä oleva termi on osoitettava katoavan todennäköisyydellä, jotta arvio olisi tasapainoinen. Näytteen jakamisen käyttö mahdollistaa tällaisten termien yksinkertaisen ja tiukan hallinnan.

🔥 Empfohlen:  Kuinka integroida ShortPixel Magento-kuvan optimointia varten

Tämän näkemiseksi oletetaan, että havainnot ovat riippumattomia, ja muista, että estimaattori on saatu apunäytteen havainnoista. Sitten ehdollistamalla apunäytteellä on helppo varmistaa, että jäännöstermin keskiarvo on nolla ja varianssi pyrkii 0:aan. Siten termi katoaa todennäköisyydessään Tšebyshevin epäyhtälöllä.

Vaikka otoksen jakaminen mahdollistaa jäännöstermien käsittelyn, sen suorassa sovelluksessa on se haittapuoli, että kiinnostavan parametrin estimaattori käyttää vain päänäytettä, mikä voi johtaa merkittävään tehokkuuden heikkenemiseen, koska käytämme vain osaa käytettävissä olevista tiedot.

Voi kuitenkin olla mahdollista vaihtaa pää- ja apunäytteen roolit toisen version generoimiseksi kiinnostavan parametrin estimaattorista. Voimme palauttaa täydellisen tehokkuuden laskemalla kahden tuloksena olevan estimaattorin keskiarvon. Koska kaksi estimaattoria ovat suurin piirtein riippumattomia, niiden pelkkä keskiarvon laskeminen on tehokas tekniikka. Tätä näytteenjakomenettelyä, jossa pää- ja lisänäytteiden roolit vaihdetaan useiden arvioiden saamiseksi ja tulosten keskiarvon laskemiseksi, kutsutaan ristiinsovitukseksi.

Double/Debied ML:n toteuttaminen DoubleML:llä

Tässä artikkelissa käytetään regressiotietoja, joten vertaamme DoubleML:n tuloksia päätöspuun regressorille, Random Forest Regressorille ja XGBoost Regressorille.

Tässä artikkelissa käytetty tietojoukko liittyy WHO:n vuosina 2000–2015 julkaisemaan elinajanodotteeseen. Siinä on yhteensä 22 ominaisuutta, mukaan lukien tavoitemuuttuja, joka on “Odotusaika”. Tavoitemuuttuja sisältää tiedot väestön odotettavissa olevasta iästä eri maissa eri terveydenhuollon piirteiden perusteella.

DoubleML on Python- ja R-moduuli, joka toteuttaa kaksois-/debiased koneoppimiskehyksen. Python-paketti perustuu sci-kit learningiin, kun taas R-paketti perustuu mlr3- ja mlr3-ekosysteemiin. Se yksinkertaistaa Double/Debiased-algoritmin käyttöä.

Double ML:n asennus

! pip-asennus DoubleML

Tuo tarvittavat kirjastot

tuonti numpy muodossa np tuonti pandat pd-muodossa tuonti doubleml dml muodossa xgboost tuonti XGBClassifier, XGBRegressor kohteesta sklearn.ensemble tuonti RandomForestRegressor osoitteesta sklearn.tree tuonti DecisionTreeRegressor tuonti matplotlib.pyplot muodossa plt tuonti seaborn as sns

Tietojen lukeminen ja esikäsittely

data=pd.read_csv(‘Life Expectancy Data.csv’) data.head()

Analytics India -lehti

data_utils=data.dropna(axis=0) kohteesta sklearn.preprocessing import LabelEncoder encoder=LabelEncoder() data_utils[‘status_enc’]=encoder.fit_transform(data_utils[‘Status’])

Alusta datan taustajärjestelmä

Käytetään pakettia DoubleML arvioidaksemme odotettavissa olevan elinajan (‘Elinajanodote’) keskimääräinen hoitovaikutus aikuisten kuolleisuuteen (‘aikuisten kuolleisuus’).

Features_base=[‘infant deaths’,’Alcohol’, ‘percentage expenditure’, ‘Hepatitis B’,
‘Measles ‘, ‘ BMI ‘, ‘under-five deaths ‘, ‘Polio’, ‘Total expenditure’,
‘Diphtheria ‘, ‘ HIV/AIDS’, ‘GDP’, ‘Population’,
‘ thinness 1-19 years’, ‘ thinness 5-9 years’,
‘Income composition of resources’, ‘Schooling’, ‘status_enc’, ‘Year’]

🔥 Empfohlen:  10 parasta sivustoa Facebook Status -tykkäyksiä varten vuonna 2023

data_dml_base = dml.DoubleMLData(data_utils, y_col=”Aikuisten kuolleisuus”, d_cols=”Elinajanodote “, x_cols=features_base)

‘DoubleMLData’-funktion on määriteltävä tiedot, hoitomuuttuja, tässä tapauksessa sen ‘Elinajanodote’ tulossarake, joka tässä tapauksessa on ‘Aikuiskuolleisuus’, ja luettelo ominaisuuksista, joita käytetään itsenäisenä muuttujana.

Analytics India -lehti

Double ML -mallin rakentaminen

Tämä artikkeli edellyttää vain osittaisen lineaarisen regression käyttöä, jota käytetään, kun käsittelymuuttuja

Double ML tarjoaa neljä mallia: Osittain lineaariset regressiomallit (PLR), Osittain lineaariset IV-regressiomallit (PLIV), Interaktiiviset regressiomallit (IRM) ja Interactive IV -regressiomallit (IIVM).

puut = Päätöspuun regressio _folds = 3) dml_plr_tree. fit(store_predictions=True) tree_summary_plr = dml_plr_tree.summary tree_summary_plr

Analytics India -lehti

Tämä PLR on päätöspuun regressorille, samoin kaksi muuta mallia rakennettaisiin yksi satunnaiselle metsäregressorille ja toinen XG-tehostusregressorille.

randomForest = RandomForestRegressor( n_estimators=500, max_depth=7, max_features=3, min_samples_leaf=3) np.random.seed(123) dml_plr_forest = dml.DoubleMLPLR(data_dml_ foldsforest, mll_base) dml_plr_forest. fit(store_predictions=True) forest_summary_plr = dml_plr_forest.summary forest_summary_plr

Analytics India -lehti

boost = XGBRegressor(n_jobs=1, tavoite = “reg:squarederror”, eta=0.1, n_estimators=35) np.random.seed(123) dml_plr_boost = dml.DoubleMLPLR(data_dml_base =boost ml_tm = boost ml_tm 3) dml_plr_boost.fit(store_predictions=True) boost_summary_plr = dml_plr_boost.summary boost_summary_plr

Analytics India -lehti

Vertaamalla tuloksia

final_summary = pd.concat(( forest_summary_plr, tree_summary_plr, boost_summary_plr)) final_summary.index = [ ‘forest’, ‘tree’, ‘xgboost’]
lopullinen_yhteenveto[[‘coef’, ‘2.5 %’, ‘97.5 %’]]

Analytics India -lehti

Tässä voidaan havaita, että XG-tehostusregressori toimii selvästi hyvin kahteen muuhun verrattuna, kaiken kaikkiaan kaikki mallit määrittelevät selvästi elinajanodotteen vaikutuksen aikuiskuolleisuuteen.

Johtopäätös

Double/Debiased koneoppiminen on ortogonaalisen funktion ja otoksen jakamisen yhdistetty operaatio, joka tuottaa tilastollisen päätelmän kiinnostavasta muuttujasta. Tämän artikkelin avulla olemme ymmärtäneet kaksinkertaisen/debiatun koneoppimisen toiminnallisuuden ja sen toteuttamisen DoubleML:n kanssa.

Viitteet