Función de enlace Probit

Autor: | Última modificación: 4 de noviembre de 2022 | Tiempo de Lectura: 3 minutos
Temas en este post:

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 1

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 2

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

Función de enlace Probit 3
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 4
plot (x_logit, y, t = "l", col = 'red', ylab = 'X')
lines (x_probit, y, t = "l", col = 'blue')
Función de enlace Probit 5
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 6
model_probit <- glm (data = df, formula = y ~ x, family = binomial ('probit'))
summary (model_probit)
Función de enlace Probit 7
model logit <- glm (data = df, formula = y ~ x, family = binomial ('logit'))
summary (model_logit)
Función de enlace Probit 8
Función de enlace Probit 9
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 10
 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 11

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 12

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

Función de enlace Probit 13

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 14

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!

👉 Descubre más del Big Data, Inteligencia Artificial & Machine Learning Full Stack Bootcamp ¡Descarga el temario!

👉 Prueba el Bootcamp Gratis por una Semana ¡Empieza ahora mismo!

👉 Conoce nuestros otros Bootcamps en Programación y Tecnología

[email protected]

¿Trabajo? Aprende a programar y consíguelo.

¡No te pierdas la próxima edición del Aprende a Programar desde Cero Full Stack Jr. Bootcamp!

 

Prepárate en 4 meses, aprende las últimas tecnologías y consigue trabajo desde ya. 

 

Solo en España hay más de 120.400 puestos tech sin cubrir, y con un sueldo 11.000€ por encima de la media nacional. ¡Es tu momento!

 

🗓️ Próxima edición: 13 de febrero

 

Reserva tu plaza descubre las becas disponibles.