A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Redes Neurais. TE073 - Processamento Digital de Sinais II 2 Tópicos Introdução Conceitos Histórico Modelos Neurônios Redes Aprendizado Supervisionado.

Apresentações semelhantes


Apresentação em tema: "Redes Neurais. TE073 - Processamento Digital de Sinais II 2 Tópicos Introdução Conceitos Histórico Modelos Neurônios Redes Aprendizado Supervisionado."— Transcrição da apresentação:

1 Redes Neurais

2 TE073 - Processamento Digital de Sinais II 2 Tópicos Introdução Conceitos Histórico Modelos Neurônios Redes Aprendizado Supervisionado Não Supervisionado Projeto e Aplicações

3 TE073 - Processamento Digital de Sinais II 3 Introdução Sistema Nervoso Humano Sistema Nervoso Central: Cérebro Medula Espinhal Sistema Nervoso Periférico Nervos (motores, sensores)

4 TE073 - Processamento Digital de Sinais II 4 Introdução Cérebro humano: Processador Ideal Capaz de: -Aprender -Generalizar -Memorizar -Criar Maior órgão do Sistema Nervoso humano. Possui de 10 a 100 bilhões de células nervosas

5 TE073 - Processamento Digital de Sinais II 5 Introdução Neurônio Célula básica do SN Interconectadas pelas Sinapses Bainha de Mielina Corpo de Nissl Mitocôndria Célula de Schwann Nódulo de Ranvier Axônio Dendrito Nucléolo Núcleo Botão sináptico Corpo celular Junção corpo axônica Neurônios cerebrais Neurônio Motor

6 TE073 - Processamento Digital de Sinais II 6 Introdução Sinapses Processo eletro-químico Responsáveis pelo envio da informação através da rede neural Recebida pelos dendritos Processada Emitida pelo Axônio Cada neurônio pode produzir até 10.000 sinapses com neurônios adjacentes -Excitatório -Inibitório

7 TE073 - Processamento Digital de Sinais II 7 Introdução

8 TE073 - Processamento Digital de Sinais II 8 Introdução De aorcdo com uma pesqiusa de uma uinrvesriddae ignlsea, não ipomtra em qaul odrem as lrteas de uma plravaa etãso, a úncia csioa iprotmatne é que a piremria e útmlia lrteas etejasm no lgaur crteo. Capacidade de processar informação incompleta ou com ruído

9 TE073 - Processamento Digital de Sinais II 9 Qual é o diferente? Introdução Capacidade de associar, extrapolar, inferir

10 TE073 - Processamento Digital de Sinais II 10 Introdução Preste atenção! Capacidade de resolver problemas de forma aproximada mas eficiente

11 TE073 - Processamento Digital de Sinais II 11 Introdução Uma área de pesquisa que investiga formas de habilitar o computador a realizar tarefas nas quais, até o momento, o ser humano tem um melhor desempenho. Elaine Rich Inteligência Artificial:

12 TE073 - Processamento Digital de Sinais II 12 Introdução Redes Neurais Lógica Fuzzy Computação Evolucionária Agentes Inteligentes Linguagem Natural Robótica Raciocínio Baseado em Casos Raciocínio Baseado em Regras Outros Inteligência Artificial - Sub áreas

13 TE073 - Processamento Digital de Sinais II 13 Introdução Redes Neurais Artificiais (RNA ou ANN) Sinônimos: Modelos Conexionistas, Computação Neural -Início: Tentativa de simular o comportamento das redes neurais naturais. Sistemas computacionais formados por elementos processadores simples (Neurônios) altamente interconectados (Sinapses). Novo modelo computacional do tradicional Eficiente onde os modelos atuais são inadequados

14 TE073 - Processamento Digital de Sinais II 14 Introdução Semelhante ao cérebro: O conhecimento é adquirido pela rede através do processo de aprendizado As conexões entre os neurônios (sinapses) são usadas para armazenar o conhecimento

15 TE073 - Processamento Digital de Sinais II 15 Introdução Características das RNAs Capacidade de aprender através de exemplos Adaptabilidade Capacidade de organização Capacidade de generalização Tolerância a falhas Robustez ao ruído Dada uma estrutura e um algoritmo de treino adequados, RNAs podem resolver qualquer problema.

16 TE073 - Processamento Digital de Sinais II 16 1943: Warren S. McCulloch (1898-1968 ) e Walter H. Pitts (1923-1960) Primeiro modelo para um neurônio Não se preocuparam com o aprendizado Histórico: Anos 40 – O começo 1949: Donald Hebb (1904-1985) Primeiro modelo estudado para o aprendizado de um neurônio biológico Aprendizado por reforço

17 TE073 - Processamento Digital de Sinais II 17 Histórico: Anos 50-60 - Euforia 1956: Von Neumann (1903-1957) ENIAC(1946) Interesse em modelagem do cérebro 1957-1962: Frank Rosenblatt Implementa primeira rede perceptron Aprendizado supervisionado 1960: Bernard Widrow (Stanford) e Marcian Hoff (1937~) Regra Delta ou LMS: Adaptação dos pesos Redes com saídas lineares: ADALINE e MADALINE

18 TE073 - Processamento Digital de Sinais II 18 Histórico: Ano 1969 - Desilusão 1969: Marvin Minsky (1927~ MIT) e Seymour Papert (1928~ MIT) Publicam livro: Perceptrons Analisam o Perceptron e mostram suas limitações- Problemas linearmente separáveis Não poderiam aprender a resolver problemas simples como o OU-exclusivo Causou grande repercussão

19 TE073 - Processamento Digital de Sinais II 19 Histórico: Anos 70 - Hibernação 1971: Igor Aleksander (Imperial College) propõe redes Booleanas 1972: Teuvo Kohonen (~ Helsinki) RNA associativas 1975: Stephen Grossberg Teoria da Ressonância Adaptiva (ART)

20 TE073 - Processamento Digital de Sinais II 20 Histórico: Anos 80 - Renascimento 1982: John J. Hopfield (1933~ Princeton) Redes neurais como sistemas dinâmicos 1983: Kunihiko Fukushima ( ) Neocognitron 1984: T. Kohonen SOM (Self-Organization Maps)

21 TE073 - Processamento Digital de Sinais II 21 Histórico: Anos 80 - Renascimento 1986: Geofrey Hinton, David Rumelhart e Ronald Willliams Apresentam o Algoritmo de Backpropagation 1974: Paul J. Werbos (National Science Foundation ) backpropagation through time Resolve o problema do treinamento de redes multi-camadas.

22 TE073 - Processamento Digital de Sinais II 22 Histórico: Anos 90 - Consolidação Muita (muita mesmo!) pesquisa sobre redes neurais. Novas aplicações surgem a cada minuto 2000: Marcus V. Lamar (1970~ UFPR) T-CombNET 1992: Akira Iwata (1954~ NITECH) CombNET-II

23 TE073 - Processamento Digital de Sinais II 23 Modelos - Neurônio Neurônio Artificial entrada 1 entrada 2 entrada 3 entrada m Saída Neurônio Representação:

24 TE073 - Processamento Digital de Sinais II 24 Modelos - Neurônio Modelo matemático: PERCEPTRON (·) x1x1 x2x2 xmxm bkbk...... w k1 w k2 w km...... Bias Sinais de Entrada ukuk Pesos Sinápticos Função de Ativação ykyk Saída Pode ser pensado como entrada 1 e w k0 =b k

25 TE073 - Processamento Digital de Sinais II 25 Modelos - Neurônio Funções de Ativação Limitar a saída do neurônio [0,1] ou [-1,1] Obs.: Função de Saída

26 TE073 - Processamento Digital de Sinais II 26 Modelos – Neurônio Outros Modelos: x1x1 x2x2 xmxm...... w k1 w k2 w km...... Entrada Pesos Sinápticos ykyk Saída Usado em LVQ Usado em RBFN Vários outros:Fukushima, Grossberg, GNM

27 TE073 - Processamento Digital de Sinais II 27 Modelos – Neurônios MLP: Aproximadores globais RBFN: Aproximadores Locais Consequências: MLP x RBFN

28 TE073 - Processamento Digital de Sinais II 28 Modelos - Redes Classificação Camadas: Camada Simples Ex.: ADALINE, Perceptron, SOM, LVQ, Hopfield y1y1 y2y2 ykyk Entradas Saídas x1x1 x2x2 xnxn............ y3y3 y Entradas Saída x1x1 x2x2 xnxn...... ADALINE Perceptron Filtro Digital

29 TE073 - Processamento Digital de Sinais II 29 Modelos - Redes Multi-Camadas Ex.:MLP, RBFN, TDNN y1y1 y2y2 ykyk Camada de Entrada Camada Escondida Camada de Saída x1x1 x2x2 xnxn z1z1 z2z2 zpzp z3z3..................

30 TE073 - Processamento Digital de Sinais II 30 Modelos - Redes Mistura de Experts Ex.: Committee Machines, CombNET-II, T-CombNET CombNET-II

31 TE073 - Processamento Digital de Sinais II 31 Modelos - Redes Topologia: Feed-Foward Ex.: MLP, Perceptron,TDNN y1y1 y2y2 ykyk x1x1 x2x2 xnxn z1z1 z2z2 zpzp z3z3.................. Fluxo do sinal Multi-Layer Perceptron

32 TE073 - Processamento Digital de Sinais II 32 Modelos - Redes

33 TE073 - Processamento Digital de Sinais II 33 Modelos - Redes Recorrentes / Parcialmente Recorrentes Ex.: Elman, Jordan, Hopfield Camada de entrada Camada Escondida Camada de Saída Camada de Contexto... y1y1 y2y2 ykyk x 1 (t) x 2 (t) x n (t) z -1 Camada de Entrada Camada Escondida Camada de saída Camada de Estado... y1y1 y2y2 ykyk x 1 (t) x 2 (t) x n (t) Elman Jordan

34 TE073 - Processamento Digital de Sinais II 34 Modelos - Redes... y1y1 y2y2 ykyk x 1 (t) x 2 (t) x n (t) Hopfield Estável??? Minimiza função energia de Liapunov

35 TE073 - Processamento Digital de Sinais II 35 Modelos - Redes X 0 (t) Espaço: S 0 X 1 (t) Espaço: S 1 X 0 (t) Espaço: S 0 X(t) Espaço: S Entrada Normalização Temporal Buffer SM SB... Saída Rede Tronco Redes Galhos Recorrentes... Decisão Final Max T-CombNET

36 TE073 - Processamento Digital de Sinais II 36 Aprendizado Aprendizado por correção de erro Aprendizado competitivo Aprendizado Hebbiano Aprendizado de Boltzmann Algoritmos de Aprendizado Aprendizado supervisionado Aprendizado não supervisionado Paradigmas de Aprendizado Processos de Aprendizado Aprendizado por reforço

37 TE073 - Processamento Digital de Sinais II 37 Processo de Aprendizagem Tarefas Associação de Padrões Memória Associativa Autoassociação Ex.:Hoppfield storage phase recall phase Heteroassociação Capacidade de Armazenamento

38 TE073 - Processamento Digital de Sinais II 38 Processo de Aprendizagem Reconhecimento de Padrões Classificação em classes Extração/Seleção de Características Espaço de Observação m-Dimensional Espaço de Características q-Dimensional Espaço de Decisão r-Dimensional (n. classes) Obs.: m>q : Classical Methods m<q : Support Vector Machine

39 TE073 - Processamento Digital de Sinais II 39 Processo de Aprendizagem Aproximação de Funções Aproximador Universal Teorema de Kolmogorov Identificação de Sistemas Sistema inverso Sistema Desconhecido + Rede Neural - f( ) + Rede Neural -

40 TE073 - Processamento Digital de Sinais II 40 Processo de Aprendizagem Controle Filtragem Filtragem (ex. extração de bordas – Hoppfield) Predição (Séries Temporais) Blind Signal Separation Controlador Neural Planta + Sinal de Referência Sinal de erro Entrada da Planta Saída da Planta - Rede Neural + -...

41 TE073 - Processamento Digital de Sinais II 41 Neurônio McCulloch-Pitts Modelo matemático: bkbk Bias Pode ser pensado como entrada x 0 =1 e w k0 =b k (·) x1x1 x2x2 xmxm...... w k1 w k2 w km...... Vetor de Entrada ukuk Pesos Sinápticos Função de Ativação ykyk Saída potencial interno

42 TE073 - Processamento Digital de Sinais II 42 Perceptron: Separabilidade Linear s x y 0.5 -0.2 1 s x y 0.5 -0.9 1 x y 1 1 Porta OR x y 1 1 Porta AND

43 TE073 - Processamento Digital de Sinais II 43 Passo 0: Inicializar pesos e Bias em zero Passo 1: Para cada par s:t Passo 2: setar as entradas Passo 3: setar a saída Passo 4: Ajustar os pesos Ajustar o bias Regra de Hebb – aprendizado por reforço Algoritmo de Treino – 1 neurônio y x1x1 x2x2 xnxn...... Obs: Se Regra de aprendizado mais simples e menos poderosa

44 TE073 - Processamento Digital de Sinais II 44 Passo 0: Inicializar pesos e Bias (zero) Setar learning rate Passo 1: enquanto a condição de parada for verdadeira Passo 2: Para cada par s:t Passo 3: setar as entradas Passo 4: Calcular a saída Passo 5:Atualizar os pesos e bias se ocorrer erro Passo 6: Teste de parada: houveram alteração nos pesos no passo 2? Perceptron Algoritmo de Treino - 1 neurônio y x1x1 x2x2 xnxn......

45 TE073 - Processamento Digital de Sinais II 45 Perceptron Observações: Os pesos serão atualizados se: Acontecer erro de classificação Target não for zero para target binários [0,1] : usar [-1,1] P/ Função de Ativação: Threshold indica uma faixa de incerteza na classificação Teorema da convergência do Perceptron Se existirem os pesos (linearmente separável) que resolvem o problema (sem erro no conjunto de treino), os pesos serão encontrados pelo algoritmo em um número finito de iterações. 1 - ukuk y

46 TE073 - Processamento Digital de Sinais II 46 A Rede Perceptron de Rosemblat Desenvolvido por Rosemblat, 1958 Rede mais simples para classificação de padrões linearmente separáveis Utiliza modelo de McCulloch-Pitts de neurônio. y1y1 y2y2 ymym x1x1 x2x2 xnxn............ y3y3 1 - ukuk y k = (u k ) Função de Ativação com =0 ou não

47 TE073 - Processamento Digital de Sinais II 47 Passo 0: Inicializar pesos e Bias (zero ou pequenos) Setar learning rate Passo 1: enquanto a condição de parada for verdadeira Passo 2: Para cada par s:t Passo 3: setar as entradas Passo 4: Calcular as saídas Passo 5:Atualizar os pesos e bias Passo 6: Teste de parada: houve alteração nos pesos no passo 2? A Rede Perceptron de Rosemblat Algoritmo de Treino – m saídas y1y1 y2y2 ymym x1x1 x2x2 xnxn............ y3y3

48 TE073 - Processamento Digital de Sinais II 48 Adaline – Adaptive Linear Neuron Filtragem Adaptativa – Identificação de Sistemas Sistema Desconhecido + Rede Neural Sistemas SISO/MISO/MIMO (Single/Multiple Input Single/Multiple Output) - Função de Ativação Linear i=0 : bias Minimizar uma Função Custo (diferenciável): Técnicas de Otimização: Gradiente descendente, Newton, Gauss-Newton, Wiener,LLS, LMS,etc.

49 TE073 - Processamento Digital de Sinais II 49 Adaline – Adaptive Linear Neuron LMS (Least Mean Square) Como: Logo: Assim: e Direção do Gradiente Descendente da função erro quadrático Learning Rate/Taxa de Aprendizado Função Custo:

50 TE073 - Processamento Digital de Sinais II 50 Adaline – Adaptive Linear Neuron Método baseado em Gradiente Descendente Busca ponto de Mínimo (Local ou Global)

51 TE073 - Processamento Digital de Sinais II 51 Adaline – Adaptive Linear Neuron Treinamento: Regra Delta ou LMS y x1x1 xixi w1w1 wiwi + X d -...... w i

52 TE073 - Processamento Digital de Sinais II 52 Adaline – Adaptive Linear Neuron Treinamento Passo 0: Inicializar pesos e Bias (randomicos pequenos) Setar learning rate (valor pequemo) Passo 1: enquanto a condição de parada for verdadeira Passo 2: Para cada par s:d bipolar Passo 3: setar as entradas Passo 4: Calcular a saída Passo 5:Atualizar os pesos e bias Passo 6: Teste de parada: A maior alteração nos pesos > tolerância? y x1x1 x2x2 xnxn......

53 TE073 - Processamento Digital de Sinais II 53 Adaline – Adaptive Linear Neuron Observações muito pequeno: Baixa velocidade de Convergência muito grande: Pode não convergir Hencht-Nielsen (1990) demonstraram que o limite superior de Widrow desenvolveu treinamento para MADALINE (MRII) Estamos usando Função de Ativação Linear É usual usar pequeno 0.1

54 TE073 - Processamento Digital de Sinais II 54 A Rede Perceptron Utiliza modelo de McCulloch-Pitts de neurônio Função de Ativação Não-Linear, porém Continuamente Diferenciável y1y1 y2y2 ymym x1x1 x2x2 xnxn............ y3y3 Para um neurônio qualquer j temos:

55 TE073 - Processamento Digital de Sinais II 55 A Rede Perceptron Para esta rede temos: onde: pode ser incorporado a w, i=0 Nosso objetivo é minimizar a Energia Instantânea do Erro: Assim:Como: Temos: Logo:

56 TE073 - Processamento Digital de Sinais II 56 A Rede Perceptron Direção do Gradiente Descendente da função erro quadrático Definindo o Erro Local (Gradiente Local) Podemos escrever:

57 TE073 - Processamento Digital de Sinais II 57 A Rede Perceptron Observações: Função de Ativação Se Função Sigmóide Se Função Tanh

58 TE073 - Processamento Digital de Sinais II 58 A Rede Perceptron Deste modo podemos simplificar para Função de Ativação Sigmoidal Função de Ativação Tanh

59 TE073 - Processamento Digital de Sinais II 59 Passo 0: Inicializar pesos e Bias (randomicos pequenos) Setar learning rate Passo 1: enquanto a condição de parada for verdadeira Passo 2: Para cada par s:d Passo 3: setar as entradas Passo 4: Calcular a saída Passo 5:Ajustar os pesos e bias Passo 6: Teste de parada A Rede Perceptron Algoritmo de Treino – m saídas y1y1 y2y2 ymym x1x1 x2x2 xnxn............ y3y3

60 TE073 - Processamento Digital de Sinais II 60 A Rede Multi-Layer Perceptron (MLP) Rede mais utilizada atualmente Utiliza modelo de McCulloch-Pitts de neurônio, Função de Ativação Não-Linear Problema: Não se conhece o erro das camadas intermediárias, para ajuste dos pesos. Solução: Error BackPropagation (Regra Delta Generalizada) o 1 [3] =y 1 o 2 [3] =y 2 o n3 [3] =y n3 x1x1 x2x2 x n0 o 1 [2] o n2 [2].................. o 1 [1] o n1 [1]......

61 TE073 - Processamento Digital de Sinais II 61 A Rede Multi-Layer Perceptron (MLP) Procedimento análogo ao anterior. De onde pode-se escrever para a camada de saída: Ainda podemos escrever para a segunda camada escondida:

62 TE073 - Processamento Digital de Sinais II 62 A Rede Multi-Layer Perceptron (MLP) Ainda podemos escrever para a segunda camada escondida: (cont) Como calcular o Gradiente Local (Erro local) para esta camada? Podemos escrever usando a regra da cadeia: Sabendo que: Temos:

63 TE073 - Processamento Digital de Sinais II 63 A Rede Multi-Layer Perceptron (MLP) Temos: (cont) Podemos estimar a derivada na eq. anterior, como:

64 TE073 - Processamento Digital de Sinais II 64 A Rede Multi-Layer Perceptron (MLP) Então o Gradiente Local da segunda camada por ser avaliado por: Analogamente, podemos escrever para a primeira camada: onde: Logo:

65 TE073 - Processamento Digital de Sinais II 65 A Rede Multi-Layer Perceptron (MLP)

66 TE073 - Processamento Digital de Sinais II 66 Passo 0: Inicializar pesos e Bias (randomicos pequenos) Setar learning rate Passo 1: enquanto a condição de parada for falsa Passo 2: Para cada par s:d FeedForward Passo 3: setar as entradas Passo 4: Calcular as saídas de todos os neurônios BackPropagation A Rede Multi-Layer Perceptron (MLP) BackPropagation (1 camada escondida)

67 TE073 - Processamento Digital de Sinais II 67 BackPropagation Passo 5: Calcular os Gradientes Locais da camada de saída Calcular o fator de correção Passo 6: Calcular os Gradientes Locais da camada escondida Calcular o fator de correção Passo7: Atualizar os pesos Passo 8: Condição de Parada A Rede Multi-Layer Perceptron (MLP) BackPropagation (1 camada escondida) (cont)

68 TE073 - Processamento Digital de Sinais II 68 A Rede Multi-Layer Perceptron (MLP) Variações do Backpropagation Backpropagation com Momentum Treinamento em Lote (Batch): Os pesos são atualizados após a apresentação de todos os vetores de treino à rede Taxa de aprendizado adaptativa Melhora a velocidade de convergência

69 TE073 - Processamento Digital de Sinais II 69 A Rede Multi-Layer Perceptron (MLP) Considerações Práticas: Inicialização Randômica dos pesos determina se a rede converge para um mínimo local ou global. Geralmente Ex.: inicialização de Nguyen-Widrow Critério de Parada Número de épocas > Ne Erro médio quadrático do Treino < Th Taxa de decrescimento do EMQ <Th (problema: Platô) Mínimo EMQ dos dados de validação (early stopping) Quantos pares(P) s:d do banco de treino? Baum-Haussler: W/P=e onde 1-(e/2) % vetores corretamente classificados no treino e 1-e % de teste W o número de pesos da rede EMQ T Validação Treino

70 TE073 - Processamento Digital de Sinais II 70 A Rede Multi-Layer Perceptron (MLP) Considerações Práticas: Quantas camadas Escondidas? Demonstra-se que 1 camada escondida é suficiente para resolver qualquer problema Porém o treinamento pode ser facilitado com 2 camadas em problemas muito complexos Dificilmente usa-se 3 ou mais camadas escondidas Quantos neurônios na camada escondida? Critério de Baum-Haussler baseado no N. vetores de treino Se conjunto de treino pequeno e rede grande: Alta probabilidade da rede se especializar muito rapidamente Se conjunto de treino grande e rede pequena: Pode acontecer da rede não ser capaz de modelar a complexidade do problema Método de tentativa e erro Média Geométrica:

71 TE073 - Processamento Digital de Sinais II 71 A Rede Multi-Layer Perceptron (MLP) Capacidade de classificação x y Classe 1 Classe 2

72 Learning Vector Quantization Self-Organizing Maps

73 TE073 - Processamento Digital de Sinais II 73 LVQ Quantização Vetorial Aprendida (LVQ) Treinamento supervisionado Neurônio com função de ativação baseado em distância (L-0,L-1,L-2,L-, Mahalanobis, etc) 1 única camada Winner-takes-all : Vencedor leva tudo Idéia: K-NN -> Alta complexidade computacional Modelar a superfície de decisão por poucos vetores

74 TE073 - Processamento Digital de Sinais II 74 LVQ xkxk m ki yiyi Classe dada pelo neurônio vencedor m c é o neuronio c mais próximo do vetor x vencedor Problema: Qual o conjunto de vetores m i que minimizam os erros de classificação

75 TE073 - Processamento Digital de Sinais II 75 LVQ Diversos algoritmos de treinamento: LVQ1 Seja x(t) a sequência de vetores de entrada e m i (t) a sequencia dos vetores de pesos Kohonen provou em 1990 que o algoritmo converge para os valores assintoticamente ótimos de m i : Se x e m c pertencem a mesma classe Se x pertencer a classe diferente de m c

76 TE073 - Processamento Digital de Sinais II 76 LVQ LVQ2.1 Igual ao LVQ1 porém se escolhe: vetor m j mais próximo de x que pertence a mesma classe E Vetor m i mais próximo de x que não pertence a mesma classe x deve pertencer à Janela definida por:

77 TE073 - Processamento Digital de Sinais II 77 LVQ Outras variações LVQ3 Escolhe-se os 2 vectores mais próximos a x OLVQ1 Taxa de aprendizagem depende de m i s(t)=1 mesma classe s(t)=-1 classes diferentes Convergência mais rápida

78 TE073 - Processamento Digital de Sinais II 78 LVQ Superfície de decisão segmentalmente linear (distância Euclidiana)

79 TE073 - Processamento Digital de Sinais II 79 Competitive Learning Divide o espaço de entrada em N agrupamentos com base em alguma métrica de distância entre os elementos Os vetores de entrada são classificados em N classes não previamente definidas Ver Ex. No MATLAB

80 TE073 - Processamento Digital de Sinais II 80 LVQ CombNET-II: Self-Growing Algorithm Não precisa a priori definir o número de neurônios Potencial interno de divisão (número máximo de classes/vetores) Maior distância entre os vetores x e o vetor m i Pré-divisão do espaço de entrada Problema grande -> vários problemas menores

81 TE073 - Processamento Digital de Sinais II 81 X Espaço: S SM SB... Sinal Classificado Vetor Entrada Rede Tronco Redes Galhos... Max X Espaço: S -Rede Tronco: LVQ - Self Growing Algorithm -Redes Galhos: 3-Layer MLP - BackPropagation Procedimento De Decisão Final Projetada para lidar com problemas com grande número de classes CombNET-II

82 TE073 - Processamento Digital de Sinais II 82 Self-Organizing Maps - SOM Mapeamento: Visualização da relação de proximidade existente em dados de alta dimensionalidade com base em alguma estrutura 2-D

83 Redes Neurais Temporais

84 TE073 - Processamento Digital de Sinais II 84 Redes Neurais Temporais Processamento de sinais variantes no tempo Unidimensional: Série Temporal Exemplos: http://www-personal.buseco.monash.edu.au/~hyndman/TSDL/ Multidimensional: Conjunto de N Séries Temporais Vetor de dimensão N variante no tempo

85 TE073 - Processamento Digital de Sinais II 85 Séries Temporais Exemplos: Série bem comportada e facilmente modelável, previsível.

86 TE073 - Processamento Digital de Sinais II 86 Séries Temporais Sazonalidade: Anual, Semestral, Trimestral, Mensal, Semanal, Diária, Horária

87 TE073 - Processamento Digital de Sinais II 87 Séries Temporais Cíclica tendenciosa Decomposição em Cíclica + Tendencia: modelo ARIMA

88 TE073 - Processamento Digital de Sinais II 88 Séries Temporais Série de difícil previsão

89 TE073 - Processamento Digital de Sinais II 89 Séries Temporais Área de grande interesse financeiro

90 TE073 - Processamento Digital de Sinais II 90 Séries Temporais Objetivo: Dados os valores presente e passados de uma Série prever valores no futuro. Ex.: Previsão de demanda de Energia Elétrica Curtíssimo Prazo: minutos Curto Prazo: 24 horas Médio Prazo: Meses Longo Prazo: Anos

91 TE073 - Processamento Digital de Sinais II 91 Sinais dependentes do tempo Ex.: Voz : Sinal 1-D f(t) Sinal 2-D f(x,t) Vídeo: Sinal 3-D f(x,y,t) Sinal 4-D f(x,y,z,t) Vetores dependentes do tempo: 1-D v(x(t)) =v(t) 2-D v(x(t),y(t)) 3-D v(x(t),y(t),z(t)) N-D v(x 1 (t), x 2 (t), x 3 (t),..., x N (t))

92 TE073 - Processamento Digital de Sinais II 92 Redes Neurais Temporais MLP com Janela Temporal Input Layer Hidden Layer Output Layer... y1y1 y2y2 ykyk x 1 (t) x 2 (t) x n (t) x n (t-T)... time window... x 1 (t-T) x 2 (t-T)... x 1 (t-1) x 2 (t-1) x n (t-1)

93 TE073 - Processamento Digital de Sinais II 93 Redes Neurais Temporais TDNN : Time Delay Neural Network

94 TE073 - Processamento Digital de Sinais II 94

95 TE073 - Processamento Digital de Sinais II 95

96 TE073 - Processamento Digital de Sinais II 96

97 TE073 - Processamento Digital de Sinais II 97

98 TE073 - Processamento Digital de Sinais II 98

99 TE073 - Processamento Digital de Sinais II 99

100 TE073 - Processamento Digital de Sinais II 100

101 TE073 - Processamento Digital de Sinais II 101

102 TE073 - Processamento Digital de Sinais II 102

103 TE073 - Processamento Digital de Sinais II 103

104 TE073 - Processamento Digital de Sinais II 104 Redes Neurais Temporais Redes Localmente Recorrentes Neurônio recorrente G k1 (z) (·) x1x1 x2x2 xmxm bkbk............ Bias Input Signals ukuk Local Synapse Feedback Activation function ykyk Output G k2 (z) G km (z) H lo (z) Local Activation Feedback Local Output Feedback H la (z)

105 TE073 - Processamento Digital de Sinais II 105 Redes Neurais Temporais Redes Totalmente Recorrentes Input Layer Hidden Layer Output Layer... y1y1 y2y2 ykyk x 1 (t) x 2 (t) x n (t) feedforward links cross-talk links recurrent links Rede de Hopfield

106 TE073 - Processamento Digital de Sinais II 106 Redes Neurais Temporais Redes Parcialmente Recorrentes Input Layer Hidden Layer Output Layer State Layer... y1y1 y2y2 ykyk x 1 (t) x 2 (t) x n (t) Rede de Jordan

107 TE073 - Processamento Digital de Sinais II 107 Redes Neurais Temporais Redes Parcialmente Recorrentes Input Layer Hidden Layer Output Layer Context Layer... y1y1 y2y2 ykyk x 1 (t) x 2 (t) x n (t) z -1 Rede de Elman Capaz de simular qualquer máquina de estados finita (Kremer 1995) Facilmente treinável - Backpropagation

108 TE073 - Processamento Digital de Sinais II 108 Redes Neurais Temporais T-CombNET (Lamar 2001) X 0 (t) Space: S 0 X 1 (t) Space: S 1 X 0 (t) Space: S 0 X(t) Space: S Input Vector Time Normalization Buffer SM SB... Classified signal Stem Network Branch Recurrent Networks... Final decision Procedure Max

109 TE073 - Processamento Digital de Sinais II 109 Outras Redes Neurais Radial Basis Function Network (RBFN) Adaptive Resonant Theory (ART) Counterpropagation Boltzmann Machine Probabilistic Neural Nets Neocognitron Committee Machines Mixture of Experts Adaptive Neural Nets (pruning) Support Vector Machines...

110 TE073 - Processamento Digital de Sinais II 110 Conclusões Potencialidades Habilidade de tratar sistemas complexos Representação de conhecimento quantitativo Processamento Paralelo Aprendizado Adaptabilidade Generalização Limitações Perda de generalização : Over-training Maldição da dimensionalidade Alta complexidade computacional do treino Mínimos locais

111 TE073 - Processamento Digital de Sinais II 111 Aplicações Congresso Brasileiro de Redes Neurais 2003 -Controle de sistemas de energia-Detecção de doenças cardíacas -Compressão de Imagem-Análise de EEG -Predição de distúrbios financeiros-Detecção de falhas em auto-fornos -Análise de dados sísmicos-Diagnóstico de câncer de cabeça -Controle industrial-Espaços Psicológicos -Farmacologia -Análise de risco de infarto do miocardio -Descarga em equipamentos de A.T.-Sistemas tutoriais -Análise de tráfego de redes Ethernet-Análise de QoS em áudio na internet -Classificação de proteínas-Previsão de vazão -Processo de hidrorrefino-Previsão de carga elétrica -Dinâmica caótica-Visão computacional -Predição de tuberculose pulmonar-Reconhecimento de peças -Classificação de textos-Reconhecimento de linfócitos -Classificação de tecidos arteriais-Tomografia -Projeto de quantizadores vetoriais-Predição da Percentagem de Carne na Carcaça Suína -Controle de robos móveis-Análise de concessão de crédito -Risco de Leucemia Infantil -Implantação e avaliação de provedores de internet - Sistema Sonar- Estimação do tamanho de software -previsão de demanda de água -Reconhecimento de placas de veículos

112 TE073 - Processamento Digital de Sinais II 112 Bibliografia Recursos Programas gratuitos SNNS http://www.informatik.uni-stuttgart.de/ipvr/bv/projekte/snns/snns.html Tlearn http://crl.ucsd.edu/innate/tlearn.html Neural Java http://diwww.epfl.ch/mantra/tutorial/english/http://diwww.epfl.ch/mantra/tutorial/english/ LVQ_PAK e SOM_PAK http://www.cis.hut.fi/research/software Programas Comerciais EasyNN http://www.easynn.com/ aiNet V1.25 http://www.ainet-sp.si/NN/En/nn.htm Qnet 97 http://www.qnet97.com/ NevProp S http://www.scs.unr.edu/nevprop/ NeuronSolutions http://www.neurosolutions.com/ Cortex NN http://cortex.snowseed.com/ MatLab - Neural Network Toolbox http://www.mathworks.com/products/neuralnet/ Banco de Dados http://www.ics.uci.edu/~mlearn/MLSummary.html http://www.cs.utoronto.ca/~delve/data/summaryTable.html http://www-personal.buseco.monash.edu.au/~hyndman/TSDL/ NewsGroup: comp.ai.neural-nets Orkut: Neural Networks http://www.orkut.com/Community.aspx?cmm=23677 Redes Neurais : http://www.orkut.com/Community.aspx?cmm=31700 http://www.orkut.com/Community.aspx?cmm=23677

113 TE073 - Processamento Digital de Sinais II 113 Bibliografia Livros Textos S. Haykin, Neural Networks – A Comprehensive Foundation L. Fausett, Fundamentals of Neural Networks A. Cichocki e R. Unbehau, Neural Networks for Optimization and Signal Processing P. D. Wasseman, Neural Computing – Theory and Practice T. Masters, Practical Neural Network Recipes in C++ M.V. Lamar, Hand Gesture Recognition using T-CombNET – A Neural Network dedicated to Temporal Information Processing

114 TE073 - Processamento Digital de Sinais II 114 Bibliografia Revistas IEEE Transactions on Neural Networks Conferências ICANN – Int. Conf. on Artificial NN IJCNN – Int. Joint Conference on NN ICONIP – Int. Conf. on Neural Information Processing CBRN – Congresso Brasileiro de Redes Neurais SBRN – Simpósio Brasileiro de Redes Neurais


Carregar ppt "Redes Neurais. TE073 - Processamento Digital de Sinais II 2 Tópicos Introdução Conceitos Histórico Modelos Neurônios Redes Aprendizado Supervisionado."

Apresentações semelhantes


Anúncios Google