Vous êtes sur la page 1sur 5

Redes neuronales artificiales

Actualmente, los computadores digitales superan a los seres humanos en la solución de


problemas de cálculo numérico y lógica simbólica; sin embargo, los seres humanos superan a
los computadores digitales en la solución de problemas más complejos relacionados con la
percepción, a altas velocidades y sin necesidad de concebir complejos modelos matemáticos
(Caicedo & López, 2009). Damos por hecho nuestras capacidades de procesamiento; por
ejemplo: no nos damos cuenta del procesamiento visual que realiza nuestro cerebro al
segmentar imágenes, mejorar contrastes, y restar luminosidad de fondo (Kosko, 1992).

Las redes neuronales artificiales (RNAs) surgen como un intento de imitar el funcionamiento
del cerebro humano, para así poder solucionar los problemas en los que los seres humanos
muestran fortalezas. Según la Agencia de Proyectos de Investigación Avanzados de Defensa
(DARPA), las RNAs son “sistemas compuestos de muchos elementos simples de
procesamiento, los cuales operan en paralelo y cuya función es determinada por la estructura
de la red y el peso de las conexiones, donde el procesamiento se realiza en cada uno de los
nodos o elementos de cómputo” (Caicedo & López, 2009). En primer lugar se presenta el
fundamento biológico de las RNAs:

El cerebro humano está compuesto de unas células llamadas neuronas. Las neuronas están
compuestas de tres partes: el cuerpo celular llamado soma, unas ramificaciones cortas
llamadas dendritas, y una rama principal llamada axón que se ramifica y conecta con las
dendritas de otras neuronas. Mediante el siguiente proceso, las neuronas se encargan de
recibir, procesar y transmitir impulsos o señales eléctricas que codifican la información:

1. Las neuronas reciben señales eléctricas a través de las dendritas.


2. Las dendritas transmiten las señales al soma, que se encarga de procesarlas y generar
una nueva señal eléctrica que se transmite a través del axón.
3. El axón transmite la señal eléctrica a otras neuronas a través de sus ramificaciones.

El espacio entre la ramificación del axón de una neurona y la dendrita de otra neurona se
denomina sinapsis. En este espacio, las señales eléctricas son transmitidas por sustancias
químicas llamadas neurotransmisores, que bien pueden potenciar la señal o impedir su paso.

El cerebro humano contiene alrededor de 10^11 o 100 mil millones de neuronas,


aproximadamente el número de estrellas en la Vía Láctea, y cada neurona está conectada con
alrededor de otras 10^4 o 10 mil neuronas, por lo que el cerebro humano tiene alrededor de
10^15 o mil billones de conexiones (Kosko, 1992). Las redes neuronales son capaces de
realizar tareas complejas gracias a la gran interconectividad de sus unidades de
procesamiento.

Fuente: http://www.cs.us.es/~fsancho/?e=72

Las RNAs están compuestas de neuronas artificiales, que son un modelo de las neuronas
biológicas, y comparten con su contraparte biológica las siguientes características (Fusett,
1994):

● Las neuronas reciben señales de entrada, que bien pueden provenir del exterior o de
otras neuronas, y se representan con un vector X = < x1 , x2 , ..., xn > .
● Las señales de entrada pueden ser modificadas por las sinapsis, lo cual se modela con
un vector de pesos sinápticos W = < w,, w2 , ..., wn > que amplifica o atenúa las
señales de entrada.
● Las neuronas suman las señales modificadas, lo cual se modela como una sumatoria
de las entradas multiplicadas por los pesos sinápticos correspondientes:
n
∑ xi wi = x1 w1 + x2 w2 + ... + xn wn = X · W
i=1
● Bajo cierta condición, la neurona genera una señal de salida, lo cual se modela con
una función de activación f (x) que, al evaluarla en la sumatoria de entradas
modificadas, determina la señal de salida y :
n
y = f ( ∑ xi wi )
i=1
● La señal de salida se transmite a otras neuronas.
● Básicamente las señales de entrada se propagan por toda la red hasta generar las
señales de salida.
A continuación se presentan algunas opciones de función de activación:

El siguiente aspecto trata de la arquitectura de una RNA, que es la forma en que están
dispuestas las neuronas en su interior. Generalmente las neuronas se disponen en forma de
capas de las que podemos distinguir las de entrada, que reciben la información del exterior;
las ocultas; que se denominan así porque no tienen contacto con el exterior; y las de salida,
que transmiten la información procesada al exterior. Hay varios tipos de arquitectura: según
el número de capas podemos distinguir las redes monocapa, que solo tienen una capa de
procesamiento, sin contar la de entrada ya que no realiza procesamiento; y las redes
multicapa, que tienen más de una capa de procesamiento. Aunque éstas requieren más
entrenamiento para hallar las soluciones, pueden resolver problemas más complejos que las
redes monocapa. Esto se debe a que un mayor número de capas ocultas les permite extraer
información cada vez más abstracta y esencial de las entradas (Haykin, 2009).

Por otro lado, según cómo fluye la información dentro de la red se pueden distinguir las redes
feedforward, en las que la información fluye en un solo sentido de las capas de entrada a las
capas de salida; y las redes recurrentes, en las que la información no siempre fluye en un solo
sentido y puede realimentarse a capas anteriores a través de conexiones sinápticas. Según
Haykin (2009), “la presencia de ciclos de realimentación tiene un profundo impacto en la
capacidad de aprendizaje de la red y en su desempeño”.

Ahora, ¿cómo aprenden las RNAs a solucionar los problemas que se le presentan? Según la
RAE, aprender es “adquirir el conocimiento de algo por medio del estudio o experiencia”
(Real Academia Española, 2014). En las redes neuronales biológicas, se cree que el
conocimiento se encuentra codificado en las sinapsis, aunque no entendemos el mecanismo
exacto (Caicedo & López, 2009). Así mismo, en las redes neuronales artificiales, el
conocimiento se encuentra codificado en los pesos sinápticos. Por lo tanto, el aprendizaje en
las RNAs se puede entender como la “determinación de los valores precisos de los pesos para
todas sus conexiones que la capaciten para la resolución eficiente de un problema” (Isasi &
Galván, 2004).
En el aprendizaje supervisado, el entrenamiento de la red es supervisado por un agente
externo llamado maestro. Para ello se usa un conjunto de entrenamiento, conformado por
ejemplos etiquetados, es decir, pares ordenados de entradas y sus correspondientes salidas
deseadas, donde el maestro se encarga de etiquetar las entradas con las salidas deseadas. A la
red se le presenta el conjunto de entrenamiento, y se define el error como la diferencia entre
la salida deseada y la salida de la red en términos de los pesos sinápticos. Los pesos son
ajustados para minimizar el error. Este proceso se repite hasta cumplir cierto criterio de
convergencia. Esta técnica presenta dos problemas: 1) “un ajuste muy bueno del conjunto de
aprendizaje lleva a malas predicciones. En estos casos se dice que la red ha padecido un
sobreajuste de los datos de entrenamiento y que su capacidad de generalización se ha visto
reducida” (Isasi & Galván, 2004), es decir, la red no es capaz de producir salidas deseadas a
entradas que no sean del conjunto de entrenamiento. 2) “los ejemplos etiquetados pueden ser
difíciles de coleccionar, porque requieren la disponibilidad de un maestro que provea la salida
deseada para cada ejemplo” (Haykin, 2009).

Por otra parte, en el aprendizaje no supervisado, no hay maestro que supervise el


entrenamiento de la red. No hay ejemplos etiquetados, es decir, las entradas del conjunto de
entrenamiento no están acompañadas de las salidas deseadas. La red modifica sus pesos
sinápticos para que las entradas similares produzcan salidas similares, y las entradas
diferentes produzcan salidas diferentes.

Llegados a este punto, se presenta una comparación entra la computación convencional y las
redes neuronales según Caicedo & López (2009):

Característica Computador convencional Red neuronal

Unidad de procesamiento Compleja. De alta Simple. De baja velocidad.


velocidad. Una sola Muchas

Memoria Separada del procesador. Integrada en el procesador.


Localizada Distribuida

Procesamiento de la Centralizado. Secuencial. Distribuido. Paralelo. Capaz


información Programado con de aprender
instrucciones específicas

Robustez ante fallos No Si

Por otro lado, se presenta una comparación entre las redes neuronales biológicas y las redes
neuronales artificiales según Isasi & Galván (2004):
Característica Red neuronal biológica Red neuronal artificial

Conexiones entre neuronas Complejas Simples

Transmisión de señales Continuamente. Asíncrona En tiempo discreto. Síncrona

Aprendizaje Menos ejemplos y tiempo Más ejemplos y tiempo

Arquitecturas Complejas Simples

Dominio General: pueden aprender a Específico: pueden aprender


resolver numerosos a resolver solo un problema
problemas a la vez

Finalmente, se mencionan algunas aplicaciones de las RNAs según Matich (2001),


considerando las aptitudes de éstas en asociación y reconocimiento de patrones,
aproximación de funciones, control y procesamiento de señales: modelado de la retina,
programación de vuelos, optimización del tráfico vehicular, reconocimiento de caracteres,
predicción del clima, predicción del mercado de valores, evaluación de créditos, sistemas de
control de robots, reconocimiento del habla, diagnosis médica, clasificación de señales de
radar, reconocimiento de imágenes, entre otras.

En conclusión, a pesar de los impresionantes resultados de la investigación, desarrollo y


aplicación de las RNAs, aún falta un largo camino para alcanzar un funcionamiento
comparable al del cerebro humano o incluso de cualquier animal.

Referencias
● Caicedo, E. F. & López, J. A. (2009). Una aproximación práctica a las redes
neuronales artificiales. Cali: Programa Editorial Universidad del Valle.
● Fusett, L. (1994). Fundamentals of neural networks: architectures, algorithms, and
applications. Upper Saddle River, NJ: Prentice-Hall, Inc.
● Haykin, S. (2009). Neural Networks and Learning Machines. New Jersey: Pearson
Education.
● Isasi, P. & Galván, I. M. (2004). Redes de Neuronas Artificiales: Un Enfoque
Práctico. Madrid: Pearson Educación, S.A.
● Kosko, B. (1992). NEURAL NETWORKS AND FUZZY: A DYNAMICAL SYSTEMS
APPROACH TO MACHINE INTELLIGENCE. Englewood Cliffs, NJ: Prentice-Hall,
Inc.
● Matich, D. J. (2001). Redes Neuronales: Conceptos básicos y aplicaciones. Cátedra
de Informática Aplicada a la Ingeniería de Procesos–Orientación I.
● Real Academia Española. (2014). Aprender. En Diccionario de la lengua española
(23.a ed.). Recuperado de http://dle.rae.es/?id=3IWZ4nr