Küsimus:
Funktsioonide valik "lõpliku" mudeli jaoks masinõppes ristkinnitamise läbiviimisel
danielsbrewer
2010-09-02 15:25:42 UTC
view on stackexchange narkive permalink

Mul on funktsioonide valiku ja masinõppe osas natuke segadust ja ma mõtlesin, kas saaksite mind aidata. Mul on mikroarray andmekogum, mis on liigitatud kahte rühma ja millel on 1000 funktsiooni. Minu eesmärk on saada väike arv geene (minu tunnused) (10–20) allkirjaga, et teoreetiliselt suudaksin nende proovide optimaalseks klassifitseerimiseks rakendada teisi andmekogumeid. Kuna mul pole nii palju proove (<100), ei kasuta ma robustuse määramiseks abiks testi- ja koolituskomplekti, vaid kasutan ristkinnitamist Jäta-üks-välja. Olen lugenud, et proovide iga jaotuse jaoks tuleks teha funktsioonide valik, st

  1. valige testikomplektiks üks proov
  2. ülejäänud proovide puhul tehke funktsioonide valik
  3. Rakendage masinõppe algoritmi valitud funktsioonide abil ülejäänud proovidele
  4. Testige, kas testikomplekt on õigesti klassifitseeritud
  5. minge jaotisse 1.

Kui teete seda, võite saada iga kord erinevaid geene, kuidas siis oma lõplikku optimaalset geeniklassifikaatorit määrata? st mis on 6. etapp. Oletame näiteks, et mul on vähk / normaalne andmekogum ja ma tahan leida kümme parimat geeni, mis klassifitseerivad kasvaja tüübi vastavalt SVM-ile. Tahaksin teada geenikomplekti ja SVM-i parameetreid, mida saaks kasutada edasistes katsetes, et näha, kas seda saaks kasutada adiagnostilise testina.

Ma peaksin täieliku avalikustamise jaoks ütlema, et olen selle juba biojuhtide nimekirja postitanud
Palun võtke siia tagasi kõik biojuhtide tulemused?
Kuus vastused:
#1
+43
Dikran Marsupial
2010-09-02 22:53:16 UTC
view on stackexchange narkive permalink

Põhimõtteliselt:

Ristkinnitamist kasutatakse ainult kogu andmekogumi jaoks koolitatud ühe mudeli ennustava jõudluse hindamiseks. Ristkinnitamise kasutamisel on VITAL, et kordate igas voldikus kogu protseduuri, mida esmase mudeli jaoks sobitati, sest vastasel juhul võite jõudlust oluliselt optimistlikult kallutada.

Et teada saada, miks see juhtub , kaaluge binaarse klassifikatsiooni probleemi 1000 binaarse tunnusega, kuid ainult 100 juhtumiga, kus kõik juhtumid ja tunnused on puhtjuhuslikud, mistõttu tunnuste ja juhtumite vahel puudub statistiline seos. Kui koolitame esmase mudeli täielikul andmekogul, saame alati saavutada nullvea koolituskomplektis, kuna funktsioone on rohkem kui juhtumeid. Leiame isegi "informatiivsete" funktsioonide alamhulga (mis on juhuslikult korrelatsioonis). Kui teostame ristkinnituse ainult nende funktsioonide abil, saame tulemuste hinnangu, mis on parem kui juhuslik arvamine. Põhjuseks on see, et ristkinnitamise protseduuri igas voldis on teavet testimiseks kasutatud väljapaistvate juhtumite kohta, kuna funktsioonid valiti seetõttu, et need olid prognoosimiseks head, kõik need, ka need, mis olid välja toodud. Muidugi on tõeline veamäär 0,5.

Kui rakendame õige protseduuri ja teostame funktsioonide valimise igas voldis, pole enam teavet levinud juhtumite kohta see volt. Kui kasutate õiget protseduuri, saate sellisel juhul veamäära umbes 0,5 (ehkki andmekogumi erineva teostuse korral varieerub see veidi).

Hea lugeda on: p>

Christophe Ambroise, Geoffrey J. McLachlan, "Selektsiooni eelarvamused geeniekstraktsioonis mikrorajooni geeniekspressiooni andmete põhjal", PNAS http://www.pnas.org/content/99/10/ 6562.abstrakt

mis on rakenduskava jaoks väga asjakohane ja

Gavin C. Cawley, Nicola LC Talbot, "Mudelivalikus üle sobitamise ja järgneva valiku kallutatuse kohta tulemuslikkuse hindamisel", JMLR 11 (juuli): 2079−2107, 2010 http://jmlr.csail.mit.edu/papers/v11/cawley10a.html

mis näitab, et sama võib mudeli valimisel hõlpsasti toimuda (nt SVM-i hüperparameetrite häälestamine, mida tuleb samuti korrata igas CV-protseduuri iteratsioonis).

Praktikas:

soovitaksin kasutada Baggingut ja jõudluse hindamiseks kotist väljas vea kasutamine. Saad komitee mudeli, kasutades paljusid funktsioone, kuid see on tegelikult hea. Kui kasutate ainult ühte mudelit, on tõenäoline, et sobitate funktsioonide valiku kriteeriumiga üle ja jõuate mudeli juurde, mis annab kehvemaid ennustusi kui mudel, mis kasutab suuremat arvu funktsioone.

Alan Millersi raamat alarühmade valikust regressioonis (Chapmani ja Halli monograafiad statistikast ja rakendatavast tõenäosusest, 95. köide) annab hea nõu (lk 221), et kui kõige olulisem on ennustav jõudlus, siis ärge tehke ühtegi funktsiooni valiku asemel kasutage selle asemel harja regressiooni. Ja see on raamatus alamhulga valimise kohta !!! ; o)

#2
+41
chl
2010-09-02 15:46:12 UTC
view on stackexchange narkive permalink

See on väga hea küsimus, millega puutusin ise kokku SNP-de andmetega töötades ... Ja ma ei leidnud kirjanduse kaudu mingit ilmset vastust.

Sõltumata sellest, kas kasutate LOO- või K-fold CV-d, jõuate lõpuks erinevate funktsioonideni, kuna ristvalideerimise iteratsioon peab olema kõige välimine silmus, nagu te ütlesite. Võite mõelda mingile hääletamisskeemile, mis hindaks teie LOO-CV-st saadud funktsioonide n-vektoreid (ei mäleta paberit, kuid tasub kontrollida Harald Binderi tööd või Antoine Cornuéjols). Uue testproovi puudumisel tehakse tavaliselt ML-algoritmi kogu proovile uuesti rakendamine, kui olete leidnud selle optimaalsed ristkinnitatud parameetrid. Kuid nii toimides ei saa te veenduda, et üleliigne pole (kuna valimit kasutati juba mudeli optimeerimiseks).

Või võite alternatiivina kasutada manustatud meetodeid, mis pakuvad teile funktsiooni reastamist mõõtmise kaudu erineva tähtsusega, nt nagu juhuslikes metsades (RF). Kuna ristvalideerimine on raadiosagedusfondides olemas, ei pea te muretsema juhtumi $ n \ ll p $ ega mõõtmete needuse pärast. Siin on toredad dokumendid nende rakendustest geeniekspressiooni uuringutes:

  1. Cutler, A., Cutler, D.R. ja Stevens, J.R. (2009). Puupõhised meetodid, jaotises High-Dimensional Data Analysis in Cancer Research , Li, X. ja Xu, R. (toim.), Lk 83–101, Springer.
  2. Saeys, Y., Inza, I. ja Larrañaga, P. (2007). Bioinformaatika tunnuste valimise tehnikate ülevaade. Bioinformaatika , 23 (19) : 2507-2517.
  3. Díaz-Uriarte, R., Alvarez de Andrés, S. (2006). Geenivalik ja mikrokiibi andmete liigitamine juhusliku metsa abil. BMC bioinformaatika , 7 :3.
  4. Diaz-Uriarte, R. (2007). GeneSrF ja varSelRF: veebipõhine tööriist ja R-pakett geenide valimiseks ja klassifitseerimiseks juhusliku metsa abil. BMC bioinformaatika , 8 : 328

Kuna räägite SVM-ist, võite otsida karistatud SVM i.

Aitäh selle eest. Mind ei müüda SVMis eriti, kasutades lihtsalt seda näiteks. Nii et kui kasutasite juhuslikke puid, ei pea te ristvalideerimist tegema? On see õige.
jah, RF sisaldab puu kasvatamisel juhuslikku muutujate valimit (tavaliselt $ \ sqrt {p} $) ja iga puu põhineb üksikisikute võimendatud valimil; muutuv tähtsus arvutatakse nn kottidest välja võetud proovide kohta (need, mida otsustuspuu koostamiseks ei kasutata), kasutades permutatsioonitehnikat. Algoritmi korratakse m puude korral (vaikimisi m = 500) ja tulemuste keskmine määratakse ebakindluse kompenseerimiseks puu tasandil (võimendamine).
On oluline, et seda nimetatakse juhuslikuks metsaks, mitte juhuslikeks puudeks; teil võib olla probleeme Google'iga.
+1, minu jaoks hea vastus ja suurepärane - suur tänu paberviidete, eriti ülevaate eest.
Kas oleks piisavalt andmeid, kas poleks kõige parem korraldada testikomplekt, sooritada treeningkomplektil loocv, et optimeerida mudeli parameetreid, sobitada kogu rongikomplekt (ja nimetada seda "lõplikuks" klassifikaatoriks) ning seejärel hinnata lõplikku mudelittestikomplektil?
Ma arvan, et see on ristkinnitamise "pesastatud" tüüp, kuid siiski on see OK.Vähemalt on see Andrew Ngsi masinõppe kursus.
#3
+17
Joris Meys
2010-09-02 16:29:48 UTC
view on stackexchange narkive permalink

Lisage chl-le: tugivektorimasinate kasutamisel on väga soovitatav karistusmeetod elastne võrk. See meetod vähendab koefitsiente nulli suunas ja säilitab teoreetiliselt mudelis kõige stabiilsemad koefitsiendid. Esialgu kasutati seda regressiooniraamistikus, kuid seda on hõlpsasti laiendatav kasutamiseks tugivektorimasinatega.

Algne väljaanne: Zou ja Hastie (2005): Regulariseerimine ja muutujate valik elastse võrgu kaudu. J. R. Statistik. Soc. B, 67-2, lk 301-320

Elastne võrk SVM-i jaoks: Zhu & Zou (2007): tugivektorimasina muutuv valik: suundumused närviarvutuses, 2. peatükk (Toimetajad: Chen ja Wang)

elastse võrgu täiustused Jun-Tao ja Ying-Min (2010): Vähi klassifitseerimise ja geenivaliku täiustatud elastne võrk: Acta Automatica Sinica, 36–7, lk 976–981

#4
+10
Aniko
2010-09-02 20:56:38 UTC
view on stackexchange narkive permalink

Sammuna 6 (või 0) käivitate funktsioonide tuvastamise algoritmi kogu andmekogumis.

Loogika on järgmine: peate mõtlema ristvalideerimisele kui meetodile, kuidas leida funktsioonide valimiseks kasutatava protseduuri omadused. See vastab küsimusele: "Kui mul on mõned andmed ja täidan selle protseduuri, siis milline on uue valimi klassifitseerimise veamäär?". Kui olete vastuse teadnud, saate protseduuri (funktsioonide valik + klassifitseerimisreeglite väljatöötamine) kasutada kogu andmekogumis. Inimestele meeldib üks-üks-välja jätta, kuna ennustavad omadused sõltuvad tavaliselt valimi suurusest ja $ n-1 $ on tavaliselt piisavalt lähedal $ n $ -le, et poleks palju tähtsust.

Ma arvan, et sama valimi (1) kasutamisel klassifikaatori klassifitseerimise / prognoosimise toimivuse hindamisel on selle parameetrite häälestamisel (lõpuks koos funktsioonide valimisega) endiselt üldistamise probleem ja (2) kasutatakse omakorda oma ennustusi kogu andmekogumi kohta. Tegelikult rikute ristvalideerimise abil välja töötatud ülepaisutamise kontrolli. Hastie jt. esitage kena näide CV lõksudest, esp. wrt. funktsioonide valik nende ESL-raamatus, 2. väljaande § 7.10.2.
@chl:, kes ütles midagi parameetrite häälestamise kohta? Kui sooritatakse täiendavaid asju, tuleks neid korrata ka ristkinnitamise ajal. Algoritmi selge muutmine, kuni saate hea ristvalideeritud veamäära, on "petmine". BTW, olen nõus, et ristkinnitamine, eriti üks-ühele jätmine, pole sugugi nii tore.
mitte see pole petmine, kuna CV näitab ligikaudset algoritmi toimimist uute andmetega. Peate olema ainult kindel, et te pole kogu komplekti põhjal midagi lahendanud (see on kogu komplekti struktuuri puudutav teabe leke, nii et see võib kohe rongi kõiki osi kallutada).
@mbq - Ankino on õige, oma mudeli häälestamine CV-statistika minimeerimiseks on "petmine" ja lõpliku mudeli CV-statistikal on oluline optimistlik eelarvamus. Selle põhjuseks on see, et CV-statistikal on tühine varieeruvus (kuna seda hinnatakse piiratud andmete kogumi korral) ja seega, kui CV-statistikat otseselt optimeerida, võite selle üle sobitada ja võite saada mudeli see üldistab vähem kui see, millest te alustasite. Selle demonstreerimiseks masinõppe kontekstis vt seehttp: //jmlr.csail.mit.edu/papers/v11/cawley10a.html Lahendus: kasutage pesastatud XVAL-i
#5
+1
FMZ
2012-02-02 08:49:28 UTC
view on stackexchange narkive permalink

Nii valin funktsioonid. Oletame, et teatud teadmiste põhjal on 2 mudelit, mida võrrelda. Mudel A kasutab funktsioone nr 1 kuni nr. 10. Mudel B kasutab nr 11 kuni nr. 20. Rakendan mudeli A jaoks LOO CV-d, et saada selle valimiväline jõudlus. Tehke sama mudeliga B ja seejärel võrrelge neid.

#6
-1
shabbychef
2010-09-03 04:05:56 UTC
view on stackexchange narkive permalink

Ma pole kindel klassifikatsiooniprobleemides, kuid regressiooniprobleemide funktsioonide valimise korral näitas Jun Shao , et Leave-One-Out CV on asümptootiliselt vastuoluline, st nõuetekohane tunnuste alamhulk ei lähe proovide arvu suurenedes ühele. Praktilisest vaatepunktist soovitab Shao Monte-Carlo ristkinnitamist või mitme välja jätmise protseduuri.

Oh, veelkord; kas olete lugenud selle artikli pealkirja?
Ok, selguse huvides - ma ei ütle, et LOOCV on hea mõte paljude objektide jaoks; ilmselgelt see pole nii, kuid Shao pole siin rakendatav. Tõepoolest, enamikul juhtudel ei kehti LM-de reeglid ML-i kohta.
Samuti on küsitav, kas asümptootilistel tulemustel on palju funktsioone, kui vaadata suure hulga tunnuste ja suhteliselt väheste mustritega andmestikke. Sel juhul on protseduuri erinevusel tõenäoliselt suurem praktiline tähtsus kui kallutatusel või järjekindlusel. LOOCV peamine väärtus on see, et paljude mudelite puhul saab seda rakendada tühiste arvutuskuludega, nii et kuigi selle dispersioon on suurem kui näiteks alglaadimine, võib see olla ainus võimalik lähenemine arvutusliku eelarve piires. Seetõttu kasutan seda, aga tulemuslikkuse hindamiseks kasutan midagi muud!


See küsimus ja vastus tõlgiti automaatselt inglise keelest.Algne sisu on saadaval stackexchange-is, mida täname cc by-sa 2.0-litsentsi eest, mille all seda levitatakse.
Loading...