De mínimos cuadrados de los modelos, la función de costo se define como el cuadrado de la diferencia entre el valor predicho y el real valor como una función de la entrada.

Cuando hacemos la regresión logística, podemos cambiar la función de costo a ser un logirithmic función, en lugar de definir que es el cuadrado de la diferencia entre la función sigmoidea (el valor de salida) y el resultado real.

Es OK para cambiar y definir nuestra propia función de costo para determinar los parámetros?

  • No es tan simple, hay un número de funciones de enlace posible de regresión logística, no sólo canónica de la función logit. Me permito sugerir la lectura de algunos teoría detrás de los modelos lineales generalizados en.wikipedia.org/wiki/Generalised_linear_model
  • Si usted va por delante y construir una función de pérdida cuadrática en el caso muy especial, donde las entradas de $x$ son escalares, entonces su función de costo es: $C(w,b):= \Sigma_{x} | y(x) – \hat{y}(x)|^2=\Sigma_{x} | y(x) – \sigma(wx+b)|^2$. Ahora si intenta aplicar el gradiente de descenso, vas a ver que: $C'(x)$ es un múltiplo de $\sigma'(wx+b)$. Ahora, la función sigmoidea ser asintótica, sus derivados $\sigma'(z)$ se convierte casi en cero cuando la salida $\sigma(z)$ es cercano a los $0$ o $1$. Esto significa: cuando el aprendizaje es malo, por ejemplo, $\sigma(wx+b) \aprox 0$ pero $y(x)=1$, entonces $C'(w), C'(b)\aprox 0$. (cont.)
InformationsquelleAutor London guy | 2012-08-28

5 Comentarios

  1. 28

    Sí, puede definir su propia función de pérdida, pero si usted es un principiante, usted está probablemente mejor usar uno de la literatura. Hay condiciones que la pérdida de funciones que debe cumplir:

    1. Que debe aproximarse a la pérdida real que usted está tratando de minimizar. Como se dijo en la otra respuesta, el estándar de la pérdida de las funciones de clasificación es cero-uno-pérdida (tasa de error en la clasificación) y los utilizados para el entrenamiento de los clasificadores son aproximaciones de esa pérdida.

      El cuadrado del error de pérdida de regresión lineal no se usa porque no aproximado cero-uno-pérdida: cuando el modelo predice +50 para algunos de la muestra, mientras que la intención de respuesta fue de +1 (positiva de la clase), la predicción es en el lado correcto de la decisión límite para la cero-uno-pérdida es cero, pero el cuadrado del error de la pérdida es aún 492 = 2401. Algunos algoritmos de entrenamiento va a perder un montón de tiempo haciendo predicciones muy cerca de { -1, +1} en lugar de centrarse en conseguir sólo el signo/clase de etiqueta a la derecha.(*)

    2. La pérdida de la función debe trabajar con su intención de algoritmo de optimización. Es por eso que cero-uno-pérdida no es utilizado directamente: no funciona con gradiente basado en métodos de optimización, ya que no existe una buena definición de gradiente (o incluso un subgradiente, como la bisagra de la pérdida para la SVMs ha).

      El principal algoritmo que optimiza el cero-uno-pérdida directa es el viejo tipo perceptrón algoritmo.

    También, cuando usted lo enchufa en una medida de la pérdida de la función, que ya no es la construcción de un modelo de regresión logística, pero algún otro tipo de clasificador lineal.

    (*) Error cuadrático es se utiliza con el análisis discriminante lineal, pero que suele ser resuelto en cerca de lugar de forma iterativa.

    • Respecto del punto 1., en la regresión logística el modelo puede predecir de +50, porque la salida es escalado por la función logística que delimita la entrada a (0,1).
  2. 10

    La función logística, la bisagra de la pérdida, suavizada de la bisagra de la pérdida, etc. se utilizan porque son límites superiores en el cero de una clasificación binaria de la pérdida.

    Estas funciones generalmente también penalizar a los ejemplos que son clasificados correctamente, pero todavía están cerca del límite de decisión, creando así un «margen».

    Por lo tanto, si usted está haciendo de clasificación binaria, entonces usted debe elegir un estándar de la función de pérdida.

    Si usted está tratando de resolver un problema diferente, a continuación, una diferente función de pérdida es probable que funcione mejor.

  3. 3

    Usted no elige la función de pérdida, puede elegir el modelo de

    La función de pérdida es generalmente determinada directamente por el modelo cuando se ajuste a sus parámetros a través de la Estimación de Máxima Verosimilitud (MLE), que es el más popular de enfoque en el Aprendizaje de Máquina.

    Que usted ha mencionado el Error cuadrático medio como una función de pérdida para la regresión lineal. A continuación, «cambiar la función de costo a ser una función logarítmica», en referencia a la Cruz de la Pérdida de Entropía. No hemos de cambio de la función de costo. De hecho, el Error cuadrático medio es la Cruz, la Pérdida de Entropía para la regresión lineal, cuando asumimos ypara estar normalmente distribuidos por una Gaussiana, cuya media es definida por Wx + b.

    Explicación

    Con MLE, elige los parámetros de forma, que la probabilidad de que los datos de entrenamiento se maximiza. La probabilidad de que todo el conjunto de datos de entrenamiento es un producto de las probabilidades de cada entrenamiento de la muestra. Debido a que puede subdesbordamiento a cero, se le suele maximizar el logaritmo de la probabilidad de los datos de entrenamiento /minimizar el negativo de la log-verosimilitud. Por lo tanto, la función de costo se convierte en una suma de la negativa de registro de la probabilidad de cada muestra, la cual está dada por:

    -log(p(y | x; w))

    donde w son los parámetros de nuestro modelo (incluyendo el sesgo). Ahora, para la regresión logística, que es el logaritmo de la que usted se refiere. Pero, ¿qué acerca de la reclamación, que esto también se corresponde con el MSE para la regresión lineal?

    Ejemplo

    Para mostrar el MSE se corresponde con la cruz de la entropía, suponemos que y está normalmente distribuida alrededor de una media, que podemos predecir el uso de w^T x + b. También se asume que se tiene un fijo de la varianza, con lo que no podemos predecir la varianza con nuestro regresión lineal, sólo la media de la Gaussiana.

    p(y | x; w) = N(y; w^T x + b, 1)

    Se puede ver, mean = w^T x + b y variance = 1

    Ahora, la función de pérdida corresponde a

    -log N(y; w^T x + b, 1)

    Si echamos un vistazo a cómo el Gaussiano N se define, vemos:

    Función de costo de la regresión logística

    Ahora, tomar el logaritmo negativo de que. Esto se traduce en:

    Función de costo de la regresión logística

    Elegimos un fijo de la varianza de 1. Esto hace que el primer término constante y reduce el segundo término:

    0.5 (y - mean)^2

    Ahora, recuerde que hemos definido como la media como w^T x + b. Desde que el primer término es constante, minimizando el logaritmo negativo de la Gaussiana corresponde a la minimización de

    (y - w^T x + b)^2

    que corresponde para minimizar el Error cuadrático medio.

  4. 0

    , otras funciones de costo puede ser utilizado para determinar los parámetros.

    El cuadrado de la función de error (comúnmente se utiliza la función de regresión lineal) no es muy adecuado para la regresión logística.

    Como en el caso de la regresión logística de la hipótesis no es lineal (función sigmoide), lo que hace que la plaza de la función de error no-convexo.

    La función logarítmica es una función convexa para el que no hay ningún local optima, por lo que el gradiente de descenso funciona bien.

  5. 0

    Suponga que en el modelo de regresión logística, hemos escalar las entradas x, y las salidas del modelo de probabilidad $\hat{y}(x)=sigma(wx+b)$ de cada muestra de entrada x .Si usted va por delante y construir una función de pérdida cuadrática en el caso muy especial, donde las entradas de $x$ son escalares, entonces su función de costo es: $C(w,b):= \Sigma_{x} | y(x) – \hat{y}(x)|^2=\Sigma_{x} | y(x) – \sigma(wx+b)|^2$. Ahora si intenta aplicar el gradiente de descenso, vas a ver que: $C'(w), C'(b)$ son múltiplos de $\sigma'(wx+b)$. Ahora, la función sigmoidea ser asintótica, sus derivados $\sigma'(z)$ se convierte casi en cero cuando la salida $\sigma(z)$ es cercano a los $0$ o $1$. Esto significa: cuando el aprendizaje es malo, por ejemplo, $\sigma(wx+b) \aprox 0$ pero $y(x)=1$, entonces $C'(w), C'(b)\aprox 0$.

    Ahora, la situación es mala, desde dos puntos de vista: (1) hace que el gradiente de descenso numéricamente mucho más caro, porque incluso cuando estamos lejos de minimizar C(w,b), no estamos convergiendo lo suficientemente rápido, y (2) que contradice el aprendizaje humano: aprender rápido cuando cometemos un gran error.

    Sin embargo, si se calcula el C'(w) y C'(b) para la entropía de la función de costo, este problema no ocurre, ya que a diferencia de los derivados de costo cuadrática, los derivados de la cruz de la entropía costo no es un múltiplo de $sigma'(wx+b)$, y por lo tanto, cuando el modelo de regresión logística de las salidas cercanas a 0 o 1, el gradiente de la pendiente no necesariamente lento hacia abajo, por lo tanto la convergencia a los mínimos sucede más rápido. Usted puede encontrar los relevantes de la discusión aquí: http://neuralnetworksanddeeplearning.com/chap3.html, un excelente libro lo recomiendo altamente!

    Además, la cruz de entropía de las funciones de costo son solo registro negativo de máxima verosimilitud funciones (MLE) se utiliza para estimar los parámetros del modelo, y de hecho, en el caso de la regresión lineal, que minimiza la función de coste cuadrática es equivalente a la maximización de la MLE, o, equivalentemente, minimizando el logaritmo negativo de la MLE=cruz de la entropía, con la subyacente supuesto modelo de regresión lineal-ver P. 12 de http://cs229.stanford.edu/notes/cs229-notes1.pdf para más detalles. Por lo tanto, para cualquier máquina modelo de aprendizaje, sea de clasificación y regresión, la búsqueda de los parámetros mediante la maximización de la MLE (o la minimización de la cruz de la entropía) tiene una significación estadística, mientras que minimiza el costo cuadrática para la regresión logística no tiene (aunque no para la regresión lineal, como se dijo antes).

    Espero que aclara las cosas!

Dejar respuesta

Please enter your comment!
Please enter your name here