Usando Predictive Power Score Para Hacer Correlaciones - Parte 1

Daniel Morales
Por Daniel Morales - Screencast # 3
Oct 13, 2020


Usando Predictive Power Score Para Hacer Correlaciones - Parte 1
  • En estadística, la correlación o dependencia es cualquier relación estadística, ya sea causal o no, entre dos variables aleatorias o datos bivariados.
  • En el sentido más amplio, la correlación es cualquier asociación estadística, aunque comúnmente se refiere al grado en que un par de variables se relacionan linealmente.
  • Entre los ejemplos conocidos de fenómenos dependientes figuran la correlación entre la altura de los padres y su descendencia y la correlación entre el precio de un bien y la cantidad que los consumidores están dispuestos a comprar, como se representa en la denominada curva de la demanda.
  • Las correlaciones son útiles porque pueden indicar una relación predictiva que puede ser explotada en la práctica
  • Por ejemplo, una empresa de electricidad puede producir menos energía en un día templado basándose en la correlación entre la demanda de electricidad y el clima
  • En este ejemplo, existe una relación causal, porque el clima extremo hace que las personas utilicen más electricidad para calentarse o enfriarse
  • Sin embargo, en general, la presencia de una correlación no es suficiente para inferir la presencia de una relación causal (es decir, la correlación no implica causalidad).
  • Formalmente, las variables aleatorias son dependientes si no satisfacen una propiedad matemática de independencia probabilística.
  • En el lenguaje informal, correlación es sinónimo de dependencia.
  • Esencialmente, la correlación es la medida de la forma en que dos o más variables se relacionan entre sí. Hay varios coeficientes de correlación
  • El más común de ellos es el coeficiente de correlación de Pearson, que es sensible sólo a una relación lineal entre dos variables (que puede estar presente incluso cuando una variable es una función no lineal de la otra)
  • Otros coeficientes de correlación - como la correlación de rango de Spearman - se han desarrollado para ser más robustos que el de Pearson, es decir, más sensibles a las relaciones no lineales
  • La información mutua también puede aplicarse para medir la dependencia entre dos variables
  • Las correlaciones tienen una puntuación va de -1 a 1 e indica si hay una fuerte relación lineal - ya sea en una dirección positiva o negativa. 
  • Sin embargo, hay muchas relaciones no lineales que este tipo de score simplemente no detectará
  • Además, la correlación sólo se define para las columnas numéricas. Así que, dejamos de lado todas las columnas categóricas.
  • Lo misma pasará si se transforman las columnas categóricas, porque no son ordinales y si hacemos OneHotEncoding terminaremos con una matriz con muchos valores diferentes (con alta cardinalidad).
  • La simetría en las correlaciones significa que la correlación es la misma tanto si se calcula la correlación de A y B o la correlación de B y A
  • Sin embargo, las relaciones en el mundo real rara vez son simétricas. Más a menudo, las relaciones son asimétricas
  • Un ejemplo rápido: una columna con 2 valores únicos (True o False por ejemplo) nunca será capaz de predecir perfectamente otra columna con 100 valores únicos. 
  • Pero lo contrario podría ser cierto. Claramente, la asimetría es importante porque es muy común en el mundo real
  • Te has preguntado: ¿existe una puntuación que nos diga si existe alguna relación entre dos columnas - no importa si la relación es lineal, no lineal, gaussiana u otro tipo de relación?
  • Por supuesto, la puntuación debería ser asimétrica porque quiero detectar todas las relaciones extrañas entre dos variables
  • La puntuación debería ser 0 si no hay relación y la puntuación debería ser 1 si hay una relación perfecta
  • Y como la guinda del pastel, la puntuación debería poder manejar columnas categóricas y numéricas por defecto.
  • En pocas palabras una puntuación asimétrica y agnóstica al tipo de datos para las relaciones predictivas entre dos columnas que va de 0 a 1
  • Siva para responder a la pregunta ¿Existen correlaciones entre las columnas? con una matriz de correlaciones, luego haces un gráfico de dispersión sobre las dos columnas para comprarlas y ver si efectivamente hay una fuerte correlación. 
Libreria PPS
La librería Predictive Power Score puede encontrarse en el siguiente enlace: https://github.com/8080labs/ppscore

Calculando PPS
  • En primer lugar, no hay una única manera de calcular el Predictive Power Score. 
  • De hecho, hay muchas maneras posibles de calcular una puntuación que satisfaga los requisitos mencionados anteriormente. 
  • Así que, pensemos más bien en el PPS como un framework para una familia de puntajes
  • Digamos que tenemos dos columnas y queremos calcular el PPS de X prediciendo a Y
  • En este caso, tratamos a Y como nuestra variable objetivo y a X como nuestra (única) característica
  • Ahora podemos calcular un Árbol de Decisión validado de forma cruzada y calcular una métrica de evaluación adecuada
  • Cuando el objetivo es numérico podemos utilizar un Árbol de Decisión de Regresión y calcular el Error Medio Absoluto (MAE)
  • Cuando el objetivo es categórico, podemos usar un Árbol de Decisión de Clasificación y calcular el F1 ponderado
  • También se pueden utilizar otros scores como el ROC, etc. pero dejemos esas dudas a un lado por un segundo porque tenemos otro problema
  • La mayoría de las métricas de evaluación no tienen sentido si no las comparas con una línea de base (baseline)
  • No importa si tenemos un score de 0.9 si hay posibles scores de 0.95. Y si importaría mucho si eres la primera persona que logra un puntaje superior a 0.7
  • Por lo tanto, necesitamos "normalizar" nuestro score de evaluación. 
  • ¿Y cómo se normaliza una puntuación? Defines un límite inferior y uno superior y pones la puntuación en perspectiva
  • Entonces, ¿cuáles deberían ser los límites inferior y superior? Empecemos con el límite superior porque esto suele ser más fácil: un F1 perfecto es 1. Un MAE perfecto es 0
  • Pero, ¿qué pasa con el límite inferior? En realidad, no podemos responder a esto en términos absolutos.
  • El límite inferior depende de la métrica de evaluación y de su conjunto de datos. Es el valor que alcanza un predictor ingenuo “naive”.
  • ¿Pero qué es un modelo ingenuo? Para un problema de clasificación, predecir siempre la clase más común es bastante ingenuo. Para un problema de regresión, predecir siempre el valor de la mediana es bastante ingenuo.
  • Para tener una mejor idea del PPS y sus diferencias con la correlación
  • Tenemos ahora las correlaciones entre x e y y viceversa 
Aqui podrás encontrar la Parte 2 de PPE para hacer correlaciones.

“Usando Predictive Power Score Para Hacer Correlaciones - Parte 1”
– Daniel Morales twitter social icon Tweet

Compartir este artículo:

0 Comentarios

Crear un comentario
Ingresar para Comentar
divider graphic

Otros Tutoriales

6

Trabajando el Pipeline de Machine Learning con PyCaret - Parte 4

PrediccionAntes de finalizar el modelo, es aconsejable realizar una comprobación final mediante la predicción del conjunto de test/hold-out y la re...

Daniel Morales
Por Daniel Morales
7

Trabajando el Pipeline de Machine Learning con PyCaret - Parte 3

Creando el Modelocreate_model es la función más granular de PyCaret y a menudo es la base de la mayoría de las funcionalidades de PyCaretComo su no...

Daniel Morales
Por Daniel Morales
12

Trabajando el Pipeline de Machine Learning con PyCaret - Parte 2

Puedes acceder a la Parte#1 de Trabajando el Pipeline de Machine Learning con PyCaret aqui: Entorno de PyCaretAhora vamos a configurar el ambiente ...

Daniel Morales
Por Daniel Morales
Partners

arrow-up icon