Processing Neocognitron of Face Recognition on High Performance Environment Based on GPU with CUDA Architecture - Poli, Gustavo; Saito, José Hiroki; Mari, João F.; Zorzan, Marcelo R. (Anais do International Symposium on Computer Architecture and High Performance Computing (SBAC-PAD); 2008: Anais do XX International Symposium on Computer Architecture and High Performance Computing, 2008)
This work presents an implementation of neocognitron neural network, using a high performance computing architecture based on GPU (graphics processing unit). Neocognitron is an artificial neural network, proposed by Fukushima and collaborators, constituted of several hierarchical stages of neuron layers, organized in two-dimensional matrices called cellular planes. For the high performance computation of face recognition application using neocognitron it was used CUDA (compute unified device architecture) as API (application programming interface) between the CPU and the GPU, from GeForce 8800 GTX of NVIDIA company, with 128 ALU's. As face image databases it was used a face database created at UFSCar, and the CMU-PIE (Carnegie Mellon University pose, illumination and expression) database. The load balancing was achieved through the use of cellular connections as threads organized in blocks, following the CUDA philosophy of development. The results showed the feasibility of this type of device as a massively parallel data processing tool, and that smaller the granularity and the data dependency of the parallel processing, better is its performance.