private void calcularSensibilidad(double valorActivacion, double error, int numeroEntradasIniciales){
		
		//Derivada de la funcion de activacion y(1-y)
		double derivadaAdaline = valorActivacion * (1-valorActivacion);
		this.sensibilidadAdaline = -2 * derivadaAdaline * error;
		//System.out.println("S[" + this.getNumeroCapasOcultas() + "] Adaline = " + this.sensibilidadAdaline);
		int pesosRecorrer = 0;
		
		double sensibilidad = 0;
		double sensibilidadAdelante = 0;
		
			for(int m = this.getNumeroCapasOcultas()-1; m >= 0; m--){

				for (int i = 0; i < this.getNumeroNeuronasPorCapa(); ++i){
					sensibilidad = 0;
					double derivada = Double.valueOf(this.getSalidasPorCapa(m, i)) * (1 - Double.valueOf(this.getSalidasPorCapa(m, i)));						
					 sensibilidadAdelante = (m == this.getNumeroCapasOcultas()-1) ? this.sensibilidadAdaline : this.getSensibilidades(m+1, i);
					 pesosRecorrer = this.getNumeroNeuronasPorCapa();
							
						for(int peso = 1; peso <= pesosRecorrer; peso++){ 
							
							if(m == this.getNumeroCapasOcultas()-1){
								//Pesos Adaline
								sensibilidad += derivada * this.getPesoAdaline(peso) * sensibilidadAdelante;
							}else{
								//Pesos normales
								sensibilidad += derivada * this.getPesoLlaveEntera(m+1, i, peso) * sensibilidadAdelante;
							}
							
						}
						
					this.setSensibilidades(m, i, sensibilidad);
					System.out.println("S["+m+"]["+i+"] = " + sensibilidad);
				}
				
			}
	}