K-fold Cross-Validation sa Machine Learning

K-fold Cross-Validation
Model Assessment
Generalization Capability
K-fold Cross-Validation sa Machine Learning cover image

Ang K-fold cross-validation ay isang diskarteng ginagamit upang masuri ang pagganap ng isang modelo. Ito ay partikular na kapaki-pakinabang para sa pagtantya kung gaano kahusay magsa-generalize ang isang modelo sa bago, hindi nakikitang data. Ang proseso ay nagsasangkot ng paghahati ng dataset sa 'k' na mga subset o fold na humigit-kumulang pantay na laki. Narito ang isang breakdown ng mga hakbang:

1. Paghahati ng Dataset:

Ang dataset ay nahahati sa 'k' na pantay na laki ng mga subset o fold. Halimbawa, kung mayroon kang 1,000 sample at piliin ang 'k' bilang 5, ang bawat fold ay maglalaman ng 200 sample.

2. Paulit-ulit na Pagsasanay at Pagsusuri:

Ang modelo ay sinanay ng 'k' beses. Sa bawat pag-ulit, ibang fold ang ginagamit bilang validation set, at ang natitirang fold ay ginagamit para sa pagsasanay. Halimbawa:

  • Iterasyon 1: I-fold ang 1 bilang validation, I-fold ang 2 hanggang k para sa pagsasanay

  • Iterasyon 2: I-fold ang 2 bilang validation, I-fold ang 1 at 3 hanggang k para sa pagsasanay

  • Iteration 3: Fold 3 bilang validation, Folds 1 at 2, at 4 hanggang k para sa pagsasanay

  • ... at iba pa hanggang ang lahat ng fold ay nagamit na bilang validation set.

3. Pagsusuri sa Pagganap:

Pagkatapos ng bawat pag-ulit, sinusuri ang pagganap ng modelo gamit ang napiling sukatan (hal. katumpakan, katumpakan, pagbabalik-tanaw, atbp.) sa hanay ng pagpapatunay. Ang mga sukatan ng pagganap mula sa bawat pag-ulit ay ina-average o pinagsama upang magbigay ng kabuuang pagtatantya ng pagganap ng modelo.

4. Pagsasama-sama ng Mga Sukatan:

Ang mga sukatan ng pagganap (hal. mga marka ng katumpakan) mula sa bawat pag-ulit ay ina-average o pinagsama upang magbigay ng pangkalahatang pagtatasa ng pagganap ng modelo. Ang pinagsama-samang sukatan na ito ay kumakatawan sa inaasahang pagganap ng modelo sa hindi nakikitang data.

Mga kalamangan ng K-fold cross-validation sa isang simpleng split ng tren/test

  • Mas mahusay na Paggamit ng Data: Ang K-fold cross-validation ay mas mahusay na gumagamit ng available na data dahil ang bawat sample ay ginagamit para sa parehong pagsasanay at validation.

  • Pinababang Pagkakaiba-iba sa Pagtantya ng Pagganap: Nagbibigay ito ng mas maaasahang pagtatantya ng pagganap ng modelo sa pamamagitan ng pagbabawas sa pagkakaiba-iba na nauugnay sa isang split ng tren/pagsubok.

  • Generalization: Nakakatulong ito sa pag-unawa kung paano gumaganap ang modelo sa iba't ibang subset ng data, kaya tinatasa ang kakayahan nito sa generalization.

Pagpili ng halaga ng 'k'

  • Mas mataas na 'k' Value: Ang paggamit ng mas mataas na 'k' value (hal. 10 o higit pa) ay nagreresulta sa mas maliliit na validation set, na maaaring humantong sa mas mababang bias sa pagtatantya ng performance ngunit mas mataas na computational cost.

  • Mababang Mga Halaga ng 'k': Paggamit ng mas mababang halaga ng 'k' (hal. 3 o 5) binabawasan ang gastos sa computational ngunit maaaring humantong sa mas mataas na bias sa pagtatantya ng pagganap dahil sa mas maliit na pagpapatunay set.

Sa mga praktikal na sitwasyon

  • Para sa malalaking dataset, ang mas mataas na 'k' na halaga ay maaaring magastos sa pagkalkula.

  • Kapag maliit ang dataset, ang mas mataas na 'k' ay maaaring hindi makapagbigay ng sapat na data sa bawat fold para sa mahusay na pagsasanay sa modelo.

  • Sa pangkalahatan, ang mga halagang tulad ng 5 o 10 ay karaniwang ginagamit habang ang mga ito ay may balanse sa pagitan ng computational na kahusayan at maaasahang pagtatantya ng pagganap.


Career Services background pattern

Mga Serbisyo sa Karera

Contact Section background image

Manatiling nakikipag-ugnayan tayo

Code Labs Academy © 2024 Lahat ng karapatan ay nakalaan.