Reconhecimento de Caracteres    Com Redes Neuronais         Trabalhos 1 e 2 APRENDIZAGEM COMPUTACIONAL 2007/2008          ...
Reconhecimento de Padrões       MMA-AC-Francisco Moço   2
Um Problema de KDD1. Selecção de Dados2. Pré-Processamento3. Transformação      Redução da Dimensão      Selecção de Atrib...
Recolha de Dados                       38 Participantes                       6x cada dígito                       10 dígi...
Pré-Processamento                      Segmentação                                       Redimensionamento                ...
Base de dadosOptical Recognition of Handwritten Digits Data SetPreprocessamento dos dados                                 ...
Redução da Dimensão (Transformação) Ficheiro com 3823 x 65             A redução do número de 3823 objectos               ...
Selecção de Atributos FSS - Feature Sub-Selection    Filtros    Removem atributos irrelevantes do conjunto de atributos   ...
Algoritmos Genéticos                                        Gene – smallest unit with                                     ...
Genes, Genotipos e Fenotipos                        Gene 3021 3058 3240   00010101 00111010 11110000             0.67 3017...
Feature “weighting” para criar uma “pool”  String binária aleatória    (CROMOSSOMA)                                       ...
Roleta (Roulette Wheel) - Selecção                 MMA-AC-Francisco Moço   12
Selecção de Cromossomas Rank based (Ordem) Fitness Based (Aptidão, Fitness)                      MMA-AC-Francisco Moço   13
Outros métodos de selecção                MMA-AC-Francisco Moço   14
Operador - Cruzamento Dois progenitoresproduzem dois offsprings  Há probabilidade de queos cromossomas de doispais sejam c...
Operador - Mutação   Há a probabilidade de que os genes de um   descendente sejam alteardos aleaóriamente.   A Probabilida...
Controlo - Fitness FunctionObjectivo  Selecção Parental  Medida de Convergência  Deve reflectir o valor do cromossoma de u...
Valores obtidos no RapidMinerFS Correlation (alto) significa existe um alto grau de correlação entre os atributos ea class...
O Problema (GA + RNA)                                       !               MMA-AC-Francisco Moço       19
Classificação com Redes NeuronaisO PERCEPTRON                  bias         Entradas: x1, x2, …, xn         Pesos Sináptic...
Discriminante Linear (Exemplo)                                           g(x)>0 ⇒ x ∈R1 (Classe 1)                        ...
FUNÇÃO DE ACTIVAÇÃO A função de activação deve ser diferenciável Geralmente têm não-linearidade suave (não abrupta) Mais u...
RNA DE MÚLTIPLAS CAMADASRedes de múltiplas camadas alimentadas adiante(feedforward multilayer neural networks)VANTAGENS   ...
RNA DE MÚLTIPLAS CAMADASDESVANTAGENS Difícil análise teórica da rede, devido à alta não-linearidade e conectividade; Neuró...
RNA DE MÚLTIPLAS CAMADASCada neurónio é projectado para realizar duas tarefas  Cálculo do sinal funcional de saída do neur...
APRENDIZAGEM Aprendizagem é feita em 3 fases: 1. Envio do estímulo ao longo da rede 2. Cálculo e retropopagação do erro as...
Notação                                    target    t=(t1, t2, …, tn) X     vector de treino t     valores esperados para...
O Algoritmo de Aprendizagem – parte I                                              v0j - bias       w0j - bias            ...
APRENDIZAGEM O Algoritmo de Backpropagation procura valores para os pesos sinápticos de forma a minimizar o erro total da ...
APRENDIZAGEMDiferenciação do Erro no neurónio zj em relação a vij                                                         ...
APRENDIZAGEMActualização dos pesos (Resumo)-   Entre a camada de saída e a camada oculta (Wjk)-   Entre a camada oculta e ...
O Algoritmo de Aprendizagem – parte II                                      x1                    z1                     y...
Regra do DeltaThe delta rule is a gradient descent learningrule for updating the weights of the artificialneurons in a sin...
Coeficiente de Aprendizagem (η) Quanto menor η, menores são as variações de wji e mais suave é a trajectória no espaço de ...
Modos de Treino da RN Modo Sequencial (SEQ): a actualização dos pesos é realizada após a apresentação de cada exemplo de t...
Critérios de Paragem Supõe-se que o algoritmo de retropropagação tenha convergido quando:    a norma euclidiana do vector ...
ExemploMMA-AC-Francisco Moço             37
Exemplo(cont.)MMA-AC-Francisco Moço                    38
Exemplo(cont.)MMA-AC-Francisco Moço                    39
Filter Approach         ALGORITMO GENÁTICO                                                      REDE NEURONAL             ...
Com o RapidMiner                                                 TREINO                        TREINO                     ...
MMA-AC-Francisco Moço   42
Com o WEKA Implementei no WEKA as operações de Selecção de Atributos, utilizando os dois tipos de abordagem já referidos A...
MMA-AC-Francisco Moço   44
Que aprendeu? Foi induzida uma RN taxa de aprendizagem=0.3 momento=0.2 64 entradas + 10 camadas ocultas + 10 saídas       ...
Comparaçõesa) Não observado                   MMA-AC-Francisco Moço   46
Comparações              MMA-AC-Francisco Moço   47
Entre Classificadores                 MMA-AC-Francisco Moço   48
MMA-AC-Francisco Moço   49
Um caso problemático               MMA-AC-Francisco Moço   50
Outros Classificadores (RN) LRF RBF Convolutional     (LeNet5)                      http://yann.lecun.com/exdb/lenet/index...
Próximos SlideShares
Carregando em…5
×

Reconhecimento de Caracteres com Redes Neuronais

1.629 visualizações

Publicada em

0 comentários
0 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

Sem downloads
Visualizações
Visualizações totais
1.629
No SlideShare
0
A partir de incorporações
0
Número de incorporações
5
Ações
Compartilhamentos
0
Downloads
66
Comentários
0
Gostaram
0
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Reconhecimento de Caracteres com Redes Neuronais

  1. 1. Reconhecimento de Caracteres Com Redes Neuronais Trabalhos 1 e 2 APRENDIZAGEM COMPUTACIONAL 2007/2008 2º Semestre Francisco Moço
  2. 2. Reconhecimento de Padrões MMA-AC-Francisco Moço 2
  3. 3. Um Problema de KDD1. Selecção de Dados2. Pré-Processamento3. Transformação Redução da Dimensão Selecção de Atributos4. Extracção Modelo de Classificação Algoritmo de Aprendizagem5. Avaliação Testar e testar o processo de formas diferentes6. Conhecimento MMA-AC-Francisco Moço 3
  4. 4. Recolha de Dados 38 Participantes 6x cada dígito 10 dígitos =2280 dígitos MMA-AC-Francisco Moço 4
  5. 5. Pré-Processamento Segmentação Redimensionamento 32x32 pixel Greyscale Filtros Etc…128x128 O processo foi criado por Yan Le Cun e T. Mitchell para as BD MNIST e USPS. (Existe literatura…)32x32 MMA-AC-Francisco Moço 5
  6. 6. Base de dadosOptical Recognition of Handwritten Digits Data SetPreprocessamento dos dados 8x8 Σ 0 1 6 15 12 1 0 0 0 7 16 6 6 10 0 0 0 8 16 2 0 11 2 0 0 5 16 3 0 5 7 0 0 7 13 3 0 8 7 0 0 4 12 0 1 13 5 0 0 0 14 9 15 9 0 0 0 0 6 14 7 1 0 0 64 ATRIBUTOS + 1 CLASSE 0, 1, 6, 15, 12, 1, 0, 0, 0, 7, 16, 6, 6, … 7, 1, 0, 0, 0 MMA-AC-Francisco Moço 6
  7. 7. Redução da Dimensão (Transformação) Ficheiro com 3823 x 65 A redução do número de 3823 objectos atributos resulta da criação de novos atributos (CL dos 64 atributos originais) 1 classe (dígito 0 a 9) PCA PF ICA Haar Wavelets MMA-AC-Francisco Moço 7
  8. 8. Selecção de Atributos FSS - Feature Sub-Selection Filtros Removem atributos irrelevantes do conjunto de atributos original, antes de aplicar o Algoritmo de Aprendizagem Wrappers Utilizam o o próprio Algoritmo de Aprendizagem para escolher o conjunto de atributos mais relevante Algoritmos Genéticos (Métodos Heurísticos) Neocognitron MMA-AC-Francisco Moço 8
  9. 9. Algoritmos Genéticos Gene – smallest unit with genetic information Genotype – collectivity of all genes Phenotype – expression of genotype in environment Individual – single member of a population with genotype and phenotype Population – set of several individuals Generation – one iteration of evaluation, selection and reproduction with variation MMA-AC-Francisco Moço 9
  10. 10. Genes, Genotipos e Fenotipos Gene 3021 3058 3240 00010101 00111010 11110000 0.67 3017 3059 3165 00010001 00111011 10100101 0.23 3036 3185 3120 00100100 10111001 01111000 0.45 3197 3088 3106 11000101 01011000 01101010 0.94 Phenotype Genotype Fitness Função Ex: Genetic coding and mapping MMA-AC-Francisco Moço 10
  11. 11. Feature “weighting” para criar uma “pool” String binária aleatória (CROMOSSOMA) Comprimento N0 0 1 0 1 1 0 1 0 1 1 1 1 …0 1 0 0 …0 1 6 15 12 1 0 0 0 7 16 6 6 … 7 1 0 0 0 Atributos seleccionados POPULAÇÃO MMA-AC-Francisco Moço 11
  12. 12. Roleta (Roulette Wheel) - Selecção MMA-AC-Francisco Moço 12
  13. 13. Selecção de Cromossomas Rank based (Ordem) Fitness Based (Aptidão, Fitness) MMA-AC-Francisco Moço 13
  14. 14. Outros métodos de selecção MMA-AC-Francisco Moço 14
  15. 15. Operador - Cruzamento Dois progenitoresproduzem dois offsprings Há probabilidade de queos cromossomas de doispais sejam copiados semalterações como offsprings Há probabilidade de que oscromossomas de dois paissejam combinadosaleatoriamente para formar One Point Crossoveroffsprings Two Point Crossover 0,6 < Probab. Crossover < 1,0 Uniform Crossover MMA-AC-Francisco Moço 15
  16. 16. Operador - Mutação Há a probabilidade de que os genes de um descendente sejam alteardos aleaóriamente. A Probabilidade de mutação é pequena. Probab. Mutation ≈ 0,001 MMA-AC-Francisco Moço 16
  17. 17. Controlo - Fitness FunctionObjectivo Selecção Parental Medida de Convergência Deve reflectir o valor do cromossoma de uma forma “real” Serve de critério de paragemProblemas super-fit - valor máximo original muito alto super-unfit - valor mínimo original muito baixo MMA-AC-Francisco Moço 17
  18. 18. Valores obtidos no RapidMinerFS Correlation (alto) significa existe um alto grau de correlação entre os atributos ea classe e um baixo grau de correlação entre os atributos. MMA-AC-Francisco Moço 18
  19. 19. O Problema (GA + RNA) ! MMA-AC-Francisco Moço 19
  20. 20. Classificação com Redes NeuronaisO PERCEPTRON bias Entradas: x1, x2, …, xn Pesos Sinápticos: w1, w2, …, wn MMA-AC-Francisco Moço 20
  21. 21. Discriminante Linear (Exemplo) g(x)>0 ⇒ x ∈R1 (Classe 1) g(x)<0 ⇒ x ∈R2 (Classe 2) Fronteira de decisão g(x)=0 R1 R2 W=(w1, w2)=(0.9,2.0) desvio Se os exemplos do conjunto de treino são linearmente separáveis podemos aprender uma função discriminante linear para usar como classificador de futuros exemplos MMA-AC-Francisco Moço 21
  22. 22. FUNÇÃO DE ACTIVAÇÃO A função de activação deve ser diferenciável Geralmente têm não-linearidade suave (não abrupta) Mais utilizadas: Função Logística (Sigmóide) Tangente Hiperbólica. MMA-AC-Francisco Moço 22
  23. 23. RNA DE MÚLTIPLAS CAMADASRedes de múltiplas camadas alimentadas adiante(feedforward multilayer neural networks)VANTAGENS Muito utilizadas para resolver problemas complexos Geralmente, treinadas com supervisão através do algoritmo de retropropagação do erro (back-propagation) Cada neurónio inclui uma função de activação não linear Uma ou mais camadas ocultas de neurónios Alto grau de conectividade. MMA-AC-Francisco Moço 23
  24. 24. RNA DE MÚLTIPLAS CAMADASDESVANTAGENS Difícil análise teórica da rede, devido à alta não-linearidade e conectividade; Neurónios ocultos tornam difícil a visualização do processo de aprendizagem. MMA-AC-Francisco Moço 24
  25. 25. RNA DE MÚLTIPLAS CAMADASCada neurónio é projectado para realizar duas tarefas Cálculo do sinal funcional de saída do neurónio, resultado dos sinais de entrada, bias e pesos sinápticos que foram aplicados na função de activação; Cálculo de uma estimativa do vector gradiente (gradientes da superfície de erro em relação aos pesos conectados às entradas de um neurónio), necessário para a retropropagação através da rede. MMA-AC-Francisco Moço 25
  26. 26. APRENDIZAGEM Aprendizagem é feita em 3 fases: 1. Envio do estímulo ao longo da rede 2. Cálculo e retropopagação do erro associado 3. Ajuste dos pesos MMA-AC-Francisco Moço 26
  27. 27. Notação target t=(t1, t2, …, tn) X vector de treino t valores esperados para X Y vector valores obtidos Wjk peso entre Zj e Yk Vij peso entre Xi e Zj W0k desvio de Yk V0j desvio de Zj δk erro referente ao neurónio Yk δj erro referente ao neurónio Zj η coeficiente de aprendizagem X=(x1, x2, …, xn) MMA-AC-Francisco Moço 27
  28. 28. O Algoritmo de Aprendizagem – parte I v0j - bias w0j - bias f(zin j) f(yin k) vij wik x1 z1 y1 … … … xi zj yk … … … xn zp ym FEEDFORWARD MMA-AC-Francisco Moço 28
  29. 29. APRENDIZAGEM O Algoritmo de Backpropagation procura valores para os pesos sinápticos de forma a minimizar o erro total da rede (Função de custo E) sobre o conjunto de treino. f(yin k) wik z1 y1 t1 E1 … … Diferenciação do Erro no neurónio zj yk tk Ek de saída yk em relação a wjk … … zp ym tm EN MMA-AC-Francisco Moço 29
  30. 30. APRENDIZAGEMDiferenciação do Erro no neurónio zj em relação a vij f(zin j) f(yin k) vij wik x1 z1 y1 t1 … … … xi zj yk tk … … … xn zp ym tm MMA-AC-Francisco Moço 30
  31. 31. APRENDIZAGEMActualização dos pesos (Resumo)- Entre a camada de saída e a camada oculta (Wjk)- Entre a camada oculta e a camada de entrada (Vij) MMA-AC-Francisco Moço 31
  32. 32. O Algoritmo de Aprendizagem – parte II x1 z1 y1 … … … . xi zj yk … … … xn zp ym BACKPROPAGATION http://galaxy.agh.edu.pl/~vlsi/AI/backp_t_en/backprop.html MMA-AC-Francisco Moço 32
  33. 33. Regra do DeltaThe delta rule is a gradient descent learningrule for updating the weights of the artificialneurons in a single-layer perceptron.Fonte: Wikipedia.orgObter o ponto mínimo atravésde um processo de iteração,utilizando um exemplo doconjunto de treino de cada vezPartindo de um pontoarbitrário w(k) pode-secaminhar pela superfície E(w)em direcção ao ponto mínimo,bastando para isso evoluirsempre no sentido oposto aodo gradiente naquele ponto. MMA-AC-Francisco Moço 33
  34. 34. Coeficiente de Aprendizagem (η) Quanto menor η, menores são as variações de wji e mais suave é a trajectória no espaço de pesos. Desvantagem: Aprendizagem lenta Quanto maior η, aprendizagem mais rápida, ajustes em wji grandes Desvantagem: a rede pode tornar-se instável (oscilatória) Solução : Inclusão de um termo, na regra do delta, chamado momento MMA-AC-Francisco Moço 34
  35. 35. Modos de Treino da RN Modo Sequencial (SEQ): a actualização dos pesos é realizada após a apresentação de cada exemplo de treino. Bastante utilizado em problemas de classificação de padrões com muitas repetições (redundantes). Modo por Lote (BATCH): O ajuste dos pesos é realizado após a apresentação de todos os exemplos do conjunto de treino, constituindo assim uma época. MMA-AC-Francisco Moço 35
  36. 36. Critérios de Paragem Supõe-se que o algoritmo de retropropagação tenha convergido quando: a norma euclidiana do vector gradiente alcançar um valor suficientemente pequeno. Desvantagens: tempo de aprendizagem longo e requer o cálculo do vector gradiente dos pesos. a taxa absoluta de variação do erro médio quadrado por época for suficientemente pequena. Desvantagem: pode ter-se uma paragem prematura do processo MMA-AC-Francisco Moço 36
  37. 37. ExemploMMA-AC-Francisco Moço 37
  38. 38. Exemplo(cont.)MMA-AC-Francisco Moço 38
  39. 39. Exemplo(cont.)MMA-AC-Francisco Moço 39
  40. 40. Filter Approach ALGORITMO GENÁTICO REDE NEURONAL MMA-AC-Francisco Moço 40
  41. 41. Com o RapidMiner TREINO TREINO TESTE TESTE Árvores de operadores em RapidMiner: Simple Validation (Holdout), XValidation (Cross-validation) e Wrapper Approach Treino e Teste Não foi possível no RapidMiner obter os resultados esperados para o classificador Classification Performance, sendo substituindo pelo classificador Performance. Este, apenas me devolve os parâmetros, erro quadrado e o erro médio quadrado, valores que me sugerem uma taxa de acerto de entre 97,2 e 98,3%. MMA-AC-Francisco Moço 41
  42. 42. MMA-AC-Francisco Moço 42
  43. 43. Com o WEKA Implementei no WEKA as operações de Selecção de Atributos, utilizando os dois tipos de abordagem já referidos Atributos para o RapidMiner, filters e wrapper. wrapper Também neste programa, a conjunção de uma pesquisa com AG e o classificador MultilayerPerceptron, não são computacionalmente resolúveis em tempo útil. Assim, implementei filters com pesquisa por CFSS e AG. MMA-AC-Francisco Moço 43
  44. 44. MMA-AC-Francisco Moço 44
  45. 45. Que aprendeu? Foi induzida uma RN taxa de aprendizagem=0.3 momento=0.2 64 entradas + 10 camadas ocultas + 10 saídas MMA-AC-Francisco Moço 45
  46. 46. Comparaçõesa) Não observado MMA-AC-Francisco Moço 46
  47. 47. Comparações MMA-AC-Francisco Moço 47
  48. 48. Entre Classificadores MMA-AC-Francisco Moço 48
  49. 49. MMA-AC-Francisco Moço 49
  50. 50. Um caso problemático MMA-AC-Francisco Moço 50
  51. 51. Outros Classificadores (RN) LRF RBF Convolutional (LeNet5) http://yann.lecun.com/exdb/lenet/index.html MMA-AC-Francisco Moço 51

×