Deep Neural Network

¿Qué es?

Una red neural compleja o profunda (Deep Neural Network, en inglés), es una red compuesta de múltiples capas de procesamiento no linear, que operan de manera simultánea. Simulan y se inspiran en la forma en que trabaja el cerebro humano. Dicho de manera simplísima, este tipo de redes, tienen una capa de entrada, un montón de capas internas u “ocultas” y una capa de salida (vean la imagen debajo de este párrafo). Estas capas están conectadas unas a otras, a a través de nodos (neuronas). Estos nodos utilizan la capa que les precede como capa de entrada y la capa que les sigue, como capa de salida.

Modelo simple de una Red Neural Compleja.
Modelo simple de una Red Neural Compleja.

Ya con este modelo en mente, supongamos que tenemos un conjunto de imágenes; cada una de estas imágenes contiene al menos 4 objetos diferentes que podríamos categorizar sin problemas. Ahora bien, queremos que la máquina, aprenda a reconocer estos elementos cuando se le suministren las imágenes. Lo que haremos será etiquetar todas las imágenes con los objetos que queramos que reconozca la máquina, para poder entrenarla. De esta manera, la DNN (Deep Neural Network), comenzará a entender las cualidades específicas de cada objeto y asociarlos con las categorías correspondientes.

Cada capa en la DNN, toma los datos de la capa anterior, las examina, analiza los datos y otorga una salida de datos que son tomados por la capa siguiente. La DNN aumenta sí, en cada capa, su complejidad y detalla cada vez más los detalles de lo que aprende de capa en capa. En este punto, hay que hacer inflexión en el hecho de que la DNN aprende directamente de los datos que le llegan, con lo que aseguramos no tener injerencia sobre las cualidades que aprende la DNN desde el comienzo.

Convolutional Neural Network | Red Neuronal Convolucional

Comencemos en el cerebro. Las circunvoluciones cerebrales, son el resultado de los giros bruscos y suaves en la superficie del cerebro,a plegarse sobre si mismo en esa región. Cada circunvolución controla la diferentes actividades.

Regresemos a las máquinas. Una red neuronal convolucional (CNN, o ConvNet) es una forma de programar algoritmos, muy popular en temas de aprendizaje profundo (DL) para tratar y clasificar imágenes y video.

Como prácticamente todas las máquinas de DL, una ConvNet, tiene una capa de entrada y una de salida, con miles de capas ocultas entre ellas. que relizan tres tipos de procesamiento de datos: convolución, agrupación o unidad lineal rectificada (ReLU), que procesa los datos de entrada a través de un conjunto de convolucional de filtros, que se activan ante ciertas características de los datos.

La agrupación simplifica la salida realizando funciones no lineales y reduce el número de parámetros que la la red necesita aprender.

La unidad de rectificación lineal (ReLU) permite una mayor rapidez y eficacia
de la formación mediante la asignación de valores negativos a cero y el mantenimiento valores positivos.

Estas tres operaciones se repiten a través de decenas o cientos de capas, y con cada capa aprenden a detectar diferentes características.

Después de la detección de características, la arquitectura de una CNN cambia a
la clasificación.

La última es una capa (FC) genera un vector de K dimensiones donde K es el número de clases que la red será capaz de predecir. Este vector contiene la
probabilidad para cada clase de cualquier dato que se esté clasificando.

La capa final de la arquitectura CNN utiliza una función softmax
para proporcionar la salida de clasificación. Por último, a decir de los expertos, no hay una fórmula exacta para seleccionar el número de capas necesaria para determinada tarea.

Sin embargo, El mejor enfoque es probar unos pocos y ver cómo funcionan o, si estamos comenzando en este campo, utilizar una red pretrenada, como ya hemos dicho más arriba.

¡Hasta la próxima!

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *