Redes Neuronales 2023

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 25

REDES NEURONALES

ARTIFICIALES
Jesús Dávila
UPQ
2023
Fundamentos biológicos de las redes neurales
naturales
• Una neurona biológica es una célula especializada en procesar información.

• Está compuesta por el cuerpo de la célula (soma) y dos tipos de


ramificaciones: el axón y las dendritas. La neurona recibe las señales
(impulsos) de otras neuronas a través de sus dendritas y transmite señales
generadas por el cuerpo de la célula a través del axón.
Fundamentos biológicos de las redes neurales
naturales
• Las señales que se utilizan son de dos tipos: eléctricas y químicas. La señal
generada por la neurona y transportada a lo largo del axón es un impulso
eléctrico, mientras que la señal que se transmite entre los terminales
axónicos de una neurona y las dendritas de la otra es de origen químico.
DEFINICIÓN DE UNA RED NEURONAL
ARTIFICIAL
• Las RNA se definen como sistemas de mapeos no lineales cuya estructura
se basa en principios observados en los sistemas nerviosos de humanos y
animales.

• Constan de un número grande de procesadores simples ligados por


conexiones con pesos. Las unidades de procesamiento se denominan
neuronas. Cada unidad recibe entradas de otros nodos y genera una salida
simple escalar que depende de la información local disponible, guardada
internamente o que llega a través de las conexiones con pesos.

• Una red neuronal se caracteriza por los siguientes elementos:

• 1. Un conjunto de unidades de procesamiento o neuronas.


• 2. Un estado de activación para cada unidad, equivalente a la salida de la
unidad.
• 3. Conexiones entre las unidades, generalmente definidas por un peso que
determina el efecto de una señal de entrada en la unidad.
DEFINICIÓN DE UNA RED NEURONAL
ARTIFICIAL (cont…)
4. Una regla de propagación, que determina la entrada efectiva de una unidad
a partir de las entradas externas.

5. Una función de activación que actualiza el nuevo nivel de activación


basándose en la entrada efectiva y la activación anterior.

6. Una entrada externa que corresponde a un término determinado como bias


para cada unidad.

7. Un método para reunir la información, correspondiente a la regla del


aprendizaje.

8. Un ambiente en el que el sistema va a operar, con señales de entrada e


incluso señales de error.
Red Neuronal Artificial
• Para establecer una similitud directa entre la actividad sináptica y la analogía
con las redes neurales artificiales podemos considerar que las señales que
llegan a la sinapsis son las entradas a la neurona;

• éstas son ponderadas (atenuadas o amplificadas) a través de un parámetro


denominado peso (wn), asociado a la sinapsis (Hn) correspondiente. Estas
señales de entrada pueden excitar a la neurona (sinapsis con peso positivo)
o inhibirla (peso negativo).
Respuesta de la unidad de proceso en una red
• Las unidades de proceso de una red neuronal se puede describir con la
siguiente ecuación.

𝐻1 = 𝑓 ෍ 𝑥𝑘 ∙ 𝑤𝑘
𝑘=1

Donde
𝑥𝑘 son las salidas de otros nodos o entradas externas,
𝑤𝑘 peso de las ligas de conexión,
𝑓 función no lineal simple

La función f puede ser sigmoidal, tangente hiperbólica, escalón, entre otras.


Respuesta de la unidad de proceso en una red
• La entrada total u de una unidad k es la suma de los pesos de las entradas
conectadas, más un bias θ :

𝑢 = ෍ 𝑤𝑗 ∙ 𝑥𝑗 + 𝜃
𝑗

• Si el peso ωj es positivo se habla de una excitación y si el peso es negativo


se considera una inhibición de la entrada. Si consideramos a las entradas
como funciones del tiempo, la expresión anterior se convierte en:

𝑢 𝑡 =෍ 𝑤 𝑡 𝑗 ∙𝑥 𝑡 𝑗 + 𝜃(𝑡)
𝑗
Respuesta de la unidad de proceso en una red
• Cada unidad de proceso tiene una tarea simple: recibe la entrada de otras
unidades o de fuentes externas y procesa la información para obtener una
salida que se propaga a otras unidades.

• Una red puede tener una estructura arbitraria, pero las capas que contienen
estas estructuras están definidas de acuerdo con su ubicación en la
topología de la red neuronal.

• Las entradas externas son aplicadas en la primera capa, y las salidas se


consideran la última capa. Las capas internas que no se observan como
entradas o salidas se denominan capas ocultas. Por convención, las
entradas no se consideran como capa porque no realizan procesamiento.
Elementos de una red neuronal artificial
• Un esquema básico de una red neuronal artificial se observa en la figura 3.7,
la cual presenta las diferentes capas que tiene esta topología, que es una
estructura que se conoce con el nombre de feed-forward (hacia delante)
debido al flujo de la información.
Redes Neuronales Artificiales cont.

Una red neuronal es un sistema adaptativo complejo, lo que


significa que puede cambiar su estructura interna basada
en la información que fluye a través de ella. Típicamente
esto se logra mediante el ajuste de pesos.

Del diagrama,

Cada línea representa una conexión entre neuronas, cada


conexión tiene un peso, un número que controla la señal
entre dos neuronas.

Si la señal es “buena” no hay necesidad de ajustar los


pesos.
Si la red produce una salida deficiente ( un error ), el
sistema se adapta cambiando los pesos para mejorar los
resultados posteriores.
Clasificación de las RNA
• Existen dos clasificaciones para la clasificación de las redes neuronales artificiales,
• Según su arquitectura
• Según el aprendizaje

Según la arquitectura
La arquitectura de una red consiste en la disposición y conexionado de las neuronas.
Podemos distinguir en una red, el número de capas, el tipo de las capas, que pueden
ser ocultas o visibles, de entrada o de salida y la direccionalidad de las conexiones
de las neuronas.
Clasificación de las RNA cont.
• Redes Monocapa, cuentan con una capa de neuronas, que intercambia señales con
el exterior y que constituyen a un tiempo la entrada y la salida del sistema. Una de las
redes mas representativas de este modelo es la red de Hopfield, que ha tenido una
gran influencia en el desarrollo posterior de redes neuronales.

• Redes Multicapa, están formadas por dos o mas capas de neuronas conectadas
entre ellas.
Redes Neuronales Artificiales cont.
Clasificación según el aprendizaje

- Aprendizaje Supervisado: la red dispone de los patrones de entrada y


de salida que queremos obtener para esa entrada, y en función de
ellos se modifican los pesos de las sinopsis para ajustar la entrada a
la salida.

- Aprendizaje No Supervisado: consiste en no proporcionar a la red los


patrones de salida, sino sólo los de entrada y dejar que la red los
clasifique en función de características comunes que encuentre entre
ellos.

- Aprendizaje Híbrido: No se proporcionan los patrones objetivo, sino


que sólo se dice si la respuesta acierta o falla ante un patrón de
entrada.
Funciones de activación
• Existen funciones de activación comunes en las redes
neuronales. La principal razón de usar las funciones de
activación es que introducen no linealidad a la respuesta de la
neurona. Sin no linealidad la neurona no podría “aprender”
funciones no lineales.

• Las principales funciones de activación son


• Función escalón (treshold)
• Función lineal y mixta
• Función tangente hiperbólica
• Función Sigmoidal
• Función de Gauss
Función escalón
• La función de activación escalón se asocia a neuronas binarias
en las cuales, cuando la suma de las entradas es mayor o
igual que el umbral de la neurona, la activación es 1; si es
menor, la activación es 0 (o -1).
Función lineal y mixta
• La función lineal o identidad responde a la expresión Fk(u) = u.
Función lineal y mixta
• En las neuronas con función mixta, si la suma de las señales de entrada es menor que
un límite inferior, la función se define como 0 (o -1). Si dicha suma es mayor o igual
que el límite superior, entonces la activación es 1. Si la suma de entrada está
comprendida entre los dos límites, entonces la activación es 1. Si la suma de entrada
está comprendida entre ambos límites, superior e inferior, entonces la activación se
define como una función lineal de la suma de las señales de entrada
Función tangente hiperbólica
• La función de activación tangente hiperbólica se emplea en los casos que
presentan variaciones suaves de valores positivos y negativos de la señal a
clasificar; es una de las funciones más empleadas en entrenamientos
supervisados, como en el caso del entrenamiento de retro propagación del
error.

𝑒 𝑢 − 𝑒 −𝑢
𝐹𝑘 = 𝑢
𝑒 + 𝑒 −𝑢
Función sigmoidal
• Con la función sigmoidal el valor dado por la función es cercano a uno de los
valores asintóticos. Esto hace que en la mayoría de los casos, el valor de
salida esté comprendido en la zona alta o baja del sigmoide.

1
𝐹𝑘 𝑢 =
1 + 𝑒 −𝑢
BIAS
• De las figura, se observan las entradas In, los pesos wn, las funciones de
activación Hn, la salida O1 y B2 denominado bias.

• El valor de “bias” permite a la función de activación recorrer a la derecha o a


la izquierda del eje x.
Efecto de bias en una red neuronal
1.2

sigmoid
1
sigmoid (1)

0.8 sigmoid(0.5)

sigmoid(2)
F(u)

0.6

0.4

0.2

0
-5 -4 -3 -2 -1 0 1 2 3 4 5
Métodos de cálculo de error
• Durante el entrenamiento de una red neuronal la salida actual debe
compararse con la salida ideal o la salida esperada. El error local se calcula
con una función de error.

• Los errores locales se agregan para obtener el error global. El error global es
la medición de que tan bien se desempeña el sistema de entrenamiento.

• Las principales funcione de error son


• Suma de los cuadrados del error
• Media de los cuadrados del error
• Raiz de promedios de cuadrados
Funciones de error
• La función de error produce un numero que representa el error
de la salida de la neurona. Los métodos de entrenamiento
buscan reducir este valor de error.

• La función de error lineal describe la diferencia entre el valor


ideal (i) y el valor actual (a)

𝐸 = (𝑖 − 𝑎)
Función de error media del cuadrado de los
errores
• Para calcular el error global por el método de la media del
cuadrado de los errores se tiene la siguiente ecuación

𝑛
1
𝑀𝑆𝐸 = ෍ 𝐸𝑛2
𝑛
𝑖=1

Donde 𝐸𝑛 son los errores locales y n es el número de casos


Entrenamiento XOR
clc, clear all, close all
%entrenar funcion xor
entradas=[1,1,0,0;0,0,0,0] % declara las entradas de la RNA
objetivos=[1,1,0,0]; % Declara el arreglo de salida (objetivo
net=newff([0 1; 0 1],[2 30 1]); % Crea un red tipo feed-forward backpropagation
for c=1:10
net=adapt(net,entradas,objetivos); %Entrena o adapta una red de acuerdo a
lasentadas y los objetivos n número de iteraciones
end
y=sim(net,entradas); % Simula la red neuronal net con el valor de entradas
declaradas
for c=1:length(y)
if y(c)<0.5 % función de activación
y(c)=0;
else
y(c)=1;
end
end
y

También podría gustarte