Tema
Redes neuronales básicas
- Machine Learning
- Nivel intermedio
Una red neuronal encadena capas de unidades que calculan una combinación lineal de sus entradas seguida de una función de activación no lineal, y sus pesos se ajustan por descenso de gradiente con retropropagación del error.
Nombre en inglés
Basic neural networks
Intuición
Una sola unidad con activación escalón es un perceptrón y traza una recta, de modo que no puede resolver la disyunción exclusiva. Al apilar una capa oculta, la red construye primero unas cuantas rectas y después combina sus salidas, con lo que aparecen fronteras curvas o partidas. La no linealidad es la pieza esencial, porque componer dos capas lineales sin activación produce otra vez una función lineal.
Fórmula
a = sigma(w^T x + b), con sigma(z) = 1 / (1 + e^{-z}) y sigma'(z) = sigma(z) (1 - sigma(z))
Ejemplo resuelto
Una unidad tiene pesos w = (1, -1) y sesgo b = 0. Con la entrada x = (2, 1) el argumento vale 2 menos 1 = 1, y la sigmoide de 1 vale 1 dividido entre 1 + 0.368 = 0.731. La derivada en ese punto vale 0.731 por 0.269 = 0.197. Si el argumento fuese 5, la salida valdría 0.993 y la derivada 0.0066, o sea treinta veces menor, que es la razón por la que las unidades saturadas casi no aprenden.
Errores frecuentes
- Inicializar todos los pesos a cero, con lo que todas las unidades de una capa calculan lo mismo y reciben el mismo gradiente, de modo que la simetría nunca se rompe.
- Esperar que un perceptrón sin capa oculta resuelva la disyunción exclusiva, problema que no es linealmente separable y que motivó históricamente el abandono del modelo.
- Dejar entradas sin normalizar, porque valores grandes empujan la sigmoide a su zona plana y el gradiente que llega a las capas anteriores se vuelve despreciable.
Ejercicio
Una unidad con pesos w = (2, -3) y sesgo b = 1 recibe la entrada x = (1, 1). Calcula su salida con activación sigmoide.
Ver la solución
El argumento vale 2 por 1 más menos 3 por 1 más 1, o sea 2 - 3 + 1 = 0. La sigmoide de 0 vale 1 dividido entre 1 + 1 = 0.5, que es el punto de máxima pendiente de la función. La derivada ahí vale 0.5 por 0.5 = 0.25, el mayor valor posible, de modo que ese ejemplo es el que más empuja los pesos durante el entrenamiento.
Respuesta: 0.5
Temas relacionados
- Descomposición de sesgo y varianza
- Optimización aleatoria
- Retropropagación
- Funciones de activación
- Descenso de gradiente