Sugeriría que primero comprenda bien cuál es el modelo probabilístico subyacente en una red neuronal bayesiana tradicional. A continuación, algunos términos se escribirán en negrita . Por favor, busque en Google esos términos para encontrar información más detallada. Esto es solo una descripción básica. Espero que ayude.
Consideremos el caso de regresión en las redes neuronales de avance y establezcamos alguna notación.
Deje denota los valores de los predictores en la capa de entrada . Los valores de las unidades en las capas internas se denotarán con , para . Finalmente, tenemos la capa de salida .( z ( ℓ ) 1 , … , z ( ℓ ) N ℓ ) ℓ = 1 , … , L - 1 ( y 1 , ... , y k )( x1, ... , xpag) = : ( z( 0 )1, ... , z( 0 )norte0 0)( z( ℓ )1, ... , z( ℓ )norteℓ)ℓ = 1 , ... , L - 1 ( y1, ... , yk) = : ( z( L )1, ... , z( L )norteL)
Los pesos y el sesgo de la unidad en la capa se denotarán con y , respectivamente, para , y .ℓ w ( ℓ ) i j b ( ℓ ) i ℓ = 1 , ... , L i = 1 ... , N ℓ j = 1 , ... , N ℓ - 1yoℓw( ℓ )yo jsi( ℓ )yoℓ = 1 , ... , Li = 1 ... , Nℓj = 1 , ... , Nℓ - 1
Deje sea la función de activación para la unidad en la capa , para e . i ℓ ℓ = 1 , ... , L i = 1 ... , N ℓg(ℓ)i:RNℓ−1→Riℓℓ=1,…,Li=1…,Nℓ
Las funciones de activación comúnmente utilizadas son la logística , ReLU (también conocida como parte positiva ) y tanh .
Ahora, para , defina las funciones de transición de capa
en el que
para .G ( ℓ ) : R N ℓ - 1 → R N ℓ : ( z ( ℓ - 1 ) 1 , … , z ( ℓ - 1 ) N ℓ - 1 ) ↦ ( z ( ℓ ) 1 , … , z ( ℓ ) N ℓ )ℓ=1,…,L
G(ℓ):RNℓ−1→RNℓ:(z(ℓ−1)1,…,z(ℓ−1)Nℓ−1)↦(z(ℓ)1,…,z(ℓ)Nℓ),
z(ℓ)i=g(ℓ)i(∑j=1Nℓ−1w(ℓ)ijz(ℓ−1)j+b(ℓ)i),
i=1,…,Nℓ
Denotando el conjunto de pesos y sesgos de todas las unidades en todas las capas por , es decir
nuestra red neuronal es la familia de funciones obtenida por la composición de las funciones de transición de capa:
θ
θ={w(ℓ)ij,b(ℓ)i:ℓ=1,…,L;i=1…,Nℓ;j=1,…,Nℓ−1},
Gθ:Rp→RkGθ=G(L)∘G(L−1)∘⋯∘G(1).
No hay probabilidades involucradas en la descripción anterior. El propósito del negocio original de redes neuronales es el ajuste de funciones .
Lo "profundo" en Deep Learning representa la existencia de muchas capas internas en las redes neuronales bajo consideración.
Dado un conjunto de entrenamiento , intentamos minimizar la función objetivo
sobre . Para algunos vectores de predictores en el conjunto de prueba , la respuesta predicha es simplemente , en la que es la solución encontrado para el problema de minimización. El estándar de oro para esta minimización es la retropropagación implementada por la biblioteca TensorFlow utilizando las funciones de paralelización disponibles en la GPU moderna{(xi,yi)∈Rp×Rk:i=1,…,n}
∑i = 1norte∥ yyo- Gθ( xyo) ∥2,
θX∗solθ^( x∗)θ^'s (para sus proyectos, consulte la interfaz de
Keras ). Además, ahora hay hardware disponible que encapsula estas tareas (
TPU ). Dado que la red neuronal en general está sobre parametrizada, para evitar el sobreajuste se agrega alguna forma de regularización a la receta, por ejemplo, sumando una
cresta como penalización a la función objetivo, o usando el
abandono durante el entrenamiento.
Geoffrey Hinton (alias Deep Learning Godfather) y sus colaboradores inventaron muchas de estas cosas. Las historias de éxito de Deep Learning están en todas partes.
Las probabilidades se introdujeron en la imagen a finales de los 80 y principios de los 90 con la propuesta de una probabilidad gaussiana
y un previo gaussiano simple (posiblemente simplista), que supone una independencia a priori de todos los pesos y sesgos en la red:
Lx , y( θ , σ2) ∝ σ- nExp( - 12 σ2∑i = 1norte∥ yyo- Gθ( xyo) ∥2) ,
π( θ , σ2) ∝ exp( - 12 σ20 0∑ℓ = 1L∑i = 1norteℓ( ( b( ℓ )yo)2+ ∑j = 1norteℓ - 1( w( ℓ )yo j)2) ) ×π( σ2) .
Por lo tanto, los previos marginales para los pesos y sesgos son distribuciones normales con media cero y varianza común . Este modelo conjunto original se puede involucrar mucho más, con el compromiso de dificultar la inferencia.σ20 0
El aprendizaje profundo bayesiano enfrenta la difícil tarea de tomar muestras de la distribución posterior correspondiente. Después de que esto se logra, las predicciones se hacen naturalmente con la distribución predictiva posterior , y las incertidumbres involucradas en estas predicciones se cuantifican completamente. El santo grial en Bayesian Deep Learning es la construcción de una solución eficiente y escalable. Se han utilizado muchos métodos computacionales en esta búsqueda: muestreo de Metropolis-Hastings y Gibbs , Hamiltoniano Monte Carlo y, más recientemente, inferencia variacional .
Vea los videos de la conferencia de NIPS para ver algunas historias de éxito: http://bayesiandeeplearning.org/