10 de junio de 2012

Modelos Aditivos Generalizados y Selección I. Para entender al spline cúbico...


La superficie de selección es una función que relaciona la adecuación (fitness) con uno o varios rasgos fenotípicos. Habitualmente se utiliza la fórmula de Lande y Arnold (1) para describirla, y clasificarla en direccional, estabilizadora, disruptiva o una combinación de ellas. Sin embargo, nada impide que la superficie de selección tome distintas formas. Para evitar los supuestos sobre la forma de la selección (y ciertos problemillas de la fórmula de Lande y Arnold), Dolph Schluter propuso (2) utilizar un método no paramétrico, de forma tal que 

 
donde w es la adecuación, z es un rasgo, e es el error y f sólo afirma que existe una función entre w y z. Específicamente, propone además utilizar un cubic spline para describir esa forma y máxima verosimilitud penalizada para hallar la complejidad óptima de ese spline.
Vamos por partes... El spline es construido siguiendo ciertos pasos:

 
En A tenemos la nube de puntos original, en B la nube se divide en "ventanas" más pequeñas, en C una regresión cúbica es ajustada en cada ventana, finalmente en D, estas regresiones cúbicas son "empalmadas".
Como puede suponerse, cuanto más pequeñas son esas ventanas, más "rugosa" es la superficie. Sin embargo, elegir la cantidad óptima de ventanas no es tarea fácil. En vez de eso, se utiliza un atajo utilizando penalización. El spline óptimo es aquel que minimiza la cantidad:

 
La segunda parte de la ecuación es la penalización, la cual es controlada por el parámetro lambda. Podemos ver el efecto de la penalización.


En A la penalización es baja, y el spline intenta cruzar todos los puntos, en B la penalización es alta y el spline se aproxima a una línea recta para evitar la rugosidad. Esta penalización se maneja sencillamente cambiando los valores de lambda. Valores cercanos a 0 corresponden a la situación A, valores altos a la B. Elegir el mejor spline queda entonces reducido a buscar la mejor lambda, para lo cual se utiliza validación cruzada. Uno de esos métodos (generalized cross validation, GCV), consiste en elegir un rango de valores de lambda y para cada uno de ellos calcular el valor de la ecuación 2, siendo el óptimo aquel que minimice su valor. El pequeño detalle es que los residuos no son calculados de la forma acostumbrada. Para estimarlos quito una observación del set de datos, ajusto el spline con las restantes, predigo el valor de la observación faltante y calculo el residuo como la diferencia entre el predicho y la observación faltante. Luego quito otra observación.... y así hasta hacerlo con cada uno de los datos.

Por cierto, escribo cómo hacerlo en R en otro post jeje.



1- Lande R. y Arnold S.J. (1983). The measurement of selection on correlated characters. Evolution 37: 1210–1226.
2- Schluter D. (1988). Estimating the form of natural selection on a quantitative trait. Evolution 42: 849–861.

Licencia Creative Commons
Este obra está bajo una licencia Creative Commons Atribución-NoComercial-CompartirIgual 2.5 Argentina.