Se ha denunciado esta presentación.
Utilizamos tu perfil de LinkedIn y tus datos de actividad para personalizar los anuncios y mostrarte publicidad más relevante. Puedes cambiar tus preferencias de publicidad en cualquier momento.

Lesson 6: Neural Networks

2.519 visualizaciones

Publicado el

Publicado en: Educación, Tecnología
  • DOWNLOAD THIS BOOKS INTO AVAILABLE FORMAT (Unlimited) ......................................................................................................................... ......................................................................................................................... Download Full PDF EBOOK here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... Download Full EPUB Ebook here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... ACCESS WEBSITE for All Ebooks ......................................................................................................................... Download Full PDF EBOOK here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... Download EPUB Ebook here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... Download doc Ebook here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... ......................................................................................................................... ......................................................................................................................... .............. Browse by Genre Available eBooks ......................................................................................................................... Art, Biography, Business, Chick Lit, Children's, Christian, Classics, Comics, Contemporary, Cookbooks, Crime, Ebooks, Fantasy, Fiction, Graphic Novels, Historical Fiction, History, Horror, Humor And Comedy, Manga, Memoir, Music, Mystery, Non Fiction, Paranormal, Philosophy, Poetry, Psychology, Religion, Romance, Science, Science Fiction, Self Help, Suspense, Spirituality, Sports, Thriller, Travel, Young Adult,
       Responder 
    ¿Estás seguro?    No
    Tu mensaje aparecerá aquí

Lesson 6: Neural Networks

  1. 1. Chapter 6<br />Redes Neuronais(Neural Networks)<br />
  2. 2. Aprendizagem Computacional Gladys Castillo, UA<br />Classificadores Lineares<br />Se os exemplos do conjunto de treino são linearmente separáveis podemos aprender uma função discriminante linear e logo usa-la para classificar os futuros exemplos<br />x1, x2 - 2 variáveis preditorasC = {class1, class2} – 2 classesf:x1x2 C<br />Para um novo exemplo x:<br />se g(x) > 0  f(x) = class1se g(x) < 0  f(x) = class2<br />Figura extraídas dos acetatos de Luis Oliveira, Classificadores Lineares<br />
  3. 3. Aprendizagem Computacional Gladys Castillo, UA<br />Separabilidade entre Classes<br />Um conjunto de treino é chamado linearmente separável se existe pelo menos um hiperplano capaz de separar os exemplos de diferentes classes<br />linearmentenão separável<br />linearmenteseparável<br />Figura extraídas dos acetatos de Aluizio F. R. Araújo, Máquinas de Vectores Suporte<br />
  4. 4. IRIS Data (Fisher, 1936)<br />Problema clásico de classificação das flores iris.<br />3 classes<br />setosa<br />versicolor<br />virginica<br />4 atributos<br />comprimento da pétala<br />largura da pétala<br />comprimento da sépala<br />largura da sépala<br />O conjunto de dados contêm 50 exemplos por cada classe<br />On-line no UCI Machine Learning Repository http://www.ics.uci.edu/~mlearn/MLRepository.html<br />Aprendizagem Computacional Gladys Castillo, UA<br />
  5. 5. Aprendizagem Computacional Gladys Castillo, UA<br />Classificadores Lineares e Não LinearesIris Data (Fisher, 1936)<br />Figure from Norbert Jankowski and Krzysztof Grabczewski<br />x setosaO virginica+ versicolor <br />Árvore de Decisão<br />Discriminante Linear<br />setosa<br />Gaussian mixture<br />Kernel method (SVM)<br />
  6. 6. Aprendizagem Computacional Gladys Castillo, UA<br />x3<br />x2<br />x1<br />Fronteira de Decisão Linear<br />A fronteira de decisão linear está definida pelos hiperplanos que separam as classes<br />A fronteira de decisão linear está definida pelos hiperplanos que separam as classes<br />x2<br />x1<br />Figuras extraídas de “Introduction to Machine Learning”, Isabelle Guyon<br />
  7. 7. Aprendizagem Computacional , Gladys Castillo<br />x2<br />x3<br />x2<br />x1<br />x1<br />Fronteiras de Decisão Não Linear<br />Funções não lineares separam as classes<br />Figuras extraídas de “Introduction to Machine Learning”, Isabelle Guyon<br />
  8. 8. Aprendizagem Computacional Gladys Castillo, UA<br />x2<br />x1<br />Fit / Robustness Tradeoff<br />O que será melhor: a fronteira linear ou não linear?<br />x2<br />x1<br />Figuras extraídas de “Introduction to Machine Learning”, Isabelle Guyon<br />15<br />
  9. 9. Aprendizagem Computacional Gladys Castillo, UA<br />Classificadores Lineares<br />fronteira de decisão linear<br />Hiperplano de Classificação: <br />g(x) = w  x + b = 0<br />onde:<br /><ul><li>w - vector de pesos  determina a orientação do hiperplano
  10. 10. b – desvio (bias)</li></ul>Classificador Linear Binário :<br />Tarefa de Aprendizagem (ideia básica)<br />A partir do conjunto de treino com exemplos rotulados estimar os parâmetros w e b por forma a obter a melhor fronteira de decisão segundo um critério que define o que significa “melhor”<br />Figura extraídas dos acetatos de Luis Oliveira, Classificadores Lineares<br />
  11. 11. Aprendizagem Computacional Gladys Castillo, UA<br />Classificadores LinearesSoluções possíveis<br />Podem existir vários hiperplanos separando as classes correctamente, contudo existe pelo menos um melhor que os demais. Qual é o melhor? Cómo definir melhor? O critério para definir o melhor (óptimo) varia segundo o modelo de classificação: Exemplos de classificadores lineares:<br /><ul><li> Discriminante linear (Fisher)
  12. 12. Perceptron (redes neuronais)
  13. 13. Classificador de Margem Maximal (máquinas de suporte vectorial)</li></li></ul><li>Aprendizagem Computacional Gladys Castillo, UA<br />Figuraextraída dos acetatos de Introduction to Data Mining  P. Tan, M.Steinbach, V.Kumar<br />Classificadores Lineares<br />Este exemplo mostra um classificador linear de margem maximal (SVM) “aprendido” deste conjunto de treino usando o método dos multiplicadores de Lagrange. A partir dos dados foram estimados os parâmetros w1, w2 e b do hiperplano<br />
  14. 14. Aprendizagem Computacional Gladys Castillo, UA<br />Redes Neuronais Artificiais (RNAs)<br />Outro nome: modelos conexionistas<br />Modelo distribuído de computação paralelacom alto nível de granularidade<br /><ul><li>As RNAs são inspiradas no funcionamento do cérebro humano
  15. 15. Compostas dum elevado número de neurónios altamente inter-ligados trabalhando em paralelo na resolução de problemas
  16. 16. O conhecimento adquirido através da aprendizagem é armazenado nas ligações.</li></li></ul><li>Aprendizagem Computacional Gladys Castillo, UA<br />nós de entrada<br />nós de saída<br />nós ocultos <br />Redes Neuronais Artificiais (RNAs)<br />As RNAs contêm tem 3 tipos de camadas (layers):<br />input layer: informação que entra no neurónio<br />hidden layer: camadas intermédias, podem ser várias <br />output layer: informação que sai<br />Modelos mais populares:<br />Perceptron: modelo mais simples, não usa hidden layers<br />Multi-layer Feed-Forward: os nós de uma camada estão ligados apenas aos nós da seguinte camada<br />modelo com 3 camadas <br />
  17. 17. Aprendizagem Computacional Gladys Castillo, UA<br />Modelo de um Neurónio Artificial<br /><ul><li>Neurónio = processador de informaçãorecebe e envia impulso a milhares de neurónios
  18. 18. dendritos: canais de entrada
  19. 19. corpo celular: órgão de cômputo (soma ponderada, função não linear)
  20. 20. axónio: canal de saídadistribuição a outros neurónios
  21. 21. Potencial pos-sináptico:h (w, x) = w . x = jwj xj
  22. 22. O factor bias t é usualmente subtraído ao potencial pos-sináptico
  23. 23. função de activação para obter y:y = f (w. x – t)</li></ul>y = f(wx – t) = f(jwjxj – t)<br />
  24. 24. Aprendizagem Computacional Gladys Castillo, UA<br />Perceptron<br />O modelo mais simples das RNAs concebido em 1957 no Cornell Aeronautical Laboratory por Frank Rosenblatt.<br />Um perceptron é um classificador linear binário, ou seja, uma funçãof: X  Y que mapea um vector binário x a um valor binário y<br />Modelo simples de um neurónio artificial<br />Modelo geral com vários outputs onde cada output é modelado com o modelo do neurónio simples)<br />função de activação: a função sinal<br />
  25. 25. Aprendizagem Computacional Gladys Castillo, UA<br />Black box<br />x<br />x<br />x<br />y<br />Input<br />1<br />2<br />3<br />1<br />0<br />0<br />0<br />x<br />1<br />0<br />1<br />1<br />1<br />Output<br />1<br />1<br />0<br />1<br />1<br />1<br />1<br />1<br />x<br />y<br />2<br />0<br />0<br />1<br />0<br />0<br />1<br />0<br />0<br />x<br />0<br />1<br />1<br />1<br />3<br />0<br />0<br />0<br />0<br />RNAs - Modelo Caixa Preta (Black-Box)<br />Conjunto de Treino<br />Aprender um Perceptron dos dados significa aprender os pesos que melhor ajustem o modelo oculto nos dados<br />
  26. 26. Aprendizagem Computacional Gladys Castillo, UA<br />Perceptron Modelação de uma função booleana<br />Modelação com Perceptron<br />Função alvo: (target function)<br />o valor de y é true se pelomenos 2 inputs sãotrue<br />A aprendizagem do perceptron sempre tem sucesso em tempo finito para um conjunto de treino finito e separável de exemplos de treino<br />
  27. 27. Aprendizagem Computacional Gladys Castillo, UA<br />PerceptronFronteira de Decisão Linear<br />O perceptron é usado para conjunto de treinos linearmente separáveis<br />
  28. 28. Aprendizagem Computacional Gladys Castillo, UA<br />Problema de Classificação XOR<br />Não existe uma fronteira linear que possa separar estas duas classes. (como o Perceptron pode construir apenas um hiperplano, não podemos usa-lo para modelar este problema) <br />OU exclusivo<br />XOR(x1, x2) = true se e só se um dos inputs é true(note que true = 1, false = -1)<br />
  29. 29. Aprendizagem Computacional Gladys Castillo, UA<br />RNA de Duas Camadas Problema XOR (ou exclusivo)<br />Os exemplos podem ser classificados usando 2 hiperplanos que dividem o espaço dos atributos (input space) em suas respectivas classes<br />2 nós de entrada, 2 ocultos e um de saída<br />
  30. 30. Aprendizagem Computacional , Gladys Castillo<br />Fronteiras de decisãoPerceptron vs. RNAs com 1 e 2 Camadas Ocultas<br />Figuraextraídade RedesNeuronais, Pedro Larrañaga et al.<br />
  31. 31. Aprendizagem Computacional Gladys Castillo, UA<br />RNAs multi-camadas Feed-Forward<br />Podem existir várias camadas ocultas<br />Feed-forward (directa, não recorrente) refere-se ao facto de que nenhum arco e dirigido a um nó da mesma camada ou de uma camada anterior. <br />
  32. 32. RNAs multi-camadas Feed-Forward<br />Uma RNA pode ser representado como um grafo dirigido onde:<br />A cada nó (neurónio) i é associado uma variável de estado Xi<br />A cada ligação (i, j) entre os nós ie j é associado um peso wij<br />A cada nó i é associado um desvio (viés, bias) i<br />
  33. 33. RNAs multi-camadas Feed-Forward<br />Para cada nó j de uma camada oculta ou de saída é definida uma função de activação<br />onde: <br />wijé o peso associado a ligação que entra no nó j partindo do nó i com estado Ij<br />jé o desvio<br />Ojé o novo estado do nó j.<br />I1<br />sinapsis<br />sinap<br />(pesos)<br />(pesos)<br />w1j<br />I2<br />fun<br />ç<br />ão<br />de <br />fun<br />ç<br />ão<br />de <br />activa<br />ç<br />ão<br />activa<br />ç<br />ão<br />w2j<br />sa<br />í<br />da<br />sa<br />í<br />da<br /><br />S<br />f( )<br />Oj<br />f(<br />)<br />y<br />wnj<br />In<br />j<br />desvio<br />Aprendizagem Computacional Gladys Castillo, UA<br />
  34. 34. Aprendizagem Computacional Gladys Castillo, UA<br />Funções de Activaçãopara RNAs multicamadas<br />A função de activação que é normalmente usada com o algoritmo Backpropagation é a logística (ou sigmoid)<br />
  35. 35. Aprendizagem Computacional Gladys Castillo, UA<br />Algoritmo de Aprendizagem “Backpropagation” <br />Paul Werbos, 1974<br />Aprender uma RNA dos dados significa aprender os pesos das ligações<br />Bacpropagation é um algoritmo iterativo:<br />em cada iteração processa todos os exemplos de treino e compara o valor predito na saída da rede com o valor real (correcto) da classe<br />os pesos das ligações e os desvios são modificados por forma a minimizar o erro quadrático médio entre os valores reais e os valores preditos <br />EQM é o MSE abreviado do termo em inglês (meansquarederror)<br />
  36. 36. BackpropagationParâmetros de Entrada<br />RNA - topologia de uma rede neuronal multi-camada feed-forward<br />A escolha do # camadas ocultas e o # de nós em cada camada é um processo de tentativa-e-erro.<br />D - conjunto de treino com N exemplos etiquetados<br />Os valores dos atributos contínuos devem ser normalizados<br />Os atributos discretos devem ser transformados em atributos binários (um nó de entrada por cada valor)<br />Em problemas com mais de duas classes, deve ser utilizado um nó de saída por cada classe.<br />l - constante (factor de aprendizagem - "learning rate")<br />Aprendizagem Computacional Gladys Castillo, UA<br />
  37. 37. BackpropagationEsquema Geral<br />Input: topologia de uma RNA, conjunto de treino D, learning rate l<br />Output:RNA com pesos das ligações que minimizam o EQM<br />Inicialização: InicializarPesos(RNA) <br />Enquanto critério de paragem não atingido:<br />Para cada exemplo do conjunto de treino D<br /> 1. Propagar Valores de Entrada (caminhando da camada de entrada para a camada de saída)<br /> 2. RetropropagarError (caminhando da camada de saída para a camada de entrada)<br /> 3. Actualizar Pesos (usando a regra de descida do gradiente)<br />
  38. 38. Aprendizagem Computacional Gladys Castillo, UA<br />BackpropagationRegra do Descida do Gradiente<br />Objectivo: atingir o mínimo global da função do EQM caminhando na direcção contraria a do gradiente (sentido de maior decréscimo da função E(w)  E(w, D)  EQM )<br />Exemplo de - E(w) com w = (w1,w2)<br />
  39. 39. Aprendizagem Computacional Gladys Castillo, UA<br />BackpropagationRegra do Descida do Gradiente<br />Para um vector de pesos w=(w1, w2, …, wn), a fórmula de actualização dos pesos da regra da descida do gradiente é dada por<br />onde:<br /><ul><li>l é o factor de aprendizagem - uma constante em ]0; 1] que ajuda a que o algoritmo não pare num mínimo local
  40. 40. E(w) é o gradiente da função do erro E(w) definido por</li></ul>Logo, para aplicar este método precisamos de calcular o gradiente de E(w)(ver derivação no livro ML de Tom Mitchell)<br />
  41. 41. BackpropagationInicialização<br />Os pesos das ligações e o desvio (bias) associado a cada nó devem ser inicializados utilizando números pequenos e aleatórios, normalmente no intervalo [-1; 1]. <br />Aprendizagem Computacional Gladys Castillo, UA<br />
  42. 42. BackpropagationPropagação dos valores de entrada<br />Propagar os valores de entrada para a frente até obter um valor de saída (uma classificação não necessariamente correcta).<br />Para cada nó j da camada de entrada: <br />Para cada nó j de uma camada (oculta ou de saída) e para cada nó i da camada anterior: <br />Aprendizagem Computacional Gladys Castillo, UA<br />
  43. 43. BackpropagationRetropropagação do erro<br />Calculam-se e retropropagam-se os erros cometidos na classificação de cada exemplo de treino, avançando da camada de saída para a camada de entrada.<br />Para cada nó j da camada de saída o erro cometido ao classificar um dado exemplo de treino <x, y> é dado por:<br />Para derivar esta fórmula precisamos de calcular a derivada parcial de E(w)para cada peso. Note que para a função logística:<br />ver toda a derivação no livro ML de Tom Mitchell<br />Aprendizagem Computacional Gladys Castillo, UA<br />
  44. 44. BackpropagationRetropropagação do erro<br />Para cada nó j das camadas ocultas o erro cometido é dado por:<br />onde wjk é o peso associado à ligação que entra no nó kpartindo do nó j e ek é o erro associado a nó k previamente calculado<br />Aprendizagem Computacional Gladys Castillo, UA<br />
  45. 45. BackpropagationActualização dos pesos e desvios<br />Os pesos e desvios devem ser actualizados usando a regra de descida do gradiente por forma a minimizar o EQMPara cada iteração k<br />Cada pesowijé actualizado pela seguinte fórmula: <br />Cada desvio jé actualizado pela seguinte fórmula: <br />Aprendizagem Computacional Gladys Castillo, UA<br />
  46. 46. BackpropagationCritério de Paragens<br />Parar o algoritmo:<br />quando as diferenças entre os pesos forem todas inferiores a um dado limite de tolerância.<br />quando a percentagem de exemplos mal classificados for inferior a um dado valor.<br /> após um determinado numero de iterações.<br />Aprendizagem Computacional Gladys Castillo, UA<br />
  47. 47. BackpropagationCorpo do Algoritmo<br />Enquanto critério de paragem não atingido:<br />Para cada exemplo do conjunto de treino D<br />1. Propagar Valores de Entrada <br /><ul><li>para camada de entrada:
  48. 48. para camadas ocultas e de saída: </li></ul>2. RetropropagarError<br /><ul><li>para camada de saída:
  49. 49. para camadas ocultas :</li></ul>3. Actualizar Pesos e Desvios <br />
  50. 50. Exemplo<br />Aprendizagem Computacional Gladys Castillo, UA<br />Extraído do livro Data Mining - Concepts and Techniques, 2nd edition , J. Han and MichelineKamber<br />Chapter 6.6. Classification by Backpropation<br />Calcule os novos pesos sinápticos usando o algoritmo de backpropagation com a função de activação sigmoide, o factor de aprendizagem l=0.9 e o valor da classe observado y =1. <br />1. Propagação dos valores de entrada<br />o valor predito<br />
  51. 51. Exemplo (continuação)<br />Aprendizagem Computacional Gladys Castillo, UA<br />2. Retropropagação do erro<br />3. Actualizar pesos e desvios<br />
  52. 52. Aprendizagem Computacional , Gladys Castillo<br />References<br />Capítulo 4 - Artificial Neural Networks do livro de Tom Mitchell, Machine Learning , McGrau Hill (1997)<br />Capítulo 6.6 do livro Data Mining - Concepts and Techniques,J. Han.  Morgan Kaufmann (2006)<br />Capítulos 5 do livro Introduction to Data Mining  P. Tan, M.Steinbach, V.Kumar<br />Acetatos “ClassificadoresLineares” de Luis Oliveira<br />On-line: www.ppgia.pucpr.br/~soares/cursos/recpad2/public/classificadoreslineares.pdf<br />

×