39 votos

¿Cómo determinar la confianza de una predicción de una red neuronal?

Para ilustrar mi pregunta, supongamos que tengo un conjunto de entrenamiento en el que la entrada tiene un grado de ruido pero la salida no, por ejemplo;

# Training data
[1.02, 1.95, 2.01, 3.06] : [1.0]
[2.03, 4.11, 5.92, 8.00] : [2.0]
[10.01, 11.02, 11.96, 12.04] : [1.0]
[2.99, 6.06, 9.01, 12.10] : [3.0]

aquí la salida es el gradiente de la matriz de entrada si fuera sin ruido (no el gradiente real).

Después de entrenar la red, la salida debería ser algo así para una entrada dada.

# Expected Output
[1.01, 1.96, 2.00, 3.06] : 95% confidence interval of [0.97, 1.03]
[2.03, 4.11, 3.89, 3.51] : 95% confidence interval of [2.30, 4.12]

Mi pregunta es cómo se puede crear una red neuronal que devuelva un valor predicho y una medida de confianza, como una varianza o un intervalo de confianza.

4voto

Rosstified Puntos 2327

Los intervalos de predicción (PI) en problemas de regresión y clasificación no paramétricos, como las redes neuronales, las SVM, los bosques aleatorios, etc., son difíciles de construir. Me encantaría escuchar otras opiniones al respecto.

Sin embargo, hasta donde yo sé, la Predicción Conforme (CP) es el único método con principios para construir PI calibrados para la predicción en problemas de regresión y clasificación no paramétricos. Para un tutorial sobre CP, véase Shfer & Vovk (2008), J. Investigación sobre el aprendizaje automático 9 , 371-421 [pdf]

3voto

Mike Puntos 21

No he oído hablar de ningún método que ofrezca un intervalo de confianza para una predicción de una red neuronal. A pesar de la falta de metodología formal, parece que podría ser factible construir uno. Nunca lo he intentado debido a la potencia de cálculo que se necesitaría y no puedo afirmar que funcione con seguridad, pero un método que podría funcionar para una red neuronal pequeña (o con una potencia de GPU increíblemente rápida podría funcionar para redes de tamaño moderado) sería volver a muestrear el conjunto de entrenamiento y construir muchas redes similares (digamos 10.000 veces) con los mismos parámetros y ajustes iniciales, y construir intervalos de confianza basados en las predicciones para cada una de sus redes muestreadas.

Por ejemplo, en las 10.000 redes entrenadas como se ha comentado anteriormente, se podría obtener 2,0 (después de redondear las predicciones de regresión de la red neuronal) 9.000 de esas veces, por lo que se predeciría 2,0 con un IC del 90%. A continuación, se podría construir una matriz de CIs para cada predicción realizada y elegir la modalidad para informar como el CI principal.

3voto

Daniel F Puntos 138

Este artículo es una interesante presentación de Yarin Gal de una técnica basada en el abandono:

http://mlg.eng.cam.ac.uk/yarin/blog_3d801aa532c1ce.html

Versión archivada: https://web.archive.org/web/20210422213844/http://mlg.eng.cam.ac.uk/yarin/blog_3d801aa532c1ce.html

3voto

John Richardson Puntos 1197

Trabajo en curso...

Se ha trabajado mucho en los intervalos de predicción de las redes neuronales desde hace años:

El enfoque más sencillo (Nix y Weigend, 1994) consiste en entrenar una segunda red neuronal para predecir el error medio cuadrático de la primera. Las redes de regresión entrenadas para minimizar el error medio cuadrático aprenden la media condicional de la distribución de los objetivos, por lo que la salida de la primera red es una estimación de la media condicional de los objetivos y la segunda aprende la media condicional de la distancia al cuadrado de los objetivos respecto a la media, es decir, la varianza condicional. En la práctica, no tienen que ser redes separadas, puedes tener una red con dos salidas, una para la media condicional y otra para la varianza condicional.

Referencias

D. A. Nix y A. S. Weigend, "Estimating the mean and variance of the target probability distribution" (Estimación de la media y la varianza de la distribución de probabilidad del objetivo), Proceedings of 1994 IEEE International Conference on Neural Networks (ICNN'94), 1994, pp. 55-60 vol.1, doi: 10.1109/ICNN.1994.374138.

David A. Nix, Andreas S. Weigend, Learning Local Error Bars for Nonlinear Regression, NIPS 1994 ( pdf )

CM Bishop, CS Qazaz, Regresión con ruido dependiente de la entrada: A Bayesian treatment, Advances in neural information processing systems, 347-353, 1997 (pdf)

2voto

nunya Puntos 21

Me parece que un método sencillo es Abandono de MC . En la predicción se duplica el caso y se expande en un lote y se habilita el dropout, entonces se obtendrán múltiples salidas para la misma entrada pero con diferentes parámetros de caída . Se obtienen múltiples salidas a través de un pase hacia adelante (y sólo un modelo) y luego se obtiene una distribución de la salida.

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