Ikasketa Gainbegiratua: Datuen Kudeaketa eta Algoritmoak

Enviado por Chuletator online y clasificado en Inglés

Escrito el en vasco con un tamaño de 7,82 KB

Datu Multzoen Formalizazioa Ikasketa Gainbegiratuan

Ageriko ikasketa gainbegiratu baterako entrenamendu, garapen eta test multzoen formalizazioa emanda, bete ondorengo hutsuneak:

  • Xdev = {xn+1, xn+2, …, xl}
  • Xtest = {xl+1, xl+2, …, xz}
  • Ydev = {yn+1, yn+2, …, yl}
  • Ytest = {yl+1, yl+2, …, yz}

Ebaluazio Ez-Zintzoa: Definizioa

Ebaluazio ez-zintzoa datuak entrenamendurako eta ebaluaziorako batera erabiltzen direnean gertatzen da. Honek emaitzak gehiegi optimizatzea edo overfitting-a sor dezake.

Datuen Banaketa: Train, Dev, Test

Overfitting-a saihesteko eta eredua orokortzeko gai izan dadin banatzen dira datuak. Hona hemen multzo bakoitzaren helburua:

Train
Eredua ikasteko erabiltzen da.
Dev
Hiperparametroak doitzeko eta ereduak aukeratzeko.
Test
Ereduaren azken errendimendua ebaluatzeko, aurrez ikusitako datuekin.

Erabaki Zuhaitzak eta Random Forest

Zein da erabaki-zuhaitz bakar batek duen desabantaila eta nola konpontzen da Random Forest-ekin? Zuhaitz bakar batek overfitting jasateko arrisku handiagoa du. Random Forest-ek hainbat zuhaitz eraikitzen ditu ausazko laginekin eta batez bestekoa hartzen du, aldakortasuna murriztuz eta orokortzea hobetuz.

Atributu Numerikoak Erabiltzen Dituzten Algoritmoak

Zein algoritmo hauek erabiltzen dituzte bakarrik atributu numerikoak? KNN

Algorithm 1: Predicción-KNN Pseudokodea

Algorithm 1 Predicción-KNN(k, dcard, Dtrain, ˆx). Aux = [] for each x{t} ∈ Dtrain do Aux = Aux" < d(x{t}, ˆx), c > end for ordenar(Aux) C Clases = [] for k = 1 to K do actualizar(C Clases, c{k}) end for clasePred = max(C Clases)
  • c Aldagaiaren Esanahia?

    c datu-instantzia baten klasea da.

  • Aux Aldagaiaren Helburua?

    Aux kalkulatutako distantziak eta klaseak gordetzen dituen zerrenda da.

  • x{t} Aldagaiaren Esanahia?

    x{t} entrenamenduko datu-instantzia bat da.

  • K Hiperparametroa: Esanahia?

    K erabiltzen diren auzoko kopurua da (K auzokorik hurbilenak).

  • C_Clases Aldagaiaren Edukia?

    K auzokoen klaseak eta haien agerpen-maiztasunak gordetzen ditu.

KNN: Boto Pisukatuak

KNN algoritmoa aldatzeko boto guztiek pisu bera izan ez dezaten, distantziaren arabera pisuak kalkulatu behar dira. Adibidez: botoa = 1 / (distantzia + ε), epsilon bat gehituz, zatiketa zero ez izateko.

Overfittinga eta Random Forest

Zer da overfitting eta nola konpontzen da Random Forest-ekin? Overfitting gertatzen da eredua gehiegi egokitzen denean entrenamendu-datuetara, eta ezin duenean datu berriak ondo orokortu. Erabaki-zuhaitzak sakonegi hazi daitezke eta datuetan dauden ausazkotasun edo zaratara egokitu. Random Forest-ek zuhaitz anitz sortzen ditu datu azpimultzoekin eta ausazko atributuekin, eta boto bidezko erabakiak hartuz. Horrela, overfittinga murrizten du eta orokortzea hobetzen du.

Ebaluazio Metodoak

Ebaluazio Ez-Zintzoa

Instantzia guztiak entrenatzeko eta probak egiteko erabiliko da. Hau da, %100 entrenatzeko eta %100 probak egiteko.

Beraz, honekin goi-borne bat lortuko dugu, erantzun egokienak lortuko ditugulakoan.

Hold-Out Metodoa

Instantzia guztietatik, zati handi bat entrenatzeko erabiliko da eta gainontzekoa probak egiteko, adibidez, %70 entrenatzeko eta %30 probak egiteko.

Hold-Out Estratifikatua

Instantzia guztiak bi taldetan banatzen dira, eta bi taldeetan instantzia guztien media edo mediana berdintzen saiatzen da. Ondoren, hold-out aplikatzen zaio talde bakoitzari.

Hold-Out Estratifikatu Anizkoitza

Hainbat aldiz egiten den Hold-Out Estratifikatua da.

K-Fold Estratifikatua (Cross-Validation)

Lehenik eta behin, datuak ausaz ordenatzen dira. Ondoren, instantzia guztiak k 'fold' desberdinetan banatzen dira, kontuan hartuta 'fold' bakoitza datu originalekin alderatuta ordezkagarria izan behar dela (distribuzioa, media, bariantza...).

Leave One-Out Metodoa

Datu bat ebaluatzeko erabili, eta gainontzekoak entrenatzeko; eta ondoren hurrengo datuarekin gauza bera egin, datu guztiak ebaluatu arte.

Sailkatze Algoritmoak

ZeroR Algoritmoa

ZeroR sailkatzaileak ez du kontuan hartzen atributurik, soilik klasearen banaketa orokorra aztertzen du. Emaitza numerikoa bada, batezbestekoa kalkulatzen da eta instantzia guztiei balio hori esleitzen zaie. Emaitza nominala bada, modarik ohikoena (moda) kalkulatzen da eta horixe esleitzen zaie instantzia guztiei.

OneR Algoritmoa

OneR sailkatzaileak atributu guztien artean zein den klasearekin lotura handiena duena aztertzen du, eta atributu horren balioen arabera sailkapen-arau sinple bat sortzen du. Atributu bakar baten gainean oinarritzen da sailkapena egiteko.

Zero Rule Algoritmoaren Pseudokodea

begin for each x in X: n[cx]++ end for ĉ = argmax₍c ∈ C₎ n[c] return ĉ

K-NN Algoritmoaren Pseudokodea

begin for each x₁ in X_test d = [ ] for each x₂ in X_train d[x₂] = d(x₁, x₂) end for sort(d) d = d[1:k] for x in d: n[cx]++ end for ĉ = argmax₍c ∈ C₎ n[c] end for return ĉ

kNN Algoritmoaren Definizioa

kNN sailkatzaileak instantzia bat sailkatzeko haren k auzokiderik hurbilenak (antzekoenak) bilatzen ditu entrenamendu-datuetan, eta haien etiketen (klaseen) arabera erabakitzen du zer klase dagokion. Distantzia (adibidez, euklidearra) erabiliz neurtzen da antzekotasuna.

KNN: 4-Fold Cross-Validation Adibidea

  1. Datuak 4 zatitan (fold) banatu. Fold bakoitza test multzo bat izango da behin, eta beste hirurak entrenamendu multzo.
  2. Fold bakoitzerako (iterazio bakoitzean):
    1. Test eta entrenamendu datuak markatu.
    2. Test datu bakoitzaren eta entrenamenduko datu guztien arteko distantzia euklidearra kalkulatu.
    3. Distantziak ordenatu eta 3 auzokide hurbilenak hautatu.
    4. Auzokide horien klaseak ikusi eta gehiengoaren botoa erabili iragartzeko.
    5. Iragarpena benetako klasearekin alderatu eta nahasketa matrizea bete.
    6. TP, FP, FN balioak fold bakoitzeko apuntatu eta doitasuna (TP / (TP + FP)), berreskurapena (TP / (TP + FN)) eta zehaztasuna (Asmatuak / Guztira) kalkulatu.
  3. Amaieran: 4 doitasun eta berreskurapen balioen batez bestekoa atera, eskatzen bada.

Naive Bayes Algoritmoa

Naive Bayes algoritmoaren urratsak:

  1. Datu multzoak: Zj entrenamendu instantziak dira, eta X test instantziak.
  2. Atributuen maiztasunak zenbatu: Atributu bakoitzeko eta Zj-ko instantzia bakoitzeko, atributu motaren instantziak klaseen arabera zenbatu. Adibidez, 'g' atributua eta 'c' klasea 'Neg' bada, 'g' eta 'c' 'Pos' balioei +1 gehitu.
  3. Probabilitateak biderkatu (atributuak): X-ko Xk instantzia bakoitzeko eta Xk-ko attbX atributu bakoitzeko, atributuen probabilitateak biderkatu. Adibidez, biderketa = biderketa * probabilitate(attbX | KlasePositiboa).
  4. Klase probabilitateak eta konparaketa: Biderketa = biderketa * probabilitate(KlasePositiboa). Klase negatiboarentzat ere biderkatu. Aurrekoekin konparatu eta Xn(c) = Bai / Ez esleitu, aurrekoaren arabera.

Entradas relacionadas: