La validació creuada —cross-validation en anglès— és una tècnica utilitzada per avaluar els resultats d'una anàlisi estadística i garantir que són independents de la partició entre dades d'entrenament i prova. Consisteix a repetir i calcular la mitjana aritmètica obtinguda de les mesures d'avaluació sobre diferents particions. S'utilitza en entorns on l'objectiu principal és la predicció i es vol estimar com és de precís un model que es durà a terme a la pràctica. És una tècnica molt utilitzada en projectes d'intel·ligència artificial per a validar models generats.
La validació creuada prové de la millora del mètode de retenció o holdout method. Aquest consisteix a dividir en dos conjunts complementaris les dades de mostra, realitzar l'anàlisi d'un subconjunt (anomenat dades d'entrenament o training set), i validar l'anàlisi en l'altre subconjunt (anomenat dades de prova o test set), de manera que la funció d'aproximació només s'ajusta amb el conjunt de dades d'entrenament i a partir d'aquí calcula els valors de sortida per al conjunt de dades de prova (valors que no ha analitzat abans). L'avantatge d'aquest mètode és que és molt ràpid a l'hora de computar. No obstant això, aquest mètode no és massa precís degut a la variació del resultats obtinguts per a diferents dades d'entrenament. L'avaluació pot dependre en gran mesura de quina és la divisió entre dades d'entrenament i de prova, i per tant pot ser significativament diferent en funció de com es realitzi aquesta divisió.Degut a aquestes mancances apareix el concepte de validació creuada.
Suposem que tenim un model amb un o més paràmetres d'ajust desconeguts i unes dades d'entrenament que volem analitzar. El procés d'ajust optimitza els paràmetres del model perquè aquest s'ajusti a les dades d'entrenament tan bé com pugui. Si agafem una mostra independent com a dada de prova (validació), del mateix grup que les dades d'entrenament, normalment el model no s'ajustarà a les dades de prova tan bé com a les dades d'entrenament. Això s'anomena sobre-ajust i acostuma a passar quan la mida de les dades d'entrenament és petita o quan el nombre de paràmetres del model és gran. La validació creuada és una manera de predir l'ajust d'un model a un hipotètic conjunt de dades de prova quan no disposem del conjunt explícit de dades de prova.
Aquest mètode consisteix a dividir aleatòriament el conjunt de dades d'entrenament i el conjunt de dades de prova. Per a cada divisió la funció d'aproximació s'ajusta a partir de les dades d'entrenament i calcula els valors de sortida per al conjunt de dades de prova. El resultat final es correspon a la mitjana aritmètica dels valors obtinguts per a les diferents divisions. L'avantatge d'aquest mètode és que la divisió de dades entrenament-prova no depèn del nombre d'iteracions. Però en canvi amb aquest mètode hi ha algunes mostres que queden sense avaluar i d'altres que s'avaluen més d'una vegada, és a dir, els subconjunts de prova i entrenament es poden solapar.
La validació creuada deixant-ne un fora o Leave-one-out cross-validation (LOOCV) implica separar les dades de manera que per a cada iteració tinguem una sola mostra per a les dades de prova i tota la resta conformant les dades d'entrenament. L'avaluació ve donada per l'error, i en aquest tipus de validació creuada l'error és molt baix, però en canvi, a nivell computacional és molt costós, ja que s'han de realitzar un elevat nombre d'iteracions, tantes com N mostres tinguem i per a cada una analitzar les dades tant d'entrenament com de prova.
L'avaluació de les diferents validacions creuades normalment ve donada per l'error obtingut en cada iteració, ara bé, per cada un dels mètodes pot variar el nombre d'iteracions, segons l'elecció del dissenyador en funció del nombre de dades total.
En la validació creuada aleatòria a diferència del mètode anterior, agafem mostres a l'atzar durant k iteracions, tot i que d'igual manera, es realitza un càlcul d'error per a cada iteració. El resultat final també l'obtenim a partir de realitzar la mitjana aritmètica dels K valors d'errors obtinguts, segons la mateixa fórmula:
En la validació creuada deixant un fora es realitzen tantes iteracions com mostres (N) tingui el conjunt de dades. De manera que per a cada una de les N iteracions es realitza un càlcul d'error. El resultat final l'obtenim realitzant la mitjana aritmètica dels N valors d'errors obtinguts, segons la fórmula:
On es realitza el sumatori dels N valors d'error i es divideix entre el valor de N.
L'objectiu de la validació creuada consisteix a estimar el nivell d'ajust d'un model a un cert conjunt de dades de prova independents de les utilitzades per entrenar el model. Aquestes mesures obtingudes poden ser utilitzades per estimar qualsevol mesura quantitativa d'ajust apropiada per a les dades i el model. Per exemple, en un model basat en classificació binària, cada mostra es preveu com a correcta o incorrecta (si pertany a la temàtica o no), de manera que en aquest cas, la taxa d'error de classificació pot ser utilitzada per resumir l'ajust del model.