Documentos de Académico
Documentos de Profesional
Documentos de Cultura
net/publication/308948042
CITATIONS READS
0 3,232
1 author:
SEE PROFILE
Some of the authors of this publication are also working on these related projects:
DISEÑO DE UN MODELO DE CONTROL PARA AUTOMATIZAR LAS ACTIVIDADES DE DESCARGUE Y PESAJE DEL PROCESO DE PREMEZCLA DE MATERIA PRIMA, PARA PREPARAR
JUGOS A BASE DE AZÚCAR, EN LA EMPRESA QUALA S.A. View project
All content following this page was uploaded by Ancizar Paredes Ardila on 08 October 2016.
1
CIDE. Programa de electrónica.
.
Figura 1. Estructura Biológica de una Neurona. [1] Como se indicó en la sección anterior las RNA,
funcionan de manera similar a su contraparte biológica,
Como se puede observar, la célula está dividida en con algunas características: aprendizaje, plasticidad y
partes funcionales, cada una de ellas se describe a procesamiento en paralelo. Aprendizaje: ya que la
continuación: neurona puede ser entrenada y aprender a responder
según las entradas a una situación específica, mediante
Axón: Rama principal que sale del cuerpo de la las salidas deseadas; Plasticidad: pues si alguna de las
Neurona, su principal función es la de transmitir la estructuras funcionales llegase a fallar, existen otras que
información a las dendritas, éstas a su vez conectan respaldan la función de la neurona, evitando que ésta
dicha información a las otras Neuronas. responda de manera errada y Procesamiento en
paralelo: ya que al recibir varios estímulos al mismo
Dendritas: Ramas más cortas que el axón, las tiempo responde según el estímulo más fuerte o según
cuales llevan los impulsos nerviosos a otras neuronas. A sea configurada.
través de ellas se realizan las conexiones o Sinapsis con
otras Neuronas. Para explicar el funcionamiento del Perceptrón se
debe hacer referencia a su concepción matemática, éste
Soma: Es el cuerpo de la célula nerviosa, su modelo, permite realizar una aproximación a la
función es la de fabricar los elementos necesarios para programación necesaria que emulará el funcionamiento
la vida de la Neurona, tal como sucede en las otras de la Neurona.
células del cuerpo.
2
CIDE. Programa de electrónica.
.
Neuronales Artificiales (RNA), en el presente artículo tipo lineal o Sigmoidal. En el caso de los datos discretos,
solo haremos referencia al Perceptrón Básico. la función de activación debe ser de tipo escalón.
Además de su estructura se debe reconocer en las RNA, Tabla 2.2.4.1 Resumen de RNA según tipo de datos [1]
4 características importantes: Topología, mecanismo de RNA CONTINUAS RNA HIBRIDAS RNA
aprendizaje, asociación entre la información de entrada E:ANALOGA DISCRETAS
y la información de salida y la forma como se representa S:ANALOGA E: ANALOGA E: BINARIA
S: BINARIA S: BINARIA
la información, de ello depende la comprensión del
funcionamiento de éste primer acercamiento al BACKPROPAGATIO PERCEPTRON HOPFIELD
Perceptrón. N DISCRETO
A continuación se presenta una breve descripción de LINEAR ADALINE/MADA ART
tales características. ASOCIATIVE LINE (ASOCIATIVE
MEMORY RESONANCE
2.2.1 Topología: THEORY)
Hace referencia a la forma como se conectan las redes Como se observa en la tabla se escriben tres ejemplos
neuronales, el número de conexiones entre las para que el lector profundice en el estudio de cada uno
neuronas, la cantidad de neuronas en cada capa y el de ellos, y de otros propuestos para cada una de las
grado de conectividad. En éste caso se habla de Redes clasificaciones presentadas.
Monocapa y Redes Multicapa.
Es la forma como la red actualiza los pesos de acuerdo Para identificar la estructura del Perceptrón simple, (De
a la información de entrada; como analogía a los una sola capa), se debe partir de las características
sistemas biológicos, se puede pensar en la forma como mencionadas en el apartado anterior.
se conecta o desconecta una red neuronal; cuando se
produce un aprendizaje, se genera una conexión esto
quiere decir que para la RNA, el peso es distinto de
cero, pero cuando se realiza una desconexión por el
proceso de aprendizaje que sucede en el cerebro, esto
se interpreta en la RNA, como el equivalente a cero del
peso que conecta a la entrada respectiva.
Figura 2.3.1 Estructura del Perceptrón Simple [1]
Según esta característica las RNA pueden ser: con
aprendizaje supervisado o con aprendizaje no
supervisado. Cada uno de ellos tienen sus propias
A continuación se realiza una descripción del algoritmo
características no se profundizará en ellos ya que ésta
usado para implementar un Perceptrón básico, bajo
intensión escapa a los límites del presente artículo.
entorno Matlab, se aplican conceptos de programación
estructurada, para que el código sea de fácil
2.2.3 Asociación de la información Entrada / Salida: comprensión y se realice la adaptación necesaria si se
quiere usar otro entorno de programación. Se hace
Es la forma como la red neuronal almacena los pesos necesario mencionar, que Matlab ya trae en sus
nuevos a partir de los aprendizajes, estos son formas de herramientas (Toolbox), los algoritmos de algunas redes
representación del “nuevo conocimiento” para la RNA.
neuronales, sin embargo en el presente artículo se
Es decir tiene un comportamiento similar al encontrado presenta un código genérico el cual se puede
en los sistemas biológicos y que se conoce como implementar en diferentes ambientes de programación.
memoria asociativa.
Para explicar la estructura del código, se plantea el
Según éste criterio, las RNA pueden ser: siguiente orden en el algoritmo planteado.
Heteroasociativas (Mantienen la información gracias a la
existencia de dos capas una para captar la información y 1. Se fijan los pesos aleatorios: Son valores que
otra para retenerla) y Autoasociativas (compara las
multiplican a la entrada, generalmente entre 0 y
entradas actuales con los datos almacenados y escoge 1, sin embargo estos valores son irrelevantes,
el más parecido en el estado presente). es decir su valor no interesa pero deben existir,
la única restricción es que no pueden ser cero,
2.2.4 Representación de la información esto indicaría que la entrada no se tiene en
Entrada/Salida: cuenta.
2. Se establecen las entradas: Se configura la
Los datos a tratar pueden ser continuos o discretos, en matriz de entrada, según el número de entradas
el primer caso se habla de datos tipo analógicos, y los valores que toman cada una de ellas.
tomados de variables reales, por tanto la función de
activación debe ser de la misma naturaleza, es decir de
3
CIDE. Programa de electrónica.
.
3. Se calcula la salida según la función de estado de entrada una salida, en éste caso
aprendizaje. Para el Perceptrón se usará la será un vector de una columna con cuatro
función hardlim, de Matlab®. filas, como se indica a continuación
4. Se actualizan pesos según respuesta. De Y=[0 0 0 1]
acuerdo a la función determinada, se recalculan La salida deseada corresponde a una
los nuevos pesos, éstos ayudarán a reevaluar compuerta AND, cuya salida depende de las
las nuevas entradas. entradas
5. Se regresa al paso 3 hasta obtener la
respuesta deseada. Tabla 3.1 Estados compuerta AND
4
CIDE. Programa de electrónica.
.
El programa final, como se utilizó en Matlab ® hasta obtener la salida deseada, se establece el
fue: ciclo “for”, donde “T” es el número de
%1. Fijar pesos aleatorios iteraciones que el programa debe recalcular los
Wn=rand(2,1); pesos hasta obtener los adecuados para que la
%2. Establecer los valores de entrada neurona aprenda a resolver la compuerta OR.
X=[0 0; 0 1;1 0;1 1]; Se sugiere que el lector cambie las salidas
Th=0.1; %Bias o referencia del Perceptrón deseadas y revise el número de iteraciones que
%3. Calcular la salida de la neurona el Perceptrón requiere para obtener las
yd=[0;0;0;1]; respuestas a las compuertas AND.
y=hardlim((X*Wn)-Th);
plot(X,y),grid on, hold on 4 EJEMPLO DE APLICACION
e=yd-y; %Se calcula el error al restar la
salida deseada de la salida obtenida.
Como ejemplo de aplicación, se plantea el de
ed=0.1;% Se establece el error aceptado,
seleccionar una prenda de vestir, según sus
en éste caso 0.1
características en cuanto a la Calidad de la tela y Tipo
N=2; %se establecen las iteraciones,
de Tela. Para la categoría “Calidad” se establecen dos
pueden ser definidas por la velocidad de
estados, Buena =1, Baja =0; para la categoría “Tipo”, los
aprendizaje
estados son: No paño=0 y Paño=1.
%Aquí empieza el entrenamiento de la
neurona, se hace de manera recursiva La idea es que el Perceptrón seleccione dos
%W(i,j) i=fila; j= Columna opciones, por costos, ya que de otra manera se
n=0.9; %Factor de ganancia en el rango de excedería en el presupuesto asignado para la compra de
0.0 a 1.0 las prendas, de tal forma que cuando las categorías Tipo
ent=2; y Calidad sean las parejas ordenadas:
r=0; No Paño, Buena y Paño, Baja.
% Se inician los nuevos pesos Respectivamente, pero que no seleccione los
for T=1:N %Ciclo for correspondiente a las estados:
iteraciones del aprendizaje por refuerzo No Paño, Baja y Paño, Buena
if e==0 La situación se puede resumir en la Tabla 4.1:
break
else Tabla 4.1. Resumen situación selección de una
for i=1:4 %Ciclo for correspondiente a prenda
las filas según no de entradas i=filas
for k=1:ent %Ciclo for para Categoría de la Tela
Selección
actualizar pesos. k=columnas Tipo Calidad
Wn(k,1)=Wn(k,1)+(n*(X(i,k)*e(i,1))) No Paño Baja No
end No Paño Buena Si
yn(i,1)=(hardlim((X(i,1)*(Wn(1,1)- Paño Baja Si
Th))+((X(i,2)*Wn(2,1)-Th)))) Paño Buena No
%Función para calcular las nuevas
salidas. Ahora bien, si la Tabla 4.1 se interpreta en binario,
end se puede representar así:
e=yd-yn
M=e-ed Tabla 4.2. Selección de una prenda en binario.
T %si el error es mayor que la tolerancia
continua haciendo el proceso se define la T C S
velocidad de aprendizaje para aplicar la 0 0 0
forma de calcular nuevos peso
0 1 1
end
1 0 1
end
%5. Continua hasta que el error sea menor 1 1 0
que la tolerancia
La función que se ajusta al comportamiento de la
situación anterior es la de una compuerta tipo XOR, se
Se dejaron los comentarios para ubicar al lector sugiere revisar éste concepto si el lector no está
con respecto a los 5 pasos planteados en el familiarizado.
apartado anterior y el desarrollo de éste. Si se Para ello solo se debe modificar en el programa
quiere cambiar la salida deseada, solo se anterior el vector de salida deseada “yd”, y observar la
deben modificar los datos del vector “yd”, que salida que la neurona calcula, al finalizar el aprendizaje
para efectos del ejemplo, corresponde a una “yn”, analizar el error “M” y determinar el número de
compuerta OR y observar la respuesta en el iteraciones “T”, así cómo identificar los pesos en las
vector “yn”. entradas ajustados a la respuesta deseada, permite
identificar la velocidad de respuesta y la capacidad de
Para determinar el número de veces que la aprendizaje.
neurona tuvo que realizar el ajuste de los pesos
5
CIDE. Programa de electrónica.
.
6 REFERENCIAS
[1] E. Marrero, «Página Profesor: Eddie Marrero,» Marzo
2005. [En línea]. Available:
http://academic.uprm.edu/eddiem/psic3001/id36.htm.
[Último acceso: 5 Febrero 2012].
[2] «Aldabas, Emiliano. Introducción al reconocimiento
de patrones mediante redes neuronales,» [En línea].
Available: www.eel.upc.es.. [Último acceso: 23 Marzo
2013].
[3] J. R. Hilera, Redes Neuronales Artificiales.
Fundamentos, Modelos y Aplicaciones, Madrid,
españa: Alfaomega, 1995.
[4] MathWorks, Inc., «Neuron Model,» 2013. [En línea].