45 votos

¿Cuál es la diferencia entre la regresión logística y el perceptrón?

Estoy revisando la conferencia de Andrew Ng notas sobre el aprendizaje automático.

Los apuntes nos introducen en la regresión logística y luego en el perceptrón. Al describir el Perceptrón, los apuntes dicen que sólo hay que cambiar la definición de la función de umbral utilizada para la regresión logística. Una vez hecho esto, podemos utilizar el modelo Perceptron para la clasificación.

Así que mi pregunta es: si es necesario especificar esto y consideramos el Perceptron como una técnica de clasificación, entonces ¿qué es exactamente la regresión logística? ¿Se utiliza simplemente para obtener la probabilidad de que un punto de datos pertenezca a una de las clases?

30voto

Antoni Parellada Puntos 2762

En definitiva, la regresión logística tiene connotaciones probabilísticas que van más allá del uso del clasificador en ML. Tengo algunas notas sobre la regresión logística aquí .

La hipótesis en la regresión logística proporciona una medida de incertidumbre en la ocurrencia de un resultado binario basado en un modelo lineal. El resultado está acotado asintóticamente entre $0$ y $1$ y depende de un modelo lineal, de forma que cuando la recta de regresión subyacente tiene valor $0$ la ecuación logística es $0.5 = \frac{e^0}{1+e^0}$ , proporcionando un punto de corte natural a efectos de clasificación. Sin embargo, es a costa de desechar la información de probabilidad en el resultado real de $h(\Theta^T\bf x) =\frac{e^{\Theta^T \bf x}}{1 +e^{\Theta^T\bf x}}$ que suele ser interesante (por ejemplo, la probabilidad de impago de un préstamo en función de los ingresos, la puntuación de crédito, la edad, etc.).

El algoritmo de clasificación del perceptrón es un procedimiento más básico, basado en productos de puntos entre ejemplos y pesos . Cuando un ejemplo se clasifica erróneamente, el signo del producto punto está en desacuerdo con el valor de la clasificación ( $-1$ y $1$ ) en el conjunto de entrenamiento. Para corregirlo, el vector de ejemplos se sumará o restará iterativamente del vector de pesos o coeficientes, actualizando progresivamente sus elementos:

Vectorialmente, el $d$ características o atributos de un ejemplo son $\bf x$ Y la idea es "pasar" el ejemplo si:

$\displaystyle \sum_{1}^d \theta_i x_i > \text{theshold}$ o...

$h(x) = \text{sign}\big(\displaystyle \sum_{1}^d \theta_i x_i - \text{theshold}\big)$ . La función de signo da como resultado $1$ o $-1$ en lugar de $0$ y $1$ en la regresión logística.

El umbral se absorberá en el sesgo coeficiente, $+ \theta_0$ . La fórmula es ahora:

$h(x) = \text{sign}\big(\displaystyle \sum_0^d \theta_i x_i\big)$ o vectorizado: $h(x) = \text{sign}(\theta^T\bf x)$ .

Los puntos mal clasificados tendrán $\text{sign}(\theta^T\bf x) \neq y_n$ lo que significa que el producto punto de $\Theta$ y $\bf x_n$ serán positivos (vectores en la misma dirección), cuando $y_n$ es negativo, o el producto punto será negativo (vectores en direcciones opuestas), mientras que $y_n$ es positivo.


He estado trabajando en las diferencias entre estos dos métodos en un conjunto de datos del mismo curso en el que los resultados de las pruebas en dos exámenes distintos están relacionados con la aceptación final en la universidad:

El límite de decisión se puede encontrar fácilmente con la regresión logística, pero fue interesante ver que aunque los coeficientes obtenidos con el perceptrón eran muy diferentes que en la regresión logística, la simple aplicación del $\text{sign}(\cdot)$ a los resultados, ha dado un algoritmo de clasificación igual de bueno. De hecho, la máxima precisión (el límite establecido por la inseparabilidad lineal de algunos ejemplos) se alcanzó en la segunda iteración. Esta es la secuencia de líneas de división de los límites como $10$ iteraciones aproximaron los pesos, partiendo de un vector aleatorio de coeficientes:

La precisión en la clasificación en función del número de iteraciones aumenta rápidamente y se estabiliza en $90\%$ La curva de aprendizaje es consistente con la rapidez con la que se alcanza un límite de decisión casi óptimo en el videoclip de arriba. Este es el gráfico de la curva de aprendizaje:

enter image description here


El código utilizado es aquí .

14voto

SteveC Puntos 164

Aquí puede surgir cierta confusión. Originalmente, un perceptrón sólo se refería a las redes neuronales con una función escalonada como función de transferencia. En ese caso, por supuesto, la diferencia es que la regresión logística utiliza una función logística y el perceptrón utiliza una función escalonada. En general, ambos algoritmos deberían producir el mismo límite de decisión (al menos para un perceptrón de una sola neurona). Sin embargo:

  1. El vector de parámetros para el perceptrón puede ser escalado arbitrariamente en comparación con el derivado por la regresión logística. Cualquier escala del vector de parámetros definirá el mismo límite, pero las probabilidades calculadas por la regresión logística dependen de la escala exacta.
  2. Por supuesto, la salida de una función escalonada no puede interpretarse como ningún tipo de probabilidad.
  3. Dado que una función escalonada no es diferenciable, no es posible entrenar un perceptrón utilizando los mismos algoritmos que se emplean para la regresión logística.

En algunos casos, el término perceptrón también se utiliza para referirse a las redes neuronales que utilizan una función logística como función de transferencia (sin embargo, esto no se ajusta a la terminología original). En ese caso, una regresión logística y un "perceptrón" son exactamente lo mismo. Por supuesto, con un perceptrón es posible utilizar múltiples neuronas que utilicen todas una función de transferencia logística, lo que se relaciona en cierto modo con el apilamiento de la regresión logística (no es lo mismo, pero es similar).

4voto

Aksakal Puntos 11351

Se puede utilizar la regresión logística para construir un perceptrón. La regresión logística utiliza la función logística para construir la salida a partir de unas entradas dadas. La función logística produce una salida suave entre 0 y 1, por lo que se necesita una cosa más para que sea un clasificador, que es un umbral. Los perceptrones pueden construirse con otras formas funcionales, por supuesto, no sólo logísticas .

La regresión logística te produce el modelo que se ve así: $$y(x_1,x_2|b)=\frac{e^{b_0+b_1x_1+b_2x_2}}{1+e^{b_0+b_1x_1+b_2x_2}}$$ La parte de la regresión consiste en estimar los coeficientes $b_1,b_2,b_3$ la parte logística es la forma de la función $\frac{e^x}{1+e^x}$

Una vez calculado $y(x|b)$ entradas dadas $x$ y parámetros $b$ , hay que decidir si es 0 o 1 porque la salida $y$ es cualquier número entre 0 y 1. Por lo tanto, se necesita un umbral $Y$ , de tal manera que $\tilde y=0$ para $y(x|b)<Y$ y $\tilde y=1$ para $y(x|b)\ge Y$ .

2voto

Cory Puntos 1

Supongamos que nuestras observaciones de entrenamiento son los vectores de características $x_1,\ldots, x_N \in \mathbb R^n$ y las etiquetas correspondientes son $y_1,\ldots,y_N \in \{-1, 1 \}$ . Para simplificar la nota, vamos a añadir un $1$ al final de cada vector $x_i$ . El algoritmo del perceptrón puede interpretarse como el uso del descenso subgradiente estocástico para resolver el problema de optimización \begin{align} \tag{1}\text{minimize} & \quad \frac{1}{N}\sum_{i=1}^N \max(-y_i\beta^T x_i,0). \end{align} La variable de optimización es $\beta \in \mathbb R^{n+1}$ . Desde esta perspectiva, la diferencia entre el algoritmo del perceptrón y la regresión logística es que el algoritmo del perceptrón minimiza una función objetivo diferente . (La derivación de la regresión logística a través de la estimación de máxima verosimilitud es bien conocida; en este post me centro en la interpretación del algoritmo del perceptrón).

La función objetivo del problema (1) puede escribirse como $\frac{1}{N}\sum_i \ell_i(\beta)$ , donde $$ \ell_i(\beta) = \max(-y_i \beta^T x_i,0). $$ Un subgradiente de $\ell_i$ en $\beta$ es el vector $$ g = \begin{cases} 0 & \quad \text{if } -y_i \beta^T x_i \leq 0 \qquad \text{(so $y_i$ and $\beta^T x_i$ have the same sign)}\\ - y_i x_i & \quad \text{otherwise.} \end{cases} $$ Cada época del descenso subgradiente estocástico (con tamaño de paso $t > 0)$ ) recorre las observaciones de entrenamiento y, para el $i$ La observación más reciente, realiza la actualización $$ \beta \leftarrow \beta - t g = \begin{cases} \beta & \quad \text{if $y_i$ and $\beta^T x_i$ have the same sign} \\ \beta + t y_i x_i & \quad \text{otherwise.} \end{cases} $$ Reconocemos que esta es la iteración para el algoritmo del perceptrón (con tasa de aprendizaje $t$ ).

1voto

Digio Puntos 637

Ambos están aplicando la regresión mediante la estimación de los parámetros del mismo modelo transformado logísticamente. Según las propiedades de las funciones convexas, los valores de los parámetros serán los mismos de cualquier manera que elijas para estimarlos. Citándome a mí mismo en una respuesta anterior:

La regresión logística modela una función de la media de una distribución Bernoulli como una ecuación lineal (siendo la media igual a la probabilidad p de un evento Bernoulli). Utilizando el enlace logit como función de la media (p), se puede derivar analíticamente el logaritmo de las probabilidades (log-odds) y utilizarlo como respuesta de un llamado modelo lineal generalizado. Además de la predicción, esto permite interpretar el modelo en la inferencia causal. Esto es algo que no se puede conseguir con un Perceptrón lineal.

El Perceptrón, toma la función logit inversa (logística) de wx, y no utiliza supuestos probabilísticos ni para el modelo ni para su parámetro. El entrenamiento en línea le dará exactamente las mismas estimaciones para los pesos/parámetros del modelo, pero no podrá interpretarlos en la inferencia causal debido a la falta de valores p, intervalos de confianza y, bueno, un modelo de probabilidad subyacente.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X