X hits on this document

81 views

0 shares

0 downloads

0 comments

30 / 35

26

Ing. Danis Lo´pez Naranjo, Dr. C. Jose´ Herna´ndez Palancar

Este trabajo [29] presenta una aplicacio´n de red neuronal llamada Neocognitron , usan- do una arquitectura de computacio´n de alto rendimiento basada en la GPU. Neocognitron es una red neuronal artificial, propuesto por Fukushima y colaboradores, constituido por varias etapas jera´rquicas de las capas de neuronas, organizadas en matrices de dos dimen- siones denominados planos celular. Para el ca´lculo de alto rendimiento de la aplicacio´n de reconocimiento facial mediante Neocognitron fue utilizado CUDA. Neocognitron es una red neuronal masivamente paralela, compuesta por varias capas de ce´lulas neuronales. Neocog- nitron pueden ser procesados en dos fases:

  • 1.

    Fase de formacio´n auto organizada (self-organized)

  • 2.

    Fase de reconocimiento

Con esta aplicacio´n se alcanzo´ un aumento significativo en el rendimiento del proce- samiento del reconocimiento de la cara neocognitron, demostrando la viabilidad de utilizar este me´todo. Sin embargo, el tama˜no de las ima´genes utilizados en la operacio´n eran peque˜nas, 57 x 57, esto permitio´ la carga completa de la estructura de la red en la memo- ria del dispositivo donde el acceso esta´ protegido y es de alta velocidad. Estos condiciones influyeron mucho en los resultados obtenidos por este trabajo. La implementacio´n del al- goritmo para ser ejecutado en la GPU se realizo´ con la arquitectura CUDA que le dio un aumento de una super-velocidad lineal-up (SP > p) . Esto probablemente se produjo por las diferencias en la arquitectura. Por otra parte se observo´ un alto rendimiento si se compara el tiempo de procesamiento. Otra de las conclusiones sobre la aplicacio´n de este proyecto, es que esto minimiza algunos de los problemas comunes existentes, cuando se utilizan otros entornos de computacio´n paralela:

1. Sincronizacio´n: desde la granularidad de desarrollo dentro de este dispositivo no se esta´ compitiendo por los recuerdos compartidos (cada hilo tiene su punto/a´rea de la memo- ria) donde hay la necesidad de una pe´rdida de tiempo para lograr una sincronizacio´n de los procesadores

2. Red: si todo el proceso ocurre dentro del mismo dispositivo existe el problema del tipo de conexio´n y la velocidad de toda la arquitectura de la GPU

3. Contencio´n: no hay competencia de los recursos por los procesadores. Este trabajo [34], aunque no este´ en ninguna de las ramas de la taxonomı´a mostrada es de gran intere´s para futuros trabajos por los aportes que realiza. Presenta una serie de modificaciones a la biblioteca GPUCV que le permiten ser utilizado de forma nativa en la plataforma Linux y ası´lograr las ventajas del rendimiento proporcionado por las GPUs para aplicaciones de visio´n por computadora que se ejecuta en Linux. Las decisiones involucradas en este proceso se muestran en este artı´culo y adema´s se discuten las caracterı´sticas de funcionamiento de la biblioteca GPUCV en esta nueva plataforma compara´ndola con la plataforma original de Microsoft Windows. Hubo varios factores que motivaron a los autores a realizar la implementacio´n de la biblioteca GPUCV para la plataforma Linux.

Entre estos tenemos que la biblioteca GPUCV tiene estrechos vı´nculos con la biblioteca OpenCV, que esta´ disponible en una amplia variedad de plataformas, por lo que es u´til para GPUCV tambie´n ser multiplataforma con el objetivo de que las aplicaciones exis- tentes de OpenCV puedan aprovechar la aceleracio´n de la GPU, utilizando simplemente el procesamiento de operadores de imagen GPUCV en lugar de los equivalentes OpenCV. Llevar la biblioteca GPUCV a las plataformas soportadas por OpenCV ayuda a lograr

Document info
Document views81
Page views81
Page last viewedWed Dec 07 22:12:27 UTC 2016
Pages35
Paragraphs855
Words14967

Comments