140 likes | 249 Views
Previsão de consumos a curto prazo. Redes Neuronais Cláudio Monteiro. Redes Neuronais O que são?. Redes Neuronais são técnicas computacionais que apresentam um modelo matemático inspirado na estrutura neuronal de organismos inteligentes e que adquirem conhecimento através da experiência.
E N D
Previsão de consumos a curto prazo Redes Neuronais Cláudio Monteiro Distribuição de Energia II 5º ano da LEEC - ramo de Energia (FEUP)
Redes NeuronaisO que são? • Redes Neuronais são técnicas computacionais que apresentam um modelo matemático inspirado na estrutura neuronal de organismos inteligentes e que adquirem conhecimento através da experiência. • Uma rede neural é composta por várias unidades de processamento, cujo funcionamento é bastante simples. • Essas unidades, geralmente são conectadas por canais de comunicação que estão associados a determinado peso. • O comportamento inteligente de uma Rede Neuronal vem das interacções entre as unidades de processamento da rede. • Redes Neuronais são máquinas de aprendizagem, distribuídas, adapativas e geralmente não lineares
Redes NeuronaisPassos da construção de uma RN • Definir o problema, identificando as variáveis que pretendemos prever e as variáveis independentes com significância (uma análise prévia da série temporal pode ser muito útil) • Filtra, separar e processar a informação para treino e e teste da rede • Treinar a rede com um conjunto de treino representativo • Testar a rede com um conjunto de teste diferente do conjunto de treino • Escolha da estrutura e topologia da rede (múltiplas tentativas de treino e teste) • Implementar o sistema de previsão: o pre-processamento das entradas, processamento na RN e apresentação das previsões
Redes NeuronaisEstrutura e funcionamento de um neurónio Funções de activação entradas neurónio saída Função de activação Pesos w
Redes NeuronaisTipos de redes RN • RN Diretas – Feedforward NN • As redes diretas são aquelas cujo grafo não tem ciclos • é comum representar estas redes em camadas e neste caso são chamadas redes de camadas (MLP) Camada de entrada Camadas escondidas Camada De saída
Redes NeuronaisTipos de redes RN • RN Recorrentes - com Realimentação – Feedback NN • os grafo de conectividade contém ciclos • São exemplos as redes de Hopfield e as redes bi-direcionais
Redes NeuronaisRedes para séries temporais • Redes TDNN e TFLN • Problemas que envolvem o tempo (tal como previsão) são chamados dinâmicos • O tempo estabelece uma ordem contínua nos dados de entrada • São usadas topologias que modelizam memória a curto prazo • A saída funciona como um combinador linear de atrasos
Redes NeuronaisTDNN – Time-Domain Neural Network • substitui-se os neurônios de entrada de uma MLP por uma linha de atraso • pode ser treinada com a retro-propagação estática • A memória está nos atrasos da camada de entrada Neurónios
Redes NeuronaisTDNN – Time-Lagged Feedforward Network • Uma TLFN é um arranjo em avanço de neurônios com memória • A memória de curto prazo pode estar distribuídas em qualquer camada • As saídas dos neurónios dão resposta para vários horizontes de previsão
Redes NeuronaisTreino das redes neuronais • Um neurônio é um elemento adaptativo, os pesos são modificáveis dependendo de um algoritmo de treino • Aprendizagem supervisionada – aprende com exemplos de sinais de entrada e saída • Aprendizagem não supervisionada – baseada apenas no sinal de entrada e em esquemas que especifiquem a saída correspondente • Aprendizagem por retropropagação (Backpropagation) – é o método de aprendizagem supervisionada mais utilizada
Redes NeuronaisAprendizagem por retropropagação • a rede aprende um conjunto pré-definido de pares de exemplos de entrada/saída em ciclos de propagação/adaptação • Para um padrão de entrada o estimulo é propagado até à saída. • O padrão de saída é então comparado com a saída desejada e um sinal de erro é calculado para cada elemento de saída. • O sinal de erro é retro-propagado ao longo das várias camadas • Cada elemento da camada intermediária recebe apenas uma porção do sinal de erro total, proporcional apenas à contribuição relativa de cada elemento na formação da saída original • Baseado no sinal de erro recebido, os pesos das conexões são então atualizados para cada neurônio
Redes NeuronaisUsando o Matlab • Definição da estrutura da rede • net = newff(PR,[S1 S2...SNl],{TF1 TF2...TFNl},BTF,BLF,PF) • Newff – cria a estrutura de uma rede neuronal directa com retropropagação (feed-forward backpropagation network) • PR – Matriz (Rx2) de Min e Max, para cada variável de entrada R • Si – Número de neurónios na camada i • TFi – Função de transferência na camada i (tansig, logsig, or purelin) • BTFi – Função de treino da retropropagação na camada i (trainbfg, trainrp, traingd)
Redes NeuronaisUsando o Matlab • Treino da rede • [net,tr,Y,E,Pf,Af] = train(net,P,T,Pi,Ai,VV,TV) • Train – treina a rede • net – é a rede criada com newff • P – é a matriz de entrada (o número de entradas deve estar coerente com o número de neurónios da camada de entrada de newff) • T – é a matriz de saídas (o número de saídas deve estar coerente com o número de neurónios da camada de saída de newff)
Redes NeuronaisUsando o Matlab • Simulação • [Y,Pf,Af,E,perf] = sim(net,P,Pi,Ai,T) • sim – simula a rede neuronal • net – é a rede criada com newff • P – é a matriz de entrada (o número de entradas deve estar coerente com o número de neurónios da camada de entrada de newff) • Y – é a matriz de saídas