Disseny d’experiments amb R

Autor: Julià Minguillón

Els textos i imatges publicats en aquesta obra estan subjectes (llevat que s'indiqui el contrari) a una llicència de Reconeixement-Compartir igual (BY-SA) v.3.0 Espanya de Creative Commons. Podeu modificar l'obra, reproduirla, distribuir-la o comunicar-la públicament sempre que en citeu l'autor i la font (FUOC. Fundació per a la Universitat Oberta de Catalunya), i sempre que l'obra derivada quedi subjecta a la mateixa llicència que el material original. La llicència completa es pot consultar a http://creativecommons.org/licenses/by-sa/3.0/es/legalcode.ca

1. Cicle de vida

2. Tipologia

4. Llenguatge de programació

Descripció

El disseny d’experiments i la recollida de les dades associades és un element crític de tot projecte de ciència de dades. És ben coneguda l’expressió garbage in, garbage out. Per molt potents que siguin els nostres algorismes, si els alimentem amb brossa, els models construïts i les seves prediccions o classificacions també seran brossa. El disseny experimental té com a objectiu assegurar la validesa, la fiabilitat i la replicabilitat dels experiments. Per fer-ho, és necessari establir quines dades es recolliran, com, i quines interaccions entre les variables independents caldrà tenir en compte en l’anàlisi, per mesurar l’impacte sobre la variable dependent o objectiu.

L’autor fa un repàs dels packages d’R més descarregats per al disseny d’experiments, a partir de la llista que ofereix el mateix repositori d’R (CRAN), que inclou més de 110 opcions. Analitzant els descriptors dels paquets disponibles, l’autor arriba a la conclusió que la majoria de paquets se centren a oferir funcionalitats relacionades amb el disseny experimental, disseny optimal, i altres temes com ara el disseny factorial o el disseny per blocs. Aleshores l’autor analitza la xarxa de dependències entre paquets per acabar observant que hi ha un parell de paquets molt importants, un d’anomenat DoE.base i un altre d’anomenat AlgDesign (el més popular pel que fa a descàrregues), i també n’hi ha un altre que s’anomena DoE.wrapper que els inclou tots dos.

Enllaç al recurs

https://emitanaka.org/posts/2021-02-03-current-state-of-experimental-design-r-packages/current-state-of-experimental-design-r-packages.html

Exemple d’ús

Suposem que tenim una eina que ajuda els estudiants a practicar amb exercicis de programació, i volem veure si té impacte o no sobre la nota final. Idealment, agafaríem els estudiants, els repartiríem en dos grups aleatòriament, un faria servir l’eina i l’altre no, i aleshores miraríem les notes obtingudes en cada grup, mirant si hi ha cap diferència significativa amb el test adequat. Però, i si no és possible repartir els estudiants aleatòriament o volem controlar també altres variables com ara l’edat, el gènere o la via d’accés dels estudiants?

El disseny experimental ens ajuda a establir les variables, els diferents valors a provar per a cada variable (per exemple, per l’edat podria ser joves/adults, o bé si fa servir l’eina o no, etc.) i les interaccions entre variables (les combinacions possibles d’interès), de manera que agrupem els estudiants en grups i assegurem que totes les variables i interaccions estan presents, mesurem l’impacte de cada grup i després fem servir tècniques com ara ANOVA per establir la importància de cada variable independent i poder dir que és l’eina i no la via d’accés o l’edat el que fa que els estudiants treguin més bones notes, per exemple.

Així, si tenim dos valors per a l’edat; tres per al gènere (home, dona, altres); quatre per a la via d’accés, i dos per si fa servir l’eina o no, en total tenim 2 x 3 x 4 x 2 = 48 grups diferents amb totes les combinacions, i quatre variables (que anomenem A, B, C i D) que generen 15 interaccions possibles (A, B, C, D, AB, AC, AD, BC, BD, CD, ABC, ABD, ACD, BCD, ABCD). Els packages d’R mencionats ens ajuden a preparar les dades i l’anàlisi posterior per esbrinar quina és la variable o variables que realment influeixen sobre la nota final de l’estudiant.

Enllaços relacionats

Paquets relacionats amb el disseny d’experiments fent servir R: https://cran.r-project.org/web/views/ExperimentalDesign.html

Disseny experimental: https://www.statisticshowto.com/experimental-design/