lección 6
PCA: cuándo ayuda y cuándo destruye
Comprimir muchas variables en pocas con PCA: ayuda con las redundantes y para visualizar; destruye cuando necesitas explicar el modelo.
⏱ 50 min
Imagina que fotografías una bandada de pájaros en pleno vuelo. La bandada se mueve en el espacio de tres dimensiones, pero si la miras desde el ángulo correcto, casi toda su forma cabe en una foto plana: los pájaros se estiran en una dirección (la del vuelo), se abren un poco en otra, y apenas tienen grosor en la tercera. Esa tercera dimensión casi no aporta información sobre la bandada, así que la foto, que tiene solo dos, captura lo esencial. Elegir el ángulo que mejor aplana la bandada perdiendo lo mínimo es, en una imagen, lo que hace el análisis de componentes principales, o PCA (de principal component analysis).
A diferencia de la selección de variables, que acabas de ver y que descarta columnas enteras quedándose con unas y tirando otras, el PCA no elige: comprime. Toma todas tus variables y las combina en un número menor de variables nuevas, llamadas componentes, construidas de modo que las primeras capturen la mayor parte posible de la variación de los datos. En vez de decir esta columna se queda y esta se va, dice voy a crear tres columnas nuevas, mezcla de todas las tuyas, que contienen casi toda la información que tenías en diez. Es una herramienta potente, y como todas las potentes, tiene un filo que corta hacia el lado equivocado si no sabes cuándo usarla.
La distinción entre elegir y comprimir no es un matiz, es toda la diferencia, y determina cuándo cada técnica es la adecuada. La selección de variables conserva el significado: cuando se queda con el ingreso y descarta el código postal, las columnas que sobreviven siguen siendo el ingreso y lo que sea, cosas con nombre que puedes señalar. El PCA, en cambio, disuelve el significado: las componentes que fabrica no son ninguna de tus variables, son mezclas de todas, y eso tiene consecuencias que recorren toda esta lección. Resumido de antemano, para que leas el resto con la idea en la cabeza: el PCA gana cuando lo que te sobra es redundancia y lo que necesitas es compactar o visualizar, y pierde cuando lo que necesitas es poder decir qué variable concreta importa.
El PCA es, además, uno de los métodos más veteranos de todo el análisis de datos: lo formuló el matemático Karl Pearson en 1901, mucho antes de que existieran los ordenadores que hoy lo calculan en un parpadeo. Que una técnica de hace más de un siglo siga siendo de uso diario dice algo sobre lo bien planteada que estaba la idea: encontrar las pocas direcciones en que los datos de verdad varían y describirlo todo en función de ellas. No ha hecho falta sustituirla; solo se ha vuelto trivial de calcular.
## Rotar los ejes hacia donde los datos se extienden
La idea geométrica es más intuitiva que la fórmula, así que vamos por ahí. Imagina una nube de puntos en un gráfico de dos variables, el ingreso y el gasto de unos clientes, y supón que los dos van muy de la mano: quien ingresa más, gasta más. La nube no es un círculo, es una elipse alargada en diagonal. El PCA mira esa nube y se pregunta: ¿en qué dirección se estiran más los puntos? Esa dirección de máxima extensión es la primera componente. Luego busca la siguiente dirección que más estira, perpendicular a la anterior, y esa es la segunda componente. En la práctica está rotando los ejes para alinearlos con la forma de la nube, en vez de dejarlos pegados a las variables originales.
Lo valioso de esa rotación es que concentra la variación. En el ejemplo del ingreso y el gasto, casi toda la dispersión de los puntos cae a lo largo de la primera componente (la diagonal), y muy poca a lo ancho. Eso significa que podrías describir a cada cliente con un solo número, su posición a lo largo de esa diagonal, y perder muy poca información. Has pasado de dos variables a una sin apenas pérdida. Cuando tienes diez, veinte o cien variables que se solapan, el PCA puede reducirlas a un puñado de componentes que conservan casi toda la variación. Esa es la compresión.
Fíjate en por qué funciona tan bien justo cuando las variables se solapan. Si el ingreso y el gasto van muy de la mano, saber uno te dice casi todo sobre el otro: hay mucha redundancia entre las dos columnas. El PCA lee esa redundancia como una sola dirección de variación (la diagonal por la que ambos crecen juntos) y la resume en una componente, dejando la segunda, la del grosor de la nube, casi vacía de información porque ahí apenas pasa nada. Cuantas más variables tengas que se repiten entre sí, más puede comprimir el PCA, porque cada grupo de variables redundantes colapsa en pocas direcciones. Al revés, si tus variables fueran todas independientes y no se solaparan en nada, el PCA no podría comprimir casi nada: no habría redundancia que exprimir. Por eso brilla en datos muy correlacionados y es inútil en datos sin relación entre columnas.
Una pieza técnica que no puedes saltarte: el PCA es sensible a la escala de las variables, y hay que ponerlas todas en la misma antes de aplicarlo. La razón es que el PCA busca las direcciones de mayor variación, y una variable medida en miles (digamos los ingresos en euros) tiene números mucho más grandes que una medida en decenas (la edad), así que parecería variar más solo por la unidad en que está, no porque de verdad lleve más información. Si no las igualas primero, el PCA se dejaría llevar por las variables de números grandes e ignoraría las de números pequeños aunque estas fueran más informativas. Por eso siempre se escala antes de aplicar PCA, y por eso en el código verás un paso de escalado delante, aprendido solo con el entrenamiento para no contaminar.
La fórmula del PCA usa álgebra de matrices que no necesitas para entenderlo ni para usarlo, pero sí conviene saber qué te devuelve: para cada componente, cuánta de la variación total de los datos captura. A eso se le llama la varianza explicada, y suele darse como un porcentaje. Si la primera componente explica el 43% y la segunda el 26%, entre las dos recoges el 69% de todo lo que variaban tus datos con solo dos números en lugar de diez. Sumando componentes vas acumulando porcentaje, y te paras cuando llegas a un nivel que te vale, por ejemplo el 90%.
Esa cifra de varianza explicada es tu principal herramienta para decidir cuántas componentes conservar, y conviene saber leerla bien. Las componentes salen ordenadas de más a menos variación capturada, así que las primeras valen mucho y las últimas casi nada. Lo normal es sumar sus porcentajes en orden y mirar dónde la suma acumulada cruza el umbral que te hayas puesto: si con cuatro componentes llegas al 90% y con las seis restantes solo arañas el 10% que falta, quedarte con cuatro es un trato excelente, porque descartas más de la mitad de las columnas perdiendo solo una décima parte de la información. La forma típica de esa curva acumulada, que sube deprisa y luego se aplana, es justo lo que hace útil al PCA: casi toda la señal se concentra en las primeras componentes.
No hay un umbral mágico que valga para todo; depende de para qué quieras la compresión. Si es para visualizar en un gráfico, estás forzado a dos o tres componentes porque más no se dibujan, y asumes la pérdida que haya. Si es para acelerar un modelo conservando casi toda la información, un 90% o un 95% suelen ser cifras razonables. Y si ves que necesitas casi todas las componentes para llegar a tu umbral, esa es una señal clara de que tus variables no se solapaban tanto como creías y de que el PCA no te está comprando gran cosa: a lo mejor no era la herramienta adecuada para esos datos. La propia curva de varianza te está diciendo si merece la pena comprimir o no.
## Cuándo PCA ayuda de verdad
- Cuando tienes muchísimas variables que se solapan (que miden cosas parecidas o están muy correlacionadas): el PCA las resume en pocas componentes sin apenas pérdida, y de paso elimina la redundancia que confunde a algunos modelos.
- Cuando quieres ver tus datos en un gráfico: nadie puede dibujar diez dimensiones, pero sí dos. Proyectar los datos sobre las dos primeras componentes te da una foto en 2D donde a veces se ven grupos o patrones que estaban escondidos.
- Cuando necesitas acelerar: menos columnas significan modelos más rápidos de entrenar, y con datos muy anchos eso puede marcar la diferencia entre un entrenamiento de minutos y uno de horas.
## Cuándo PCA destruye algo que no debías perder
Y aquí está el filo. Las componentes del PCA son combinaciones de todas tus variables a la vez. La primera componente no es el ingreso ni el gasto: es una mezcla que podría ser algo así como media parte de ingreso, un tercio de gasto, una pizca de antigüedad, y así con todas. Esa mezcla no tiene nombre, no significa nada que puedas explicar. Y en el momento en que trabajas con componentes en lugar de con tus variables originales, pierdes la capacidad de decir el ingreso influye tanto en la predicción, porque ya no tienes el ingreso: tienes una amalgama sin rostro.
Para esta profesión eso es un coste serio, no un detalle. Ya sabes de los modelos con inferencia que a menudo lo que importa no es solo acertar, sino poder explicar por qué: justificar ante un cliente, ante un responsable o ante un regulador qué variables pesaron en una decisión y en qué dirección. Un modelo entrenado sobre componentes de PCA puede acertar igual de bien, pero cuando te pregunten por qué denegaste ese crédito o por qué marcaste esa transacción, tu respuesta será una combinación lineal sin interpretación posible. Has cambiado capacidad de explicar por un poco de compresión, y muchas veces ese cambio no compensa.
Vale la pena insistir en que la pérdida de interpretabilidad no es gradual, es inmediata y total. No es que un modelo sobre componentes sea un poco más difícil de explicar; es que deja de ser explicable en términos de tus variables desde el primer momento, porque ya no hay una sola componente que corresponda a una variable tuya. Incluso si una componente estuviera dominada por el ingreso, llevaría también pizcas de todas las demás, y no podrías decir con honestidad el ingreso pesa tanto. Esto choca de frente con un valor central de esta profesión, que viene del trabajo con modelos estadísticos: la idea de que un resultado que no se puede explicar vale menos, por muy bien que acierte, cuando hay una decisión sobre alguien al otro lado. El PCA sacrifica justo eso.
Hay además un malentendido frecuente que conviene desmontar: mucha gente aplica PCA creyendo que así reduce el sobreajuste o mejora el modelo, casi como un paso de higiene por defecto. No es así. El PCA no sabe nada de lo que quieres predecir, solo mira cómo varían las variables entre sí; puede quedarse con direcciones de mucha variación que no tienen ninguna relación con la respuesta, y descartar una dirección de poca variación que resultaba ser justo la que predecía. Comprimir no es seleccionar lo útil, es resumir lo que más varía, y lo que más varía no siempre es lo que más importa. Confundir esas dos cosas lleva a usar PCA donde habría ido mejor una buena selección de variables, que sí mira la respuesta.
No apliques PCA por costumbre antes de entrenar cualquier modelo. Si vas a necesitar explicar qué variables importan (y en problemas con personas detrás casi siempre vas a necesitarlo), el PCA te deja sin esa posibilidad desde el primer momento. Compila la variación en ejes sin nombre, y de un eje sin nombre no se puede dar cuentas. Úsalo cuando la compresión o la visualización valgan más que la explicación, y sé consciente de que estás eligiendo.
El uso del PCA para visualizar merece un párrafo propio, porque es donde casi todo el mundo le saca partido sin arriesgar nada. Nadie sabe mirar un gráfico de diez ejes, pero un gráfico de dos lo lee cualquiera. Si proyectas tus datos sobre las dos primeras componentes y los dibujas, a veces aparece algo que estaba invisible en la tabla: dos o tres grumos de puntos que sugieren grupos naturales de clientes, una cola de valores raros que apuntaba a un problema de datos, una frontera clara entre dos tipos de casos. Esa foto no la usas para entrenar nada ni para decidir, la usas para entender, y para eso la pérdida de interpretabilidad no importa, porque no vas a explicarle a nadie qué es cada eje: solo quieres ver la forma. Es, con diferencia, la aplicación más segura y agradecida del PCA.
Una decisión que suele acertar: usa PCA para explorar y visualizar (proyectar a 2D y mirar si hay grupos), pero entrena el modelo final sobre las variables originales si vas a tener que explicarlo. Así te quedas con lo mejor de los dos mundos: la foto que te ayuda a entender los datos, y un modelo que sigue hablando el idioma del negocio. Y, como siempre, ajusta el PCA solo con el entrenamiento: aprender las direcciones mirando también la prueba vuelve a contaminarla.
## El cierre: modelos potentes, y la pregunta que viene detrás
Cierras aquí el trabajo con los modelos de conjunto y con las variables: sabes construir bosques y boosting, afinar sus mandos sin contaminar la prueba, crear buenas variables, descartar las que sobran y comprimir las que se solapan. Tienes a mano modelos que aciertan mucho. Pero la última lección ha dejado al descubierto una tensión que ya no se va a ir: un modelo que acierta y un modelo que puedes explicar no siempre son el mismo modelo. Cuanto más potente es lo que entrenas, más difícil es saber por qué decide lo que decide, y en un oficio donde esas decisiones recaen sobre personas, eso importa. ¿Puedes confiar en lo que el modelo decide? ¿Puedes entenderlo y defenderlo? Esa es la pregunta que abre lo que viene.
Fíjate en que el PCA no ha sido más que el primer aviso de esa tensión. Con la selección de variables aún conservabas los nombres; con el PCA los has perdido a cambio de compresión, y lo has aceptado o rechazado según cuánto necesitaras explicar. Esa misma balanza, entre lo que un modelo acierta y lo que un modelo deja ver, aparece con cada modelo potente que existe, y hasta ahora la has resuelto renunciando a lo uno o a lo otro. La pregunta natural, la que de verdad abre el siguiente tramo, es si no habrá una tercera vía: quedarte con los modelos que más aciertan y, aun así, encontrar la manera de asomarte dentro y entender qué miran y por qué deciden. A eso se dedica lo que viene, y cambia la forma de relacionarte con todo lo que has construido en estas lecciones.
## comentarios
Reporta erratas, ayuda a otros o comparte tu opinión. Sé constructivo.
Inicia sesión para comentar y responder.
cargando comentarios...
Regístrate para guardar tu progreso.