SoloCodigo
		Programación Específica => Inteligencia Artificial => Mensaje iniciado por: tempelton en Lunes  9 de Febrero de 2009, 12:33
		
			
			- 
				Hola a todos
 Estoy empezando y haciendo pinitos en esto de las redes neuronales artificiales. He conseguido entrenar y hacer funcionar un microbot con RNA's, usando la función hardlims (-1 +1) para controlar la salida para los motores. He usado cuatro sensores de proximidad como entradas y los motores como salidas. La red funciona perfectamente, tanto en los casos entrenados como en la generalización.
 Mi problema viene cuando, en ciertos manuales o informaciones que hay por algunos sitios, dice que utilizan también esa función de activación pero, en vez de usar esa función, usan la sigmodial; calculan los pesos nuevos con números positivos y negativos pero con decimales (los valores propios de la salida sigmodial). Incluso los pesos iniciales aleatorios son también de ese tipo.
 ¿Cómo usar esos números con la función hardlims (-1 +1)? ¿No viene a ser lo mismo? ¿entre qué valores debemos detectar en la salida para considerarla +1 ó -1? ¿tiene algún sentido usar esa función para el control de dos motores con -1 y +1? No lo veo claro.
 No sé si me he explicando bien. ¿Algún consejo o ayudita?
 Gracias
- 
				Tipo Juan Palomo.
 
 Buscando y mirando encontré que una solución a mi entrada anterior podría ser la manera de actualizar los nuevos pesos a partir de los valores obtenidos con la función sigmoidal. Lo haría de esta forma:
 Si salida <= 0 -> salida -> -1
 Si salida >0 y <1 -> salida -> no cambia
 Si salida >=1 -> salida -> +1
 
 ¿Podría ser algo así?
 
 Seguiremos a la escucha
 
 Saludos