Versión de tres oraciones:
Cada capa puede aplicar cualquier función que desee a la capa anterior (generalmente una transformación lineal seguida de una no linealidad de aplastamiento).
El trabajo de las capas ocultas es transformar las entradas en algo que la capa de salida pueda usar.
La capa de salida transforma las activaciones de la capa oculta en la escala en la que desea que esté su salida.
Como si tuvieras 5:
Si desea que una computadora le diga si hay un autobús en una imagen, la computadora podría tener un tiempo más fácil si tuviera las herramientas adecuadas.
Por lo tanto, su detector de autobús puede estar hecho de un detector de ruedas (para ayudarlo a decir que es un vehículo) y un detector de caja (ya que el autobús tiene la forma de una caja grande) y un detector de tamaño (para decirle que es demasiado grande para ser un automóvil ) Estos son los tres elementos de su capa oculta: no son parte de la imagen en bruto, son herramientas que diseñó para ayudarlo a identificar buses.
Si los tres detectores se encienden (o tal vez si están especialmente activos), entonces hay una buena posibilidad de que tenga un autobús frente a usted.
Las redes neuronales son útiles porque hay buenas herramientas (como la propagación hacia atrás) para construir muchos detectores y armarlos.
Como si fueras un adulto
Una red neuronal de avance aplica una serie de funciones a los datos. Las funciones exactas dependerán de la red neuronal que esté utilizando: con mayor frecuencia, estas funciones calculan una transformación lineal de la capa anterior, seguida de una no linealidad aplastante. Algunas veces las funciones harán algo más (como calcular funciones lógicas en sus ejemplos, o promediar sobre píxeles adyacentes en una imagen). Entonces, los roles de las diferentes capas podrían depender de las funciones que se están calculando, pero trataré de ser muy general.
Xhyfxhghy
f(x)g(f(x))
fg
g(f(x))fg
Un ejemplo con funciones lógicas:
fg
Funciones de primera capa:
- Asegúrese de que al menos un elemento sea "VERDADERO" (usando OR)
- Asegúrese de que no todos sean "VERDADEROS" (usando NAND)
Función de segunda capa:
- Asegúrese de que se cumplan los dos criterios de la primera capa (usando AND)
La salida de la red es solo el resultado de esta segunda función. La primera capa transforma las entradas en algo que la segunda capa puede usar para que toda la red pueda realizar XOR.
Un ejemplo con imágenes:
La diapositiva 61 de esta charla, también disponible aquí como una sola imagen, muestra (una forma de visualizar) lo que buscan las diferentes capas ocultas en una red neuronal en particular.
La primera capa busca piezas cortas de bordes en la imagen: estos son muy fáciles de encontrar a partir de datos de píxeles en bruto, pero no son muy útiles por sí mismos para decirle si está mirando una cara, un autobús o un elefante. .
La siguiente capa compone los bordes: si los bordes de la capa oculta inferior se ajustan de cierta manera, entonces uno de los detectores de ojos en el medio de la columna más a la izquierda podría encenderse. Sería difícil crear una sola capa que fuera tan buena para encontrar algo tan específico a partir de los píxeles sin procesar: los detectores de ojos son mucho más fáciles de construir con detectores de borde que con píxeles sin procesar.
La siguiente capa compone los detectores de ojos y los detectores de nariz en caras. En otras palabras, estos se iluminarán cuando los detectores oculares y los detectores nasales de la capa anterior se enciendan con los patrones correctos. Estos son muy buenos para buscar tipos particulares de caras: si una o más de ellas se iluminan, la capa de salida debe informar que hay una cara presente.
Esto es útil porque los detectores faciales son fáciles de construir con detectores oculares y nasales, pero realmente difíciles de construir con intensidades de píxeles.
Por lo tanto, cada capa lo lleva más y más lejos de los píxeles sin procesar y más cerca de su objetivo final (por ejemplo, detección de rostros o detección de bus).
Respuestas a otras preguntas variadas
"¿Por qué algunas capas en la capa de entrada están conectadas a la capa oculta y otras no?"
Los nodos desconectados en la red se denominan nodos de "sesgo". Hay una muy buena explicación aquí . La respuesta corta es que son como términos de intercepción en regresión.
"¿De dónde vienen las imágenes del" detector de ojos "en el ejemplo de imagen?"
No he verificado dos veces las imágenes específicas a las que he vinculado, pero en general, estas visualizaciones muestran el conjunto de píxeles en la capa de entrada que maximizan la actividad de la neurona correspondiente. Entonces, si pensamos en la neurona como un detector ocular, esta es la imagen que la neurona considera más parecida a un ojo. La gente generalmente encuentra estos conjuntos de píxeles con un procedimiento de optimización (escalada).
En este artículo de algunas personas de Google con una de las redes neuronales más grandes del mundo, muestran una neurona de "detector de rostros" y una neurona de "detector de gatos" de esta manera, así como una segunda forma: también muestran las imágenes reales que activan el neurona más fuertemente (figura 3, figura 16). El segundo enfoque es bueno porque muestra cuán flexible y no lineal es la red: estos "detectores" de alto nivel son sensibles a todas estas imágenes, a pesar de que no parecen particularmente similares a nivel de píxeles.
Avíseme si algo aquí no está claro o si tiene más preguntas.