Red Neuronal Modelo de Hopfield
|
|
- Sergio Piñeiro Blázquez
- hace 7 años
- Vistas:
Transcripción
1 Red Neuronal Modelo de Hopfield Introducción Dentro de este articulo conocerá lo que es una red neuronal dentro de la I.A. Comprenderá como funciona y como se programa una red neuronal de acuerdo al modelo básico de Hopfield. Se mostrara la información básica sobre las partes de un cerebro y como es que funcionan las neuronas para comprender como implementarlo dentro de un algoritmo. Además se mostrara un ejemplo de una red neuronal artificial programada en C Posix de acuerdo el modelo de Hopfield implementado en Linux. Espero este manual sea de utilidad a muchas personas, recuerden no robarse solamente el código, siempre es mejor comprender y hacerlo por uno mismo. By: John Michel Rivera De León. lionheart815@hotmail.com
2 Red Neuronal Modelo de Hopfield By: John Michel Rivera De León Red Neuronal Modelo de Hopfield Conceptos ba sicos Una red neuronal intenta simular la forma como opera el cerebro. El cerebro es el sistema con mayor complejidad, no por su tamaño, sino por el números de elementos que lo conformas y por sus interrelaciones. Recordemos que un sistema es un conjunto de elementos que interactúan entre sí para alcanzar un objetivo. Los elementos básicos del cerebro son las neuronas, estas son células especializadas. En general: Informacio n El presente documento pretende ser una guía para comprender como funciona una red neuronal básica y como poder representarla en forma de algoritmo para poder programarlo. Se recomiendo leer completamente el artículo para al menos tener una noción sobre qué es lo que realiza una red neuronal. Dentro de la parte final encontrara un ejemplo de un programa realizado en C, para simular una red neuronal. Este ejemplo cuenta con capturas de pantalla para comprenderse mejor. 1
3 [Escriba el nombre de la compañía] Una neurona por sí sola no posee inteligencia alguna, la inteligencia radica en el número de conexiones entre neuronas. Tal vez te preguntes donde se localiza la inteligencia en el cerebro. La respuesta es en la sinapsis, es decir, aquel nodo donde se conectan dos neuronas, en la sinapsis es donde se dan reacciones bioquímicas. Un modelo para la configuración neuronal es el siguiente: RNA: Red Neuronal Artificial Una vez comprendidos los elementos básicos para conocer como está compuesta una red neuronal, podemos pasar a estudiar el modelo de Hopfield. 2
4 Red Neuronal Modelo de Hopfield By: John Michel Rivera De León Modelo de Hopfield Este modelo consiste en una red monocapa de neuronas cuyas salidas son números binarios. Cada neurona de la red se encuentra conectada con todas las demás, pero no consigo mismo. Existen pesos asociados para cada conexión entre neuronas (aristas), los cuales son simétricos. El peso representa el valor de la sinapsis w ij. W es únicamente por que en idioma ingles el peso es wheigth. Gráficamente una red así tiene la siguiente configuración: El conocimiento se almacena en los pesos. 3
5 [Escriba el nombre de la compañía] La función de activación tiene que ver con la naturaleza bioelectrica de la neurona, es decir, esta señal es de naturaleza eléctrica y química. La señal generada por la neurona viaja a través del axón y es de naturaleza eléctrica La señal que se transmite entre las terminales axomicas de una neurona y las dentritas de la neurona es de origen químico. Las dentritas acarrean señales químicas. 4 Existe una relación de las señales eléctricas con la composición de la membrana de la neurona.
6 Red Neuronal Modelo de Hopfield By: John Michel Rivera De León El precursor de las redes neuronales se llama perceptron. El perceptron es la primera aproximación que se dio alrededor de los años 50 s y 60 s, esto fue por Marvin Minsky. El perceptron es una sola neurona dividida en 2 partes, posee varias entradas, y solo una salida, esa salida es como el axón. Ejemplo entrenamiento de la red Entrenaremos una red para que aprenda 2 patrones que corresponden a las siguientes figuras: Estos patrones son: 1. Dos vectores 2. Cada vector posee 4 componentes, es decir una por pixel. 3. La red neuronal constara por lo tanto de 4 neuronas. Los vectores de entrada son: E1 = (1, 1, -1, -1) E2= (-1, -1, 1, 1 ) El aprendizaje consta en encontrar el valor de los pesos, w ij, que representa la unión sináptica entre dos neuronas. 5
7 [Escriba el nombre de la compañía]. 6
8 Red Neuronal Modelo de Hopfield By: John Michel Rivera De León Los pesos se definen: Termina el proceso de aprendizaje. Red Neuronal Artificial (Continuacio n del ejemplo) Ya entrenamos la red, esto significa el aprendizaje (patrones), se manifiesta eligiendo el conjunto de pesos correcto. Debemos utilizar el conocimiento, esto es que dada una entrada a la red esta debe dar un respuesta en función de lo que ella sabe. Supongamos que tenemos la siguiente entrada para la red Neuronal: E =( 1, -1, -1, -1 ) Gráficamente esto es: 7
9 [Escriba el nombre de la compañía] Qué responde la red? Se realiza el proceso; Iteración # 1 Ejecutamos la función de activación F( β )= 1 si β > 0-1 si β<=0 8
10 Red Neuronal Modelo de Hopfield By: John Michel Rivera De León Aplicando f a cada componente: E *W = ( ) E *W = ( f(2) f(6) f(-2) f(-2) ) = ( ) Iteración # 2: Aplicamos la función de activación: W2 = ( ) W1 = W2? en caso de que no, se hace una tercera iteración se compara 2 con 3, sino son iguales se vuelve a hacer otra cuarta iteración y se compara 3 con 4. En esta caso como si son iguales entonces ya terminamos, es decir, que la red W2= ( ) Esto quiere decir que de acuerdo a la entrada: ( ) La red responde ( ), 9 Ya que es el más parecido que la red conoce. Recordemos que entrenamos a la red solo con 2 patrones.
11 [Escriba el nombre de la compañía] Programacio n de una RNA de acuerdo al modelo de Hopfield En esta sección mostrare un ejemplo de un programa realizado en C Posix en la que se muestra una RNA según el modelo de hopfield. Primero mostraremos como se ve y se maneja el programa y al final se anexara el código fuente para que lo analicen o les sirva de ejemplo. No hagan el copy paste de mi código porque de lo contrario nunca aprenderán a hacer nada por ustedes mismos, además les caerá una maldición xd. Bueno empecemos: Aquí podemos observar el menú principal que ofrece el programa; Elegimos la opción número 1 para entrenar la red. Ingresamos cuantos vectores aprenderá la red, en este caso 2 vectores. Ingresamos ahora el número de componentes en los vectores, en este caso 4 pixeles para cada vector: 10 Ingresamos ahora el valor para cada pixel de los vectores, en este caso ingresamos para el vector 0 los valores [0,0]=1, [0,1]=1, [0,2]=-1, [0,3]=-1, y para el vector 1 los valores [1,0]=-1, [1,1]=-1, [1,1]=1, [1,1]=1.
12 Red Neuronal Modelo de Hopfield By: John Michel Rivera De León Una vez entrenada la red nos retornara al menú principal, podemos ver la información de la red eligiendo la opción número 2, esta muestra información que podemos visualizar página por página pulsando la tecla Q, muestra información sobre la matriz identidad, resultados de las operaciones E T *Ei I, y la matriz de pesos. Presionamos Q para regresar al menú principal, ahora elegimos la opción 3 para ingresar un patrón que la red no conoce, esto con el fin de que la red de acuerdo a lo que aprendió nos responda lo que sabe. 11
13 [Escriba el nombre de la compañía] Para esto ingresamos el patrón 1, -1, -1, -1: Entonces la red responde que ella conoce algo parecido y el resultado es : La red nos dice en que numero de iteración encuentra el resultado por si queremos corroborarlo a manita ya cabemos cuantas iteraciones tendremos que hacer xd. Presionamos Q para regresar al menú. Salimos de la aplicación con Ctrl+C. Fin del programa. 12
14 Red Neuronal Modelo de Hopfield By: John Michel Rivera De León Co digo fuente completo Lo que casi todos únicamente quieren #include <string.h> #include <stdio.h> #include <stdlib.h> #include <math.h> #include<sys/types.h> #include<unistd.h> int vectores=0,componentes=0,check1=0; void submenu(int pesos[]); void info(); void entrada(); void Reconocimiento(int pesos[]); void activacion(int wi[],int pesos[]); bool compara(int wbefore[],int wafter[]); void learning(int numeritos[]); //Creado por John Michel Rivera de Leon void entrada(){ system("clear"); printf("ingrese el Numero de Vectores a Utilizar:"); scanf("%d",&vectores); printf("\ningrese El numero de Componentes en los Vectores:"); scanf("%d",&componentes); int Numeritos[componentes*vectores]; int i=0,c=0; for(int j=0;j<componentes*vectores;j++){ system("clear"); int valtemp=0; printf("introdusca los valores para el vector[%d][%d]:",i,c); scanf("%d",&valtemp); if((c+1)%componentes==0){c=-1; i=i+1;} 13 c=c+1;
15 [Escriba el nombre de la compañía] Numeritos[j]=valtemp;}//for check1=1; learning(numeritos); } void learning(int numeritos[]){ FILE *ident,*w,*wsum; w=fopen("etei_i.txt","w"); ident= fopen("identidad.txt","w"); wsum=fopen("peso.txt","w"); fprintf(ident,"matriz IDENTIDAD PARA CADA VECTOR:\n"); fprintf(w,"resultados de EtEi-I:\n"); fprintf(wsum,"matriz DE PESOS:\n"); int ETEI[componentes][componentes]; int resul[componentes][componentes]; int identidad[componentes][componentes]; int Peso[componentes][componentes]; for(int g=0;g<componentes;g++){ for(int r=0;r<componentes;r++){ Peso[g][r]=0;}} int cont=0,cx=0,cy=0,tem=0; for(int x=0;x<vectores;x++){ for(int i=0;i<componentes;i++){ for(int j=0;j<componentes;j++){ ETEI[i][j]=(numeritos[i+tem]*numeritos[j+tem]); if(j==i){identidad[i][j]=1; }else{ identidad[i][j]=0;} resul[i][j]=etei[i][j]-identidad[i][j]; fprintf(ident,"\t%d",identidad[i][j]); fprintf(w,"\t%d",resul[i][j]); Peso[cx][cy]=Peso[cx][cy]+resul[i][j]; 14 cy=cy+1;}//j fprintf(ident,"\n"); fprintf(w,"\n"); cy=0;
16 Red Neuronal Modelo de Hopfield By: John Michel Rivera De León cx=cx+1;}//i cy=0; cx=0; tem=tem+componentes; fprintf(ident,"\n\n"); fprintf(w,"\n\n"); }fclose(ident); fclose(w); tem=0; for(int s=0;s<componentes;s++){ for(int d=0;d<componentes;d++){ fprintf(wsum,"\t%d",peso[s][d]); numeritos[d+tem]=peso[s][d];} tem=tem+componentes; fprintf(wsum,"\n");} fclose(wsum); while(true){submenu(numeritos);} } void info(){ system("cat identidad.txt more less"); system("cat ETEI_I.txt more less"); system("cat Peso.txt more less");} void Reconocimiento(int pesos[]){ FILE *activa; activa=fopen("activatexd.txt","w"); int in[componentes]; int enter=0; int wi[componentes]; printf("\ningrese vector a reconocer:\n"); fprintf(activa,"vector de Entrada: "); for(int i=0;i<componentes;i++){ 15 printf("ingrese la entrada[%d]",i); scanf("%d",&enter);
17 [Escriba el nombre de la compañía] in[i]=enter; fprintf(activa,"\t%d",enter); wi[i]=0;} fprintf(activa,"\ne*w="); for(int j=0;j<componentes;j++){ for(int k=0;k<componentes;k++){ wi[j]+=in[k]*pesos[(k*componentes)+j];}} fclose(activa); /// activacion(wi,pesos); } void activacion(int wi[],int pesos[]){ system("clear"); FILE *activa2,*activa3,*coms; activa2=fopen("activate2xd.txt","w"); activa3=fopen("activate3xd.txt","w"); coms=fopen("comxd.txt","w"); bool checa; int wiafter[componentes]; for(int i=0;i<componentes;i++){ fprintf(activa2,"\t%d",wi[i]); if(wi[i]>0){wi[i]=1;} else{wi[i]=-1;} fprintf(activa3,"\t%d",wi[i]);} int iteracion=2; do{ fprintf(coms,"iteracion %d:\n",iteracion); for(int t=0;t<componentes;t++){wiafter[t]=0;} for(int j=0;j<componentes;j++){ for(int k=0;k<componentes;k++){ 16 wiafter[j]+=wi[k]*pesos[(k*componentes)+j]; }} for(int i=0;i<componentes;i++){
18 Red Neuronal Modelo de Hopfield By: John Michel Rivera De León fprintf(coms,"\t%d",wiafter[i]); if(wiafter[i]>0){wiafter[i]=1;} else{wiafter[i]=-1;}} checa=compara(wi,wiafter); if(checa==false){ for(int gg=0;gg<componentes;gg++){ wi[gg]=wiafter[gg];} fprintf(coms,"\n NO SON IGUALES\n");} iteracion=iteracion+1; }while(checa==false); fprintf(coms,"\nson IGUALES\n RESPUESTA DE LA RED:"); for(int fin=0;fin<componentes;fin++){ fprintf(coms,"\t%d",wiafter[fin]);} fclose(activa2); fclose(activa3); fclose(coms); system("cat comxd.txt more less"); } bool compara(int wbefore[],int wafter[]){ bool check; for(int i=0;i<componentes;i++){ if(wbefore[i]==wafter[i]){check=true; }else{check=false; i=componentes;}} return check; } void submenu(int pesos[]){ int opcionxd; system("clear"); printf("\n\amenu:\n1-crear Y Entrenar una Nueva RED\n2-Ver informacion de la Red Actual\n3-ingresar un patron para que la red no conoce\n4-salir\nopcion elegida:"); 17 scanf("%d",&opcionxd); if(opcionxd==1){entrada();}
19 [Escriba el nombre de la compañía] if(opcionxd==2){ if(check1==1){ info();}else{system("clear"); printf("aun no Crea Ninguna Red..."); submenu(pesos);}} if(opcionxd==3){ if(check1==1){ Reconocimiento(pesos);}else{system("clear"); printf("necesita Entrenar la Red primero..."); submenu(pesos);}} if(opcionxd==4){ system("pkill -sigterm test2");} if(opcionxd<0 opcionxd>4){printf("\nopcion no existente..."); submenu(pesos);} } int main(){ int pesos[0]; submenu(pesos); return 0; } Referencias: 1. Apuntes vagos de mi materia de I.A de mi profesor Roberto Castro. 2. Programa sacado de mi tatema xd. 3. Ilustraciones Hechas por mi xd. 18
Tema: Red Neuronal Hopfield. Reconocimiento de Patrones.
Sistemas Expertos e Inteligencia Artificial. Guía No. 10 1 Facultad: Ingeniería Escuela: Computación Asignatura: Sistemas Expertos e Inteligencia Artificial Tema: Red Neuronal Hopfield. Reconocimiento
Más detallesInteligencia Artificial. Aprendizaje neuronal. Ing. Sup. en Informática, 4º. Curso académico: 2011/2012 Profesores: Ramón Hermoso y Matteo Vasirani
Inteligencia Artificial Aprendizaje neuronal Ing. Sup. en Informática, 4º Curso académico: 20/202 Profesores: Ramón Hermoso y Matteo Vasirani Aprendizaje Resumen: 3. Aprendizaje automático 3. Introducción
Más detallesNeurona. Células y Fibras nerviosas Célula Nerviosa. Sensoriales, motoras y de asociación Nucleo Actividades metabólicas Conexiones sinápticas
Redes Neuronales Neurona Células y Fibras nerviosas Célula Nerviosa Neuronas Bipolares Neuronas Multipolares Sensoriales, motoras y de asociación 50000 Nucleo Actividades metabólicas Conexiones sinápticas
Más detallesTema: Aprendizaje Supervisado.
Sistemas Expertos e Inteligencia Artificial. Guía No. 9 1 Tema: Aprendizaje Supervisado. Facultad: Ingeniería Escuela: Computación Asignatura: Sistemas Expertos e Inteligencia Artificial Objetivos Específicos
Más detallesAlgoritmo, Estructuras y Programación I Ing. Marglorie Colina
Unidad II: Fundamentos de la Programación Estructurada Algoritmo, Estructuras y Programación I Ing. Marglorie Colina Estructura General de un Programa Zona de ficheros de cabecera de las librerías Zona
Más detallesCONCEPTOS BÁSICOS (Freeman capt.1; Neural Nets capt. 4,5 y 7)
Tema 1: Conceptos Básicos Sistemas Conexionistas 1 CONCEPTOS BÁSICOS (Freeman capt.1; Neural Nets capt. 4,5 y 7) 1.- Introducción. 1.1.- Redes Neuronales de Tipo Biológico. 1.2.- Redes Neuronales dirigidas
Más detallesIntroducción a las Redes Neuronales
Introducción a las Redes Neuronales Excepto en las tareas basadas en el cálculo aritmético simple, actualmente, el cerebro humano es superior a cualquier computador: Reconocimiento de imágenes, Interpretación
Más detallesSimulación de Redes Neuronales Artificiales: Una Herramienta para la Docencia en Castellano
Simulación de Redes Neuronales Artificiales: Una Herramienta para la Docencia en Castellano Anita Alegre López 1, Sonia Mariño 1, David La Red 1 1 Dpto. Informática. Universidad Nacional del Nordeste.
Más detallesArboles Binarios de Búsqueda en C++
Arboles Binarios de Búsqueda en C++ por CCG/Mayo-2014 Tema de Arboles Binarios de Búsqueda, como un poco de teoría para su mejor entendimiento seguidamente mostrare la implementación en lenguaje de programación
Más detallesfor(i = 0; i <= 45; i+=5) { x = (i*3.1416)/180; printf( seno(%d) = %f\n,i,seno(x));
Ejemplo #include #include float seno(float x); int main(){ int i; float x; for(i = 0; i
Más detallesLenguaje C. República Bolivariana de Venezuela Fundación Misión Sucre Aldea Fray Pedro de Agreda Introducción a la Programación III
República Bolivariana de Venezuela Fundación Misión Sucre Aldea Fray Pedro de Agreda Introducción a la Programación III Lenguaje C 1 Puntos previos Los códigos fuentes generados en C requieren ser compilados
Más detallesÁrea Académica: Instituto de Ciencias Básicas e Ingeniería, Sistemas Computacionales
Área Académica: Instituto de Ciencias Básicas e Ingeniería, Sistemas Computacionales Tema: Perceptron Parte I Profesor: Víctor Tomás T. Mariano. Alumnos: Leticia Hernández Hernández Agustín Hernández Espinoza
Más detallesUTN FRBA Algoritmos y Estructura de Datos Examen Final 18/07/2014. Apellido y nombre: Legajo: Cursó con Prof:
UTN FRBA Algoritmos y Estructura de Datos Examen Final 18/07/2014 Distancias entre localidades Temas evaluados: Resolución de problemas, estructuras de datos, matrices, y lenguaje de programación Contexto
Más detallesRedes Neuronales Artificiales
Redes Neuronales Artificiales Alejandro Osses Vecchi 11 de julio de 2009 1. Introducción Comenzaremos con una definición simple y general de Red Neuronal para, en las próximas secciones, explicar y profundizar
Más detallesTema 3: Ðreas de la IA: Ejemplos de Investigaci n Actual (III) Redes Neuronales
Tema 3: Ðreas de la IA: Ejemplos de Investigaci n Actual (III) Redes Neuronales SRP Carlos Carrascosa Casamayor Vicente J. Julián Inglada Tema 3: Ðreas de La IA: Ejemplos de Investigaci n Actual (II) Redes
Más detallesANEXO II.- TEORÍA SOBRE REDES NEURONALES ARTIFICIALES
ANEXO II.- TEORÍA SOBRE REDES NEURONALES ARTIFICIALES 1. Concepto de red neuronal artificial Una red neuronal artificial (RNA) es un modelo matemático que intenta reproducir el modo de funcionamiento y
Más detallesFUNDAMENTOS DE INFORMÁTICA 1º Ingeniería Industrial
FUNDAMENTOS DE INFORMÁTICA º PRÁCTICA 4: Funciones y vectores CURSO 5/6 Área de Ingeniería de Sistemas y Automática ISA-UMH R-2-FI4v. FUNDAMENTOS DE INFORMÁTICA PRÁCTICA 4: Funciones y vectores curso 25-26
Más detallesRedes neuronales en control de sistemas
Redes neuronales en control de sistemas Marco Teórico Las redes neuronales tratan de emular ciertas características propias de los humanos, una muy importante es la experiencia. El ser humano es capaz
Más detallesAnálisis de Datos. Perceptrón multicapa. Profesor: Dr. Wilfrido Gómez Flores
Análisis de Datos Perceptrón multicapa Profesor: Dr. Wilfrido Gómez Flores 1 Introducción De acuerdo con el consejo de la IEEE Neural Networks de 1996, inteligencia artificial (IA) es el estudio de cómo
Más detallesRedes Neuronales Artificiales
Algoritmo de retropropagación Back propagation Es utilizado para entrenar redes neuronales multicapa. Exige que la función de activación de las neuronas sea derivable y creciente. Las funciones comúnmente
Más detallesREDES NEURONALES. Una esquema simplificado de una neurona se muestra en la siguiente figura. Cuerpo celular. Dendrita. Axón.
REDES NEURONALES Las redes neuronales constituyen una poderosa herramienta para modelar sistemas, especialmente no lineales, sean dinámicos o estáticos. En el cuerpo celular se realizan la mayoría de las
Más detalles1. Los objetos conocidos, es decir, aquellos objetos de los cuales poseemos información total o parcial útil en la búsqueda de los objetos desconocido
3. METODOLOGÍA DE SOLUCIÓN DE PROBLEMAS CON EL COMPUTADOR El desarrollo de un programa que resuelva un problema dado es una tarea compleja, ya que es necesario tener en cuenta de manera simultánea muchos
Más detallesTécnicas de inteligencia artificial. Aprendizaje: Perceptrón multi-capa
Técnicas de inteligencia artificial Aprendizaje: Perceptrón multi-capa Índice Regla delta Modelo computacional Neuronas e hiperplanos Entrenamiento como ajuste supervisado No-separabilidad lineal Backpropagation
Más detallesFuzzification. M.C. Ana Cristina Palacios García
Fuzzification M.C. Ana Cristina Palacios García Introducción Es el proceso donde las cantidades clásicas se convierten a difusas. Requiere el identificar la incertidumbre presente en valores finitos o
Más detallesEjercicios De Programación De C++ Algoritmos. Lenguaje De Programación C++:
Ejercicios De Programación De C++ 1. Muestre en pantalla el mensaje Bienvenido. Algoritmos 1. Inicio 2. muestrer en pantalla el mensaje Bienvenido 3. Fin Lenguaje De Programación C++: #include
Más detallesSistemas Operativos Practica 1: procesos y concurrencia.
Sistemas Operativos Practica 1: procesos y concurrencia. Objetivos: Introducir al alumno a los conceptos de programa, concurrencia, paralelismo y proceso o tarea. Manejo del concepto de concurrencia haciendo
Más detallesGUIA DE LABORATORIO # 13 Arreglos unidimensionales y bidimensionales
OBJETIVO GUIA DE LABORATORIO # 13 Arreglos unidimensionales y bidimensionales Entender el concepto y funcionamiento de los arreglos Realizar programas en C, haciendo uso de arreglos, a través de su recorrido
Más detallesDiseñando la primera transacción
Diseñando la primera transacción Luego de creada la base de conocimiento, el siguiente paso consiste en describir a los objetos de la realidad mediante objetos GeneXus.. Para identificar a los objetos
Más detallesSESIÓN DE EJERCICIOS E1
SESIÓN DE EJERCICIOS E1 Primera parte: ejercicios test (soluciones al final) A resolver antes de comenzar la sesión en el aula Ejercicio 1 Qué definición de constantes es la correcta en lenguaje C? a)
Más detallesContenido PARTE II: ESTRUCTURAS DE DATOS AVANZADAS
Contenido PARTE II: ESTRUCTURAS DE DATOS AVANZADAS TEMA 4. - La Estructura de datos Árbol 4.1. Árboles, definiciones 4.2 Árboles binarios y su representación 4.3 Operaciones básicas de un árbol binario
Más detallesInteligencia Artificial
Mayo 21 de 2008 El estudiante de la Pontificia Universidad Javeriana, como agente de su propia formación, es corresponsable de la Identidad Institucional, uno de cuyos cimientos es tener como hábito un
Más detallesA l g o r i t m o y E s t r u c t u r a d e D a t o s Ing. en Sistemas de Información - 1º año -
Trabajo práctico Nº 7 (Resolución de problemas Estructura: pila y cola). Realiza el programa de cada situación problemática. 1- Cargar en una pila n letras del abecedario.(n debe ser menor a 30) 2- En
Más detallesTUTORIAL SOBRE REDES NEURONALES APLICADAS EN INGENIERIA ELECTRICA Y SU IMPLEMENTACIÓN EN UN SITIO WEB
TUTORIAL SOBRE REDES NEURONALES APLICADAS EN INGENIERIA ELECTRICA Y SU IMPLEMENTACIÓN EN UN SITIO WEB MARIA ISABEL ACOSTA BUITRAGO CAMILO ALFONSO ZULUAGA MUÑOZ UNIVERSIDAD TECNOLOGICA DE PEREIRA FACULTAD
Más detallesPrincipal material bibliográfico utilizado
Vectores y Punteros Principal material bibliográfico utilizado www.jorgesanchez.net Fundamentos de Programación C/C++ - Ernesto Peñaloza Romero. Lenguaje C Adolfo Beltramo, Nélida Matas. En C el primer
Más detallesCodificación en C. Como pasar de Pseudocódigo a C (con pequeños trucos de C++)
Codificación en C Como pasar de Pseudocódigo a C (con pequeños trucos de C++) Plantilla Librerias Constantes Algoritmo #include #include #define PI 3.1416 int main(void){ /*Variables*/
Más detallesSistemas Operativos Práctica 3
Sistemas Operativos Práctica 3 Ing. Andrés Bustamante afbustamanteg@unal.edu.co Ingeniería de Sistemas Facultad de Ingeniería Universidad de la Amazonia 2009 1. Objetivo El objetivo de la práctica es que
Más detallesAnálisis de Datos. Combinación de clasificadores. Profesor: Dr. Wilfrido Gómez Flores
Análisis de Datos Combinación de clasificadores Profesor: Dr. Wilfrido Gómez Flores 1 Introducción Diversos algoritmos de clasificación están limitados a resolver problemas binarios, es decir, con dos
Más detallesDra. Ma. del Pilar Gómez Gil
C6-69 Tópicos Avanzados: Redes Neuronales Artificiales Neurodinámica: Las Redes de Hopfield Dra. Ma. del Pilar Gómez Gil V:4--7 P. Gómez Gil. INAOE (c) 7 Neurodinámica Se refiere al estudio de RNA vistas
Más detallesApuntes de Inteligencia Artificial
PONTIFICIA UNIVERSIDAD CATÓLICA DEL ECUADOR FACULTAD DE INGENIERÍA Apuntes de Inteligencia Artificial Laboratorio: Perceptrón Simple JORGE AGUILAR JARAMILLO LABORATORIO : NEURONA Y PERCEPTRON SIMPPLE Objetivos.
Más detallesMÉTODOS DE APRENDIZAJE INDUCTIVO (continuación)
Aprendiae Automático y Data Mining Bloque III MÉTODOS DE APRENDIZAJE INDUCTIVO (continuación) REDES NEURONALES 2 Redes neuronales (I) Red neuronal: método de aprendiae inductivo inspirado en la estructura
Más detallesClase No. 13: Factorización QR MAT 251. Joaquín Peña (CIMAT) Métodos Numéricos (MAT 251) / 16
Clase No 13: Factorización QR MAT 251 Joaquín Peña (CIMAT) Métodos Numéricos (MAT 251) 03102011 1 / 16 Factorización QR Sea A R m n con m n La factorización QR de A es A = QR = [Q 1 Q 2 ] R1 = Q 0 1 R
Más detallesBUCLES ANIDADOS EN LENGUAJE C
3/5/2013 UNAN - LEON BUCLES ANIDADOS EN LENGUAJE C M.Sc. Ana María Salgado G. Bucles anidados Los bucles anidados constan de un bucle externo con uno o más bucles internos. Cada vez que se repite el bucle
Más detallesReales. Caracteres. Cadenas de Caracteres (String)
Conceptos preliminares para la programación Algoritmo: Conjunto de pasos lógicos, secuenciales y finitos para dar solución a un problema general. Dato: Es una característica de un objeto o entidad, que
Más detallesProgramación. Test Autoevaluación Tema 3
Programación Test Autoevaluación Tema 3 Autores: M. Paz Sesmero Lorente Paula de Toledo Heras Fco. Javier Ordoñez Morales Juan Gómez Romero José A. Iglesias Martínez José Luis Mira Peidro SOLUCIONES 1.
Más detallesORDENAMIENTO Y BÚSQUEDA
ORDENAMIENTO Y BÚSQUEDA Los computadores se emplean frecuentemente para almacenar y recuperar grandes volúmenes de datos. Con su velocidad y facilidad de acceso, los computadores aventajan a otros medios
Más detallesQue son las redes neuronales? Una introducción informal
Que son las redes neuronales? Una introducción informal Julio Waissman Vilanova Licenciatura en Ciencias de la Computación Departamento de Matemáticas Universidad de Sonora Waissman (UNISON/LCC) Redes
Más detallesGrafos. AMD Grado en Ingeniería Informática. AMD Grado en Ingeniería Informática (UM) Grafos 1 / 30
Grafos AMD Grado en Ingeniería Informática AMD Grado en Ingeniería Informática (UM) Grafos / 0 Objetivos Al finalizar este tema tendréis que: Conocer la terminología básica de la teoría de grafos. Pasar
Más detallesTema 8: Redes Neuronales
Tema 8: Redes Neuronales Pedro Larrañaga, Iñaki Inza, Abdelmalik Moujahid Intelligent Systems Group Departamento de Ciencias de la Computación e Inteligencia Artificial Universidad del País Vasco http://www.sc.ehu.es/isg/
Más detalleshttp://www.conclase.net/c/devcpp.php?art=depurar Depurar programas
Depurar programas Siempre hay que tener en cuenta que los ordenadores hacen sólo aquello que nosotros les decimos que hagan: si los programas no funcionan es porque no los hemos diseñado bien o porque
Más detallesUnidad Didáctica 9. Comportamientos
Unidad Didáctica 9 Comportamientos Contenido 1. Introducción 2. Abrir ventana de navegador 3. Mensaje emergente 4. Validar formularios U.D. 9 Comportamientos 1. Introducción Los comportamientos son acciones
Más detallesActividad Algoritmos, Estructura y Programación I. FOR, DO-WHILE
Actividad Algoritmos, Estructura y Programación I. FOR, DO-WHILE 1. Qué es un bucle? 2. A que se denomina cuerpo de un bucle? 3. Define iteración de un bucle. 4. Cuál es el cuerpo de un bucle? 5. Qué es
Más detalles#include <stdio.h> /* Factorial de un número - versión 1- */
Ejemplo 1: Programa que calcula el factorial de 'n' números introducidos desde teclado. Primera versión: /* Factorial de un número - versión 1- */ long int factorial (int x) /*definición de función*/ int
Más detallesCapítulo 13 INSTRUCCIONES DE CONTROL REPETITIVAS. Presentación resumen del libro: "EMPEZAR DE CERO A PROGRAMAR EN lenguaje C"
Presentación resumen del libro: "EMPEZAR DE CERO A PROGRAMAR EN lenguaje C" Autor: Carlos Javier Pes Rivas (correo@carlospes.com) Capítulo 13 INSTRUCCIONES DE CONTROL REPETITIVAS 1 OBJETIVOS Conocer las
Más detallesEQUIVALENCIAS EN C DE CONSTRUCCIONES SECUENICIALES EN PSEUDOCÓDIGO
EQUIVALENCIAS EN C DE CONSTRUCCIONES SECUENICIALES EN PSEUDOCÓDIGO TIPOS DE DATOS BÁSICOS: Tipo Tipo Tamaño aproximado en bits Rango mínimo Carácter char 8 0 a 55 Entero int 16-3767 a 3767 Real float 3
Más detallesArreglos. Algoritmos y Estructuras de Datos I. Arreglos en C++ Arreglos y listas
Arreglos Algoritmos y Estructuras de Datos I Primer cuatrimestre 2007 Teórica de imperativo 3 Algoritmos de búsqueda secuencias de una cantidad fija de variables del mismo tipo se declaran con un nombre,,
Más detallesAnexo Redes Neuronales
Anexo Redes Neuronales Félix Monasterio-Huelin y Álvaro Gutiérrez 8 de abril de 2016 Índice Índice 1 Índice de figuras 1 1. El entorno del robot 2 2. Neurona y funciones de activación 2 2.1. Vector de
Más detallesINTELIGENCIA ARTIFICIAL I
ESCUELA SUPERIOR POLITÉCNICA AGROPECUARIA DE MANABÍ MANUEL FÉLIX LÓPEZ CARRERA INFORMÁTICA SEMESTRE SEXTO PERIODO OCT-2014/MAR-2015 INTELIGENCIA ARTIFICIAL I TEMA: INTRODUCCIÓN A LAS REDES DE NEURONAS
Más detallesALGORITMOS Y PROGRAMACIÓN I Unidad 3
ALGORITMOS Y PROGRAMACIÓN I Unidad 3 Tipos de Datos Estructurados Prof. Jaime Soto Sección (007) Material original de Prof. AURELY LEAL Introducción a las Estructuras de Datos Una estructura de datos es
Más detallesRedes Neuronales Artificiales. MTI. Eduardo Cruz Romero
Redes Neuronales Artificiales MTI. Eduardo Cruz Romero Qué es una neurona? La neurona es la célula responsable de transferir la información y los impulsos eléctricos alrededor del cuerpo. Estructura Neuronal
Más detallesReconocimiento automático de palabras en documentos históricos usando redes neuronales convolucionales
Reconocimiento automático de palabras en documentos históricos usando redes neuronales convolucionales Dra. Ma. de Guadalupe García Hernández Departamento de Ingeniería Electrónica Objetivo general Aplicar
Más detallesA l g o r i t m o y E s t r u c t u r a d e D a t o s Ing. en Sistemas de Información - 1º año -
Trabajo práctico Nº 7 (Resolución de problemas Estructura: pila y cola). Realiza el programa de cada situación problemática. 1- Cargar en una pila n letras del abecedario.(n debe ser menor a 30) 2- En
Más detallesConstitución del Sistema Nervioso
LA NEURONA Constitución del Sistema Nervioso El Sistema Nervioso nos permite reaccionar y adaptarnos al entorno en el que estamos, así como regular las actividades internas. Capta información del exterior
Más detallesidentificador: Es el nombre que le damos a la variable matriz y por el cual la referenciaremos en nuestro programa.
Matrices La matriz es una estructura de datos básica dentro de los lenguajes de programación y conceptualmente son identicas a sus homónimas matemáticas. Por tanto una matriz es un conjunto de datos de
Más detallesESTRUCTURAS. Struct Identificador_ tipo_estructura { Tipo miembro_1; /*Declaración de los miembros*/
DECLARACION DE ESTRUCTURAS ESTRUCTURAS La estructura es una colección de variables, la cual puede poseer distintos tipos de datos (a diferencia de los arreglos que solamente pueden tener un solo tipo de
Más detallesProf. Dr. Paul Bustamante
Prácticas de C++ Practica Nº 6 Informática II Fundamentos de Programación Prof. Dr. Paul Bustamante Practica Nº 6 Programación en C++ Pág. 1 ÍNDICE ÍNDICE... 1 1. Introducción... 1 1.1 Ejercicio 1: Clase
Más detallesProgramación 1. Tema II. Diseño de programas elementales. Lección 7. Diseño modular y descendente de programas
Programación 1 Tema II. Diseño de programas elementales Lección 7. Diseño modular y descendente de programas 1 Objetivos de la lección : Aprender qué es un diseño modular de un programa Aprender a diseñar
Más detallesDEFINICIONES BÁSICAS DE LAS ESTRUCTURAS DE DATOS
DEFINICIONES BÁSICAS DE LAS ESTRUCTURAS DE DATOS En programación, una estructura de datos es una forma de organizar un conjunto de datos elementales con el objetivo de facilitar su manipulación Un dato
Más detallesVectores y matrices. Fundamentos de Programación Fundamentos de Programación I
Vectores y matrices Fundamentos de Programación Fundamentos de Programación I 1 Ejemplo de utilización n de vectores: gráfico de producción En una compañía nos han encargado escribir un programita que
Más detalles2. Problema de Algoritmia (5 puntos - 15 minutos)
2. Problema de Algoritmia (5 puntos - 15 minutos). long long int sucesion(int n){ if(n==0) return 1; if(n==1) return 2; long long int r1=sucesion(n-1); long long int r2=sucesion(n-2); return 2*r1-3*r2;
Más detallesCadenas y Estructuras
Cadenas y Estructuras Fundamentos de Programación Fundamentos de Programación I FP / FP I 1 Proyecto de programación para el manejo de cadenas en C++ Escriba un programa que lea el nombre de una persona
Más detallesESTRUCTURAS DE DATOS Y ALGORITMOS
ESTRUCTURAS DE DATOS Y ALGORITMOS CURSO 2009 PRÁCTICO 8 Nota: al igual que en los prácticos 6 y 7, en los problemas que siguen se usarán los tipos lista y árbol binario, como tipos abstractos, cada uno
Más detallesInformática II Vectores y Matrices
UTN Facultad Regional Tucumán Informática II Vectores y Matrices Arreglos unidimensionales y multidimensionales en C Prof. Ing. Oscar Gálvez A.T.P. Ing. César Ovejero VECTORES Y MATRICES Arreglos unidimensionales
Más detallesLenguaje de Programación: C++ ARCHIVOS I/O
UG C++ Lenguaje de Programación: C++ ARCHIVOS I/O Universidad de Guanajuato Octubre 2010 Como abrir un archivo Antes de poder escribir datos en un archivo, debemos abrirlo, esto significa que debemos decirle
Más detallesUNIVERSIDAD NACIONAL DE SALTA Sede Regional Orán AÑO: 2013 Carreras: TIG - TUP
TRABAJO PRÁCTICO N 4: Modularidad Ejercicio 1: Dados los siguientes prototipos de módulos, explicar cada elemento que los conforman. a) int suma(int a, int b); b) double area(double base, double altura);
Más detallesOTRAS CONSIDERACIONES. Introducción a las Redes Neuronales Artificiales
OTRAS CONSIDERACIONES! Estrategias para generalización Existen diversas estrategias para mejorar la generalización: 1) Teoría de Regularización: Agregar una penalidad para lograr mejorar la forma de la
Más detallesSemana Lenguajes 7de programación Tipos de lenguajes de programación
Semana Lenguajes 7de programación Semana 6 Empecemos! Estimados participantes, bienvenidos a esta nueva semana, en la que estudiaremos los lenguajes de programación más utilizados. No olvides repasar los
Más detallesEn este artículo vamos a conocer los tipos de datos que podemos manejar programando en C.
El primer objetivo de un programa informático es el manejo de datos. Un dato es toda aquella información que se puede tratar en un programa informático. En este artículo vamos a conocer los tipos de datos
Más detallesCapítulo 5. Construcción de una Red Neuronal Artificial Asesora
Capítulo 5. Construcción de una Red Neuronal Artificial Asesora 53 Capítulo 5. Construcción de una Red Neuronal Artificial Asesora 5.1 Construcción de la red A lo largo de las investigaciones realizadas
Más detallesCapítulo 3 REDES NEURONALES Y SU APLICACIÓN EN LA INGENIERÍA SÍSMICA III. REDES NEURONALES Y SU APLICACIÓN EN LA INGENIERÍA SÍSMICA
III. REDES NEURONALES Y SU APLICACIÓN EN LA INGENIERÍA SÍSMICA 32 III. REDES NEURONALES ARTIFICIALES Y SU APLICACIÓN EN LA INGENIERÍA SÍSMICA III.1 CONCEPTOS GENERALES En sus orígenes las Redes Neuronales
Más detallesIntroducción a las Redes de Neuronas
Introducción a las Redes de Neuronas Departamento de Informática Universidad Carlos III de Madrid Avda. de la Universidad, 30. 89 Leganés (Madrid) Introducción de Redes de Neuronas Introducción Fundamentos
Más detallesManual de uso Guía FMDC (Android e IOS).
Pantalla de Ingreso. Es necesario ingresar el usuario (e-mail) y contraseña creados previamente en ine.opk.mx * Este proceso sólo se hace la primera vez y requiere internet para verificar la identidad
Más detallesIntroducción al tipo de dato ARRAY
CONTENIDOS. Introducción al tipo de dato ARRAY. Definición, Características, Declaración, Acceso e Inicialización.. Arrays multidimensionales Definición, Declaración, Acceso e Inicialización. Introducción
Más detallesE s c u e l a P o l i t é c n i c a S u p e r i o r d e E l c h e
EXAMEN DE SISTEMAS INFORMÁTICOS INDUSTRIALES (SOLUCIÓN PRÁCTICAS) La duración del examen es de 2 horas. SEPTIEMBRE 2016 En este examen se solicita al alumno realizar una función para ordenar un vector
Más detallesEstructuras de Datos Estáticas. Diseñar y programar en lenguaje C soluciones utilizando estructuras de datos estáticas
Fundación Misión Sucre Colegio Universitario de Caracas Taller 2: Estructuras de Datos Estáticas Objetivo Diseñar y programar en lenguaje C soluciones utilizando estructuras de datos estáticas Contenido
Más detallesTema: Autómatas de Estado Finitos
Compiladores. Guía 2 1 Facultad: Ingeniería Escuela: Computación Asignatura: Compiladores Tema: Autómatas de Estado Finitos Contenido En esta guía se aborda la aplicación de los autómatas en el campo de
Más detalles= RETURN =3 7-. ELSE K
11-. Pida Al Usuario Dos Números Enteros (Que Se Guardaran En Las Variables Num 1 Y Num2). Si Num2 Es Cero, Deberá Mostrar Un Mensaje De Error, Y En Caso Contrario Mostrara En Pantalla El Resto De La División
Más detallesCaracteres y Cadenas Conversión de Datos Funciones y procedimientos Archivos cabecera. Fundamentos de programación
1 Caracteres y Cadenas Conversión de Datos Funciones y procedimientos Archivos cabecera Fundamentos de programación Agenda Caracteres y Cadenas Conversión de Datos Introducción a las funciones y procedimientos
Más detallesAPRENDIZAJE Y DESARROLLO DEL CEREBRO. Lucía Arduz Cardona
APRENDIZAJE Y DESARROLLO DEL CEREBRO Lucía Arduz Cardona INTRODUCCION El cerebro se desarrolla cuando una persona aprende La persona que aprende más, es cada vez más inteligente Resumen de como funciona
Más detallesCadenas (strings) y Estructuras
Cadenas (strings) y Estructuras Fundamentos de Programación Fundamentos de Programación I Operaciones básicas definidas para string Creación de variables: string palabra, frase; Asignación: frase = palabra;
Más detallesMi primer programa en Code::Blocks
Mi primer programa en Code::Blocks Introducción a la Computación Departamento de Computación - FCEyN - UBA Primer cuatrimestre de 2010 1. Antes de empezar 1.1. Cómo instalo el Code::Blocks en una computadora?
Más detallesSESIÓN DE EJERCICIOS E1
SESIÓN DE EJERCICIOS E1 Primera parte: ejercicios test Ejercicio 1 Qué definición de constantes es la correcta en lenguaje C? a) #define N=25; b) #define N 25 c) int N=25; d) int N 25 Ejercicio 2 La expresión
Más detallesESTRUCTURAS DINÁMICAS DE DATOS (PILAS) EN C
2013 ESTRUCTURAS DINÁMICAS DE DATOS (PILAS) EN C Departamento de Computación UNAN-León TEMA 4: ESTRUCTURAS DINÁMICAS DE DATOS (PILAS) 4.1 INTRODUCCIÓN: En términos de listas lineales, una pila puede ser
Más detallesUNIVERSIDAD AUTONOMA DE MADRID ESCUELA POLITÉCNICA SUPERIOR ESTRUCTURAS DE DATOS Y ALGORITMOS
UNIVERSIDAD AUTONOMA DE MADRID ESCUELA POLITÉCNICA SUPERIOR ESTRUCTURAS DE DATOS Y ALGORITMOS Curso 2008-09 Examen parcial APELLIDOS: NOMBRE: 1. (0.5 puntos) Enumera las características de un algoritmo
Más detallesDesarrollo avanzado en Android
DesarrolloavanzadoenAndroid MiguelÁngelLozano,BoyánBonev,PabloSuau,JuanManuelSáez {malozano,boyan,pablo,jmsaez}@dccia.ua.es MobileVisionResearchLab Dep.CienciadelaComputacióneInteligenciaArtificial InstitutoUniversitariodeInvestigaciónenInformática
Más detallesMientras (expresión lógica) Instrucciones a repetir mientras la expresión lógica es verdadera Fin Mientras
Clase teórica 7 Algoritmos en C Página 1 de 5 INSTRUCCIÓN WHILE Una forma más general que el FOR para realizar iteraciones es el WHILE (mientras), el cual permite repetir una serie de instrucciones mientras
Más detallesFACULTAD DE INGENIERÍA
NOMBRE DEL PROFESOR: Ing. Héctor Manuel Quej Cosgaya NOMBRE DE LA PRÁCTICA: Estructuras de decisión PRÁCTICA NÚM. [ 5 ] LABORATORIO: MATERIA: UNIDAD: TIEMPO: Centro de Ingeniería Computacional Lenguaje
Más detallesDescripción del problema:
PROBLEMA DEL AGENTE VIAJERO USANDO BÚSQUEDA TABU PROYECTO FINAL PROGRAMACIÓN CIENTIFICA ANGELES BAEZ OLVERA 4 JUNIO 2009 Descripción del problema: El problema del agente viajero o TSP como se le conoce
Más detallesEjercicios Tema 6. Funciones
Ejercicios Tema 6. Funciones 1. Programa que calcule el cuadrado de todos los números comprendidos entre dos dados. Usar una función a la que se le pasa como parámetro un valor y retorna su cuadrado. 2.
Más detallesInstalación de Grid Infrastructure
Instalación de Grid Infrastructure Lo primero que hacemos es bajar en nuestra maquina anfitriona Slackware Linux el software para la instalación de Oracle Database desde la página de Oracle: http://www.oracle.com/technetwork/database/enterprise-edition/downloads/112010-
Más detallesREDES NEURONALES ADAPTABLES
REDES NEURONALES ADAPTABLES Unidad 3: Redes neuronales artificiales y modelos de entrenamiento SubTemas 3.2 Perceptron simple Arquitectura Regla delta Multi Layer Perceptrón 3.3 Redes Neuronales Adaptables
Más detalles