Redes neuronales de cápsula: qué es, cómo funciona, arquitectura y componentes

Publicado: 2020-04-03

¿Cómo reconoces las cosas? Si escribo 'Su' y 'Thier', ¿los leerías a ambos como 'Su'? Su respuesta probablemente sería sí.

Tu cerebro puede identificar características primarias y ayudarte a reconocer cosas. Es por eso que puedes detectar caras fácilmente. Las redes neuronales de la cápsula funcionan de manera similar. En este artículo, veremos qué son y cómo funcionan. Si está interesado en los algoritmos de aprendizaje automático , seguramente le gustará este artículo. Entonces empecemos.

Tabla de contenido

¿Qué es una Red Neuronal Cápsula?

Una red neuronal de cápsula se centra en la replicación de redes neuronales biológicas para realizar un mejor reconocimiento y segmentación. Son un tipo de Red Neuronal Artificial. Tienen una capa anidada debajo de una capa de las redes neuronales de la cápsula, eso es lo que indica la palabra 'cápsula'.

Las cápsulas en estas redes determinan los parámetros de las características de un objeto. Suponga que sus redes de cápsulas tienen que identificar una cara. Las cápsulas se centrarán en determinar si los rasgos faciales específicos están presentes o no. No se limitan a esto solo. También verificarán cómo se organizan las características de la cara en particular. Por lo tanto, su sistema puede identificar una cara solo cuando las cápsulas determinan que los elementos de esa cara están en el orden correcto.

Quizás se pregunte, ¿cómo determinan el orden de esas características? Estas redes pueden hacerlo debido a la información que les das. Cuando han examinado cientos (o incluso miles) de imágenes, pueden realizar esta tarea de manera eficiente.

Más información: Redes neuronales: aplicaciones en el mundo real

¿Cómo funcionan las redes de cápsulas?

Ahora, echemos un vistazo a cómo funcionan estas redes. Inicialmente, las cápsulas realizan la multiplicación de matrices de las matrices de peso con vectores de entrada. Esto nos da información sobre la relación espacial entre varias características de bajo y alto nivel.

Después de eso, las cápsulas seleccionan una cápsula principal. Hacen la selección a través del enrutamiento dinámico, que analizamos más adelante en este artículo. Una vez que han elegido su cápsula madre, encuentran la suma de los vectores aplastados entre 0 y 1 cuando se aferran a su dirección. Realiza el aplastamiento utilizando la norma del marco de coordenadas como la probabilidad de existencia y la distancia del coseno como la medida de concordancia.

Hay una diferencia significativa entre las redes neuronales estándar y las redes neuronales de cápsula. Mientras que las redes de cápsulas usan cápsulas para encapsular partes esenciales de información sobre una imagen, las redes neuronales estándar usan neuronas para este propósito. Las cápsulas producen vectores, mientras que las neuronas solo pueden producir cantidades escalares. Por esta razón, las cápsulas pueden identificar la dirección de una cara (o una característica específica), pero las neuronas no. Si cambiara la dirección de cualquier característica, el valor del vector seguirá siendo el mismo, pero su dirección cambiará según el cambio de posición.

Las redes de cápsulas funcionan sorprendentemente bien en conjuntos de datos pequeños y facilitan la interpretación de imágenes robustas. Aparte de eso, conservan toda la información de la imagen, incluida la textura, la ubicación y la pose. Su único inconveniente es que no pueden superar grandes conjuntos de datos.

Leer: 6 tipos de funciones de activación en redes neuronales

¿Qué es la Arquitectura de una Red Neuronal Cápsula?

Los dos componentes principales de una red de cápsulas son un codificador y un decodificador. En total, contienen seis capas. El codificador tiene las primeras tres capas, y tienen la responsabilidad de tomar y convertir la imagen de entrada en un vector (16 dimensiones). La primera capa del codificador es la red neuronal convolucional y extrae las características básicas de la imagen.

La segunda capa es la red PrimaryCaps, y toma esas características esenciales y encuentra patrones más detallados entre ellas. Por ejemplo, podría ver la relación espacial entre trazos particulares. Diferentes conjuntos de datos tienen diferentes números de cápsulas en la red PrimaryCaps; por ejemplo, el conjunto de datos MNIST tiene 32 cápsulas. La tercera capa es la Red DigitCaps, y la cantidad de cápsulas presentes en ella también varía. Después de estas capas, el codificador tiene un vector de 16 dimensiones que va al decodificador.

El decodificador tiene tres capas conectadas. Toma el vector de 16 dimensiones e intenta reconstruir la misma imagen desde cero con la ayuda de los datos que tiene. De esta forma, la red se vuelve más robusta ya que puede hacer predicciones de acuerdo a su conocimiento.

Lea también: Red neuronal recurrente en Python

Cálculos en una CNN

Multiplicación de matrices

Entre la primera capa y la segunda capa, realizamos la multiplicación de matrices. Esto codifica la información de las relaciones espaciales, y la información codificada muestra la probabilidad de las clasificaciones de etiquetas.

Pesos escalares

En esta etapa de cómputos, las cápsulas de nivel inferior ajustan sus pesos de acuerdo con los pesos de las cápsulas de nivel superior. Lo hacen para igualar los pesos de las cápsulas de alto nivel. Las cápsulas de alto nivel grafican la distribución del peso y aceptan la asignación más grande para pasar. Todos se comunican entre sí a través del enrutamiento dinámico.

Enrutamiento dinámico

En el enrutamiento dinámico, las cápsulas inferiores envían sus datos a la cápsula principal. Todos envían sus datos a la cápsula más adecuada según ellos, y la cápsula que obtiene la mayor parte de los datos se convierte en la cápsula principal. Las cápsulas principales siguen el acuerdo y asignan los pesos en consecuencia.

Para entender el enrutamiento dinámico, suponga que le da a su red de cápsulas imágenes de una casa. Enfrenta algunos problemas con la identificación del techo de la casa. Así las cápsulas analizan la imagen, en concreto su parte constante. Coordinan el marco de la casa con respecto a las paredes y el techo.

Primero toman la decisión de si el objeto es una casa o no y luego envían sus predicciones a las cápsulas de alto nivel. Si las proyecciones del techo con respecto a las paredes coinciden con otras predicciones de las cápsulas de bajo nivel, la salida dice que el objeto es una casa. Este es el proceso de enrutamiento por acuerdo.

No linealidad de vector a vector

Una vez que se completa el enrutamiento dinámico, el sistema aplasta la información, lo que significa que la comprime. Le da la probabilidad de que la cápsula reconozca o no una función en particular.

Pensamientos finales

Después de leer este artículo, debe haberse familiarizado con las redes neuronales de cápsula y sus operaciones. También debes haberte dado cuenta de lo útiles que podrían ser sus acciones.

Si desea obtener más información sobre los algoritmos de aprendizaje automático, consulte nuestro blog. Encontrará algunos artículos bien informados allí.

Si está interesado en obtener más información sobre el aprendizaje automático, consulte el Diploma PG en aprendizaje automático e IA de IIIT-B y upGrad, que está diseñado para profesionales que trabajan y ofrece más de 450 horas de capacitación rigurosa, más de 30 estudios de casos y asignaciones, IIIT- B Estado de exalumno, más de 5 proyectos prácticos finales prácticos y asistencia laboral con las mejores empresas.

¿Qué son las redes neuronales transformadoras?

Cuando una red neuronal toma una secuencia de vectores como entrada, la cambia a un vector denominado (el proceso se denomina codificación) y luego lo decodifica en otra secuencia, se denomina red neuronal transformadora. El transformador es un componente que se encuentra en muchas arquitecturas de redes neuronales para procesar datos secuenciales, incluidos texto en lenguaje sencillo, señales acústicas, secuencias genómicas y datos de series temporales. La aplicación más común de las redes neuronales transformadoras es en el procesamiento del lenguaje natural.

¿Qué son las redes neuronales gráficas y cómo funcionan los gráficos?

Las redes neuronales gráficas, o GNN, son modelos neuronales que utilizan la transmisión de mensajes entre nodos gráficos para representar la dependencia gráfica. Estas redes operan directamente en las estructuras gráficas dadas. En palabras simples, cada nodo en el gráfico tiene una etiqueta y se usa una red neuronal para predecir los nodos de la etiqueta en función de la realidad fundamental. Los GNN han adquirido prominencia recientemente en una variedad de disciplinas, incluidas las redes sociales, los gráficos de conocimiento, los sistemas de recomendación e incluso las ciencias de la vida.

¿Son las cápsulas diferentes de las redes de cápsulas?

Ambos términos, cápsulas y redes de cápsulas, están conectados con el aprendizaje profundo, pero no son lo mismo. Un grupo de neuronas cuyos vectores de actividad representan los parámetros de instanciación de un determinado elemento, como el de un objeto, se conoce como cápsula. Sin embargo, las redes cápsula son redes que pueden recuperar información geográfica y otros aspectos importantes para minimizar la pérdida de datos durante el proceso de operaciones de agrupación.