Ejemplo n.º 1
0
    def le_camada_entrada(self, nome_arquivo, quantas_entradas,
                          ultimo_id_neuronio, learning_rate, momentum):
        with open(nome_arquivo, 'r') as arquivo_leitura_entrada:
            quantos_leu = 0
            for linha in arquivo_leitura_entrada:
                linha_quebrada = linha.split(' ')
                for i in linha_quebrada[
                        0]:  # pega as ENTRADAS somente (desconsidera saída esperada AINDA)

                    n = Neuronio(
                        ultimo_id_neuronio, i, learning_rate,
                        momentum)  # passando peso -1 como teste apenas
                    n.entradas = [float(i)]
                    n.saida = float(
                        i)  # coloca entrada na saída para primeira camada
                    self.neuronios.append(n)
                    ultimo_id_neuronio += 1

                quantos_leu += 1
                if (quantos_leu == quantas_entradas):
                    self.exibe_neuronios()
                    break
            return ultimo_id_neuronio
Ejemplo n.º 2
0
            camada_escondida = Camada(quantos_neuronios_camada_escondida)

            quantos_neuronios_camada_saida = settings.quantidade_neuronios_camada_saida
            camada_saida = CamadaSaida(quantos_neuronios_camada_saida)

            camada_saida.le_saida_esperada(nome_arquivo_leitura, 1,
                                           linha_arquivo_treino)

            # LEITURA DA CAMADA ESCONDIDA
            for indice_neuronio_escondido in range(
                    quantos_neuronios_camada_escondida):
                neuronio_novo = Neuronio(settings.ultimo_id_neuronio, [],
                                         taxa_aprendizagem, settings.momentum)

                neuronio_novo.entradas = [
                    neuronio for neuronio in camada_entrada.neuronios
                ]
                neuronio_novo.pesos = [
                    camada_escondida.__gera_peso_aleatorio__()
                    for neuronio in camada_entrada.neuronios
                ]
                camada_escondida.neuronios.append(neuronio_novo)
                settings.ultimo_id_neuronio += 1
                # camada_escondida.neuronios.append(neuronio)

            # LEITURA DA CAMADA DE SAÍDA
            for _ in range(quantos_neuronios_camada_saida):
                neuronio_novo = Neuronio(settings.ultimo_id_neuronio, [],
                                         taxa_aprendizagem, settings.momentum)
                for neuronio in camada_escondida.neuronios:
                    neuronio_novo.entradas.append(neuronio)