示例#1
0
 def predict(self, entrada):
     # Retorna saida basiado na entrada
     entrada = Matriz.matrizLinha(entrada)
     pesos_t = Matriz.transposta(self.pesos)
     soma = Matriz.mult(entrada, pesos_t)
     soma = Matriz.array(soma)
     soma[0] -= self.bias
     saida = Hebb(soma[0])
     return saida
    def predict(self, entrada):
        # Entrada -> Oculta
        entrada = Matriz.matriz(entrada)
        oculta = Matriz.mult(self.pesos_EO, entrada)
        oculta = Matriz.soma(oculta, self.bias_EO)
        oculta = Matriz.sigmoid(oculta)

        # Oculta -> Saida
        saida = Matriz.mult(self.pesos_OS, oculta)
        saida = Matriz.soma(saida, self.bias_OS)
        saida = Matriz.sigmoid(saida)
        saida = Matriz.array(saida)
        return saida
示例#3
0
    def treino(self, entrada, saidaFinal):
        # Verificando Resultado
        entrada = Matriz.matrizLinha(entrada)
        pesos_t = Matriz.transposta(self.pesos)
        soma = Matriz.mult(entrada, pesos_t)
        soma = Matriz.array(soma)
        soma[0] -= self.bias
        saida = Hebb(soma[0])
        erro = False

        # Atualizando Pesos
        if (saida != saidaFinal):
            taxaErro = saidaFinal - saida
            delta = Matriz.mult_escalar(entrada, self.taxa * taxaErro)
            self.pesos = Matriz.soma(delta, self.pesos)
            self.bias += (taxaErro * self.taxa * -1)
            erro = True
        return erro