Treinando Redes Neurais com Excel: Construindo e Validando Perceptron Multicamada em Python
Neste artigo, mostraremos como gerar dados de treino no Excel, treinar um perceptron multicamada em Python e validar seu desempenho.
Se você busca desenvolver uma rede neural Python, está no lugar certo. Antes de mergulhar na preparação de dados baseada em Excel, considere revisar o resto da série abaixo para contexto fundamental:
- Como Realizar Classificação Usando Rede Neural: O Que é o Perceptron?
- Como Usar Exemplo Simples de Perceptron para Classificar Dados
- Como Treinar um Perceptron Básico
- Entendendo Treinamento Simples de Rede Neural
- Introdução à Teoria de Treinamento para Redes Neurais
- Entendendo Taxa de Aprendizado em Redes Neurais
- Machine Learning Avançado com Perceptron Multicamada
- Função de Ativação Sigmoid: Ativação em Perceptrons Multicamadas
- Como Treinar um Perceptron Multicamada
- Entendendo Fórmulas de Treinamento e Backpropagation para Perceptrons Multicamadas
- Arquitetura de Rede Neural para Implementação Python
- Como Criar um Perceptron Multicamada em Python
- Processamento de Sinais Usando Redes Neurais: Validação no Design de Redes Neurais
- Datasets de Treinamento para Redes Neurais: Como Treinar e Validar uma Rede Neural Python
O Que São Dados de Treino?
Em aplicações reais, amostras de treino consistem de entradas medidas pareadas com alvos conhecidos que permitem a uma rede neural aprender um mapeamento entrada-saída consistente. Por exemplo, suponha que você queira uma rede para prever qualidade de consumo de tomate baseada em cor, forma e densidade. Coletando milhares de tomates, registrando seus atributos físicos, provando cada um e compilando resultados em uma tabela, você cria o dataset que a rede usará para aprender a relação entre atributos e qualidade.
Cada linha representa uma amostra de treino com três colunas de entrada (cor, forma, densidade) e uma única coluna de saída alvo.

Durante o treino, a rede neural identificará o padrão subjacente — se existir — entre os três valores de entrada e o valor de saída.
Quantificando Dados de Treino
Todas as entradas e saídas devem ser numéricas. Strings como "forma ameixa" ou "apetitoso" não podem ser alimentadas diretamente na rede. Quantização converte descritores qualitativos em escalas numéricas. Por exemplo, forma poderia ser codificada de –1 (esfera perfeita) a +1 (extremamente alongada). Qualidade de consumo poderia ser avaliada em escala de cinco pontos e então one-hot encoded em vetor de saída de cinco elementos.
O diagrama a seguir ilustra one-hot encoding para tarefa de classificação de cinco classes.

One-hot encoding alinha bem com ativação logística-sigmoid, que produz valores próximos a 0 ou 1 fora de zona de transição estreita. Usar único nó de saída com valores alvo 0–4 viesaria a rede para os extremos e levaria a predições sem sentido.

Criando um Dataset de Treino
A rede neural Python referenciada na Parte 12 importa amostras de arquivo Excel. Os dados usados aqui são arranjados da seguinte forma:

Como nossa implementação Perceptron suporta apenas único nó de saída, realizamos classificação binária. Valores de entrada são números aleatórios entre –5 e +5, gerados com esta fórmula Excel:
=RANDBETWEEN(-10, 10)/2
A saída é derivada da seguinte regra:
=IF(AND(A2>0, B2>0, C2<0), 1, 0)
Assim, a rede aprende que uma amostra é rotulada 1 apenas quando input_0 > 0, input_1 > 0 e input_2 < 0; caso contrário, recebe 0.
Para este problema simples, 5.000 amostras geradas aleatoriamente e uma única época são suficientes para atingir alta precisão de classificação.
Treinando a Rede
Configure a rede com dimensionalidade de entrada três (I_dim = 3), quatro nós ocultos (H_dim = 4) e taxa de aprendizado 0.1 (LR = 0.1). Substitua a linha training_data = pandas.read_excel(...) pelo caminho para sua planilha. Se você não tem Excel, Pandas também lê arquivos ODS.
Executar o script de treino em laptop 2.5 GHz Windows com 5.000 amostras completa em apenas alguns segundos. Se você estiver usando o script completo MLP_v1.py, validação iniciará automaticamente após o treino.
Validando a Rede
Validação requer segunda planilha gerada com as mesmas fórmulas. Importe estes dados da mesma forma que os dados de treino:

O snippet a seguir demonstra rotina de validação direta:
# Feed-forward para obter valor pós-ativação output = sigmoid(np.dot(W_out, hidden_output)) # Aplicar threshold para obter predição binária prediction = 1 if output > 0.5 else 0 # Comparar com alvo e acumular predições corretas
Precisão de classificação é calculada dividindo número de predições corretas pelo total de amostras de validação.
Se np.random.seed(1) for omitido, inicialização de pesos variará entre execuções, causando flutuação na precisão. Em 15 execuções com parâmetros especificados (5.000 amostras de treino, 1.000 de validação), precisão variou de 88,5% a 98,1%, com média de 94,4%.
Conclusão
Exploramos conceitos-chave por trás de dados de treino de redes neurais, implementamos Perceptron multicamada Python e avaliamos seu desempenho usando datasets gerados no Excel. A série progrediu significativamente desde seu início, e muitos tópicos avançados aguardam em posts futuros.
Robô industrial
- Obter Data e Hora Atuais em Python: Guia Prático
- Innatera Revela Primeiros Chips Neuromórficos de IA para Aplicações de Borda Ultra-Baixo Consumo
- Configuração Gratuita de Simulador e Editor VHDL: Guia para Estudantes
- Mínimos Locais no Treinamento de Redes Neurais: Mito ou Realidade?
- Otimizando Tamanho da Camada Oculta para Aumentar Precisão de Rede Neural
- Escolhendo o Número Certo de Camadas e Nós Ocultos em Rede Neural
- Os 5 Principais Desafios do 5G: Navegando Espectro, Custo, Cobertura, Dispositivos e Segurança
- Implementação e Gestão de Redes de Sensores Sem Fio nas Empresas
- Eleve Sua Expertise com Treinamento Especializado em Bomba de Vácuo BECKER
- Acelere o Treinamento de Soldagem Robótica: Reduza Tempo, Aumente Eficiência