Función de enlace Probit

Autor: | Última modificación: 18 de abril de 2024 | Tiempo de Lectura: 3 minutos
Temas en este post:

Algunos de nuestros reconocimientos:

Premios KeepCoding

La función de enlace probit su usa, generalmente, para parámetros que se encuentran en un intervalo unitario. Esta es la función de distribución acumulada de una distribución normal estándar.

¿Cómo se ejecuta la función de enlace Probit?

En vez de usar la función logit:

función de enlace probit

Se puede usar la función de enlace probit:

Función de enlace Probit

Esta es mucho más reducida y, en ella, θ-1 (y) es la inversa de la función acumulativa de probabilidad de una función normal de media 0 y varianza 1: N (0, 1).

De esta forma, se podría considerar que la probabilidad de y sigue una función normal en la función de enlace probit:

Función de enlace Probit

Así, la probabilidad de que y = 1 es:

Función de enlace Probit
options (repr.plot.height = 4, repr.plot.width = 6)

y <- seq (-10, 10, length.out = 100)
x_logit <- 1 / (1 + exp (-y))
plot (y, x_logit, t = "l", col = 'red', ylab = 'X')

x_probit <- pnorm (y)
lines (y, x_probit, t = "l", col = 'blue')
Función de enlace Probit
plot (x_logit, y, t = "l", col = 'red', ylab = 'X')
lines (x_probit, y, t = "l", col = 'blue')
Función de enlace Probit
set.seed (123)
x <- rep (c (rep (0.2, 3), rep (0.4, 2), rep (0.1, 6)), 10)
y <- sapply (x, function (xi) rbinom (1, size = 1, prob = xi * 2 + 0,1))
df <- data.frame (y, x)
head (df)
Función de enlace Probit
model_probit <- glm (data = df, formula = y ~ x, family = binomial ('probit'))
summary (model_probit)
Función de enlace Probit
model logit <- glm (data = df, formula = y ~ x, family = binomial ('logit'))
summary (model_logit)
Función de enlace Probit
Función de enlace Probit
x_lin <- seq (0, 0.4, length.out = 20)
y_est_logit <- model_logit$_coefficient [1] + model_logit$_coefficient [2] * x_lin # log (odds)
y_est_probit <- model_probit$_coefficient [1] + model_probit$_coefficient [2] * x_lin

y_real <- x_lin * 2 + 0.1 # probability
log_odds_real <- log (y_real / (1 - y_real)) #logit
plot (x_lin, log_odds_real, t = 'l', col = 'red', ylab = 'y transformada')
lines (x_lin, y_est_logit, col = "red", lty=2)

probit = qnorm (y_real)

lines (x_lin, probit, t = 'l', col = 'blue')
lines (x_lin, y_est_probit, col = "blue", lty = 2)
Función de enlace Probit
 x_lin <- seq (0, 0.4, length.out = 20)

y_est_logit <- predict (model_logit, data.frame (x = x_lin), type = "response")
y_est_probit <- predict (model_probit, data.frame (x = x_lin), type = "response")
y_real <- x_lin * 2 + 0.1 # probability

plot (x_lin, y_real, t = 'l', col = 'gray')
lines (x_lin, y_est_logit, t = '1', col = 'blue')
lines (x_lin, y_est_probit, col = "red")
Función de enlace Probit

Los coeficientes de una regresión logística utilizando una función de enlace logit eran fáciles de interpretar y tenían un modelo de respuesta simple, teniendo en cuenta que la regresión lineal daba simplemente el logaritmo de la razón de momios.

Función de enlace Probit

Cada coeficiente (elevado a e) simplemente aumenta de forma multiplicativa la razón de momios:

Función de enlace Probit

Pero en la regresión logística utilizando la función de enlace probit como función de enlace esto es más complicado, ya que los coeficientes cambian:

Función de enlace Probit

Podrían interpretarse como la diferencia en el z-score asociado con cada unidad de diferencia en la predicción de la variable.

¿Quieres seguir aprendiendo?

La función de enlace probit es práctica, pero hay muchas otras alternativas que puedes usar en el análisis y procesamiento de tus datos, como logit, Poisson, etc.

Por eso, si quieres seguir aprendiendo sobre estas otras funciones y propiedades avanzadas del Big Data y el data mining, te invitamos a que realices nuestro Bootcamp Full Stack Big Data, Inteligencia Artificial & Machine Learning, en donde podrás encontrar a los mejores profesionales. Estos te guiarán en tu proceso de aprendizaje para incursionar en el mundo laboral y conseguir excelentes oportunidades de empleo con una avanzada formación en tan solo 8 meses. ¡Solicita más información e inscríbete ya!

Posts Relacionados

¡CONVOCATORIA ABIERTA!

Big Data, IA & Machine Learning

Full Stack Bootcamp

Clases en Directo | Profesores en Activo | Temario 100% actualizado