Redes
Neurais
Artificiais
Everton Gago
Como vai ser?
O que é RNA?
Conglomerado
de neurônios!?!?
Neurônio:
Redes Neurais Artificiais.
Neurônio:
Redes Neurais Artificiais.
Entradas:
X0 = 0
X1 = 1
X2 = 1
Neurônio:
Redes Neurais Artificiais.
Entradas:
X0 = 0
X1 = 1
X2 = 1
Pesos:
W0 = 0.3
W1 = 0.1
W2 = 0.6
Neurônio:
Redes Neurais Artificiais.
Entradas:
X0 = 0
X1 = 1
X2 = 1
Pesos:
W0 = 0.3
W1 = 0.1
W2 = 0.6
SIGMA (função de som...
Neurônio:
Redes Neurais Artificiais.
Entradas:
X0 = 0
X1 = 1
X2 = 1
Pesos:
W0 = 0.3
W1 = 0.1
W2 = 0.6
SIGMA (função de som...
Rede Neural:
Redes Neurais Artificiais.
Como essa
“jossa”
funciona?
#Fase 1: Treinar
#Fase 2:
Classificar
Treinar:
Redes Neurais Artificiais.
Entradas:
X0 = 0
X1 = 1
X2 = 1
Pesos:
W0 = 0.3
W1 = 0.1
W2 = 0.6
SIGMA (função de soma...
Treinar:
Redes Neurais Artificiais.
Entradas:
X0 = 0
X1 = 1
X2 = 1
Pesos:
W0 = 0.3
W1 = 0.1
W2 = 0.6
SIGMA (função de soma...
Treinar:
Redes Neurais Artificiais.
Entradas:
X0 = 0
X1 = 1
X2 = 1
Pesos:
W0 = 0.3
W1 = 0.1
W2 = 0.6
SIGMA (função de soma...
Treinar:
Redes Neurais Artificiais.
Entradas:
X0 = 0
X1 = 1
X2 = 1
Pesos:
W0 = 0.3
W1 = 0.1
W2 = 0.6
SIGMA (função de soma...
Treinar:
Redes Neurais Artificiais.
Entradas:
X0 = 1
X1 = 1
X2 = 1
Pesos:
W0 = 0.3
W1 = 0.1
W2 = 0.6
SIGMA (função de soma...
Treinar:
Redes Neurais Artificiais.
Entradas:
X0 = 1
X1 = 1
X2 = 1
Pesos:
W0 = 0.3
W1 = 0.1
W2 = 0.6
SIGMA (função de soma...
A rede acertou
50%
Mexer nos
pesos!
Treinar:
Redes Neurais Artificiais.
Entradas:
X0 = 0
X1 = 1
X2 = 1
Pesos:
W0 = 0.3
W1 = 0.1
W2 = 0.6
SIGMA (função de soma...
Treinar:
Redes Neurais Artificiais.
Entradas:
X0 = 0
X1 = 1
X2 = 1
Pesos:
W0 = 0.1
W1 = 0.2
W2 = 0.3
SIGMA (função de soma...
Treinar:
Redes Neurais Artificiais.
Entradas:
X0 = 1
X1 = 1
X2 = 1
Pesos:
W0 = 0.1
W1 = 0.2
W2 = 0.3
SIGMA (função de soma...
Rede Neural:
Redes Neurais Artificiais.
Como fica?
Neurônio
Redes Neurais Artificiais.
Rede Neural:
Redes Neurais Artificiais.
Camada
Redes Neurais Artificiais.
Rede Neural:
Redes Neurais Artificiais.
Rede Neural
Redes Neurais Artificiais.
Exemplo de
utilização
Classificar perfil
de risco
Perfil de risco:
Redes Neurais Artificiais.
SEXO IDADE E. CIVIL USA P/ TRABALHAR FILHOS
M JOVEM SOL SIM NAO
M ADULTO SOL S...
Perfil de risco:
Redes Neurais Artificiais.
SEXO IDADE E. CIVIL USA P/ TRABALHAR FILHOS RISCO
0 0 0 1 0 1
0 0.5 0 1 0 1
1 ...
Código
Case: Portal de
vagas.
Redes Neurais Artificiais.
Case: Como treinar?
- Não existia volume suficiente de dados para treinamento;
● Definimos um c...
Redes Neurais Artificiais.
Case: Como treinar?
Resultados
Redes Neurais Artificiais.
Case: Resultados
● No início o sistema se baseava em regras estáticas para recomendação,
após u...
Redes Neurais Artificiais.
Cuidados:
● Treinamento:
● Treinamento on-line nem sempre é possível;
● Algumas API's não ofere...
Redes Neurais Artificiais.
Conclusões:
● Seu sistema pode começar com regras “estáticas” e “aprender” com os
usuários, dan...
Obrigado!
Devcamp 2015
Devcamp 2015
Devcamp 2015
Devcamp 2015
Próximos SlideShares
Carregando em…5
×

Devcamp 2015

521 visualizações

Publicada em

Redes Neurais Artificiais

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
521
No SlideShare
0
A partir de incorporações
0
Número de incorporações
3
Ações
Compartilhamentos
0
Downloads
10
Comentários
0
Gostaram
0
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Devcamp 2015

  1. 1. Redes Neurais Artificiais Everton Gago
  2. 2. Como vai ser?
  3. 3. O que é RNA?
  4. 4. Conglomerado de neurônios!?!?
  5. 5. Neurônio: Redes Neurais Artificiais.
  6. 6. Neurônio: Redes Neurais Artificiais. Entradas: X0 = 0 X1 = 1 X2 = 1
  7. 7. Neurônio: Redes Neurais Artificiais. Entradas: X0 = 0 X1 = 1 X2 = 1 Pesos: W0 = 0.3 W1 = 0.1 W2 = 0.6
  8. 8. Neurônio: Redes Neurais Artificiais. Entradas: X0 = 0 X1 = 1 X2 = 1 Pesos: W0 = 0.3 W1 = 0.1 W2 = 0.6 SIGMA (função de soma): U = (X0 * W0) + (X1 * W1) + (X2 * W2) U = 0 + 0.1 + 0.6 U = 0.7
  9. 9. Neurônio: Redes Neurais Artificiais. Entradas: X0 = 0 X1 = 1 X2 = 1 Pesos: W0 = 0.3 W1 = 0.1 W2 = 0.6 SIGMA (função de soma): U = (X0 * W0) + (X1 * W1) + (X2 * W2) U = 0 + 0.1 + 0.6 U = 0.7 F. Transf. (Y): SE (U > 0.5) Y = 1.0 SENAO Y = 0.0
  10. 10. Rede Neural: Redes Neurais Artificiais.
  11. 11. Como essa “jossa” funciona?
  12. 12. #Fase 1: Treinar
  13. 13. #Fase 2: Classificar
  14. 14. Treinar: Redes Neurais Artificiais. Entradas: X0 = 0 X1 = 1 X2 = 1 Pesos: W0 = 0.3 W1 = 0.1 W2 = 0.6 SIGMA (função de soma): U = (X0 * W0) + (X1 * W1) + (X2 * W2) U = 0 + 0.1 + 0.6 U = 0.7 F. Transf. (Y): SE (U > 0.5) Y = 1.0 SENAO Y = 0.0
  15. 15. Treinar: Redes Neurais Artificiais. Entradas: X0 = 0 X1 = 1 X2 = 1 Pesos: W0 = 0.3 W1 = 0.1 W2 = 0.6 SIGMA (função de soma): U = (X0 * W0) + (X1 * W1) + (X2 * W2) U = 0 + 0.1 + 0.6 U = 0.7 F. Transf. (Y): SE (U > 0.5) Y = 1.0 SENAO Y = 0.0 X0 X1 X2 S. Esperada 0 1 1 0 1 1 1 1
  16. 16. Treinar: Redes Neurais Artificiais. Entradas: X0 = 0 X1 = 1 X2 = 1 Pesos: W0 = 0.3 W1 = 0.1 W2 = 0.6 SIGMA (função de soma): U = (X0 * W0) + (X1 * W1) + (X2 * W2) U = 0 + 0.1 + 0.6 U = 0.7 F. Transf. (Y): SE (U > 0.5) Y = 1.0 SENAO Y = 0.0 X0 X1 X2 S. Esperada 0 1 1 0 1 1 1 1
  17. 17. Treinar: Redes Neurais Artificiais. Entradas: X0 = 0 X1 = 1 X2 = 1 Pesos: W0 = 0.3 W1 = 0.1 W2 = 0.6 SIGMA (função de soma): U = (X0 * W0) + (X1 * W1) + (X2 * W2) U = 0 + 0.1 + 0.6 U = 0.7 F. Transf. (Y): SE (U > 0.5) Y = 1.0 SENAO Y = 0.0 X0 X1 X2 S. Esperada 0 1 1 0 1 1 1 1 Erro 0 – 1 = -1
  18. 18. Treinar: Redes Neurais Artificiais. Entradas: X0 = 1 X1 = 1 X2 = 1 Pesos: W0 = 0.3 W1 = 0.1 W2 = 0.6 SIGMA (função de soma): U = (X0 * W0) + (X1 * W1) + (X2 * W2) U = 0.3 + 0.1 + 0.6 U = 1 F. Transf. (Y): SE (U > 0.5) Y = 1.0 SENAO Y = 0.0 X0 X1 X2 S. Esperada 0 1 1 0 1 1 1 1 Erro 0 – 1 = -1
  19. 19. Treinar: Redes Neurais Artificiais. Entradas: X0 = 1 X1 = 1 X2 = 1 Pesos: W0 = 0.3 W1 = 0.1 W2 = 0.6 SIGMA (função de soma): U = (X0 * W0) + (X1 * W1) + (X2 * W2) U = 0.3 + 0.1 + 0.6 U = 1 F. Transf. (Y): SE (U > 0.5) Y = 1.0 SENAO Y = 0.0 X0 X1 X2 S. Esperada 0 1 1 0 1 1 1 1 Erro 0 – 1 = -1 1 – 1 = 0
  20. 20. A rede acertou 50%
  21. 21. Mexer nos pesos!
  22. 22. Treinar: Redes Neurais Artificiais. Entradas: X0 = 0 X1 = 1 X2 = 1 Pesos: W0 = 0.3 W1 = 0.1 W2 = 0.6 SIGMA (função de soma): U = (X0 * W0) + (X1 * W1) + (X2 * W2) U = 0 + 0.1 + 0.6 U = 0.7 F. Transf. (Y): SE (U > 0.5) Y = 1.0 SENAO Y = 0.0 X0 X1 X2 S. Esperada 0 1 1 0 1 1 1 1
  23. 23. Treinar: Redes Neurais Artificiais. Entradas: X0 = 0 X1 = 1 X2 = 1 Pesos: W0 = 0.1 W1 = 0.2 W2 = 0.3 SIGMA (função de soma): U = (X0 * W0) + (X1 * W1) + (X2 * W2) U = 0 + 0.2 + 0.3 U = 0.5 F. Transf. (Y): SE (U > 0.5) Y = 1.0 SENAO Y = 0.0 X0 X1 X2 S. Esperada 0 1 1 0 1 1 1 1 Erro 0 – 0 = 0
  24. 24. Treinar: Redes Neurais Artificiais. Entradas: X0 = 1 X1 = 1 X2 = 1 Pesos: W0 = 0.1 W1 = 0.2 W2 = 0.3 SIGMA (função de soma): U = (X0 * W0) + (X1 * W1) + (X2 * W2) U = 0.1 + 0.2 + 0.3 U = 0.6 F. Transf. (Y): SE (U > 0.5) Y = 1.0 SENAO Y = 0.0 X0 X1 X2 S. Esperada 0 1 1 0 1 1 1 1 Erro 0 – 0 = 0 1 – 1 = 0
  25. 25. Rede Neural: Redes Neurais Artificiais.
  26. 26. Como fica?
  27. 27. Neurônio Redes Neurais Artificiais.
  28. 28. Rede Neural: Redes Neurais Artificiais.
  29. 29. Camada Redes Neurais Artificiais.
  30. 30. Rede Neural: Redes Neurais Artificiais.
  31. 31. Rede Neural Redes Neurais Artificiais.
  32. 32. Exemplo de utilização
  33. 33. Classificar perfil de risco
  34. 34. Perfil de risco: Redes Neurais Artificiais. SEXO IDADE E. CIVIL USA P/ TRABALHAR FILHOS M JOVEM SOL SIM NAO M ADULTO SOL SIM NAO F ADULTO CAS SIM SIM M IDOSO CAS NAO SIM F JOVEM SOL SIM NAO M JOVEM CAS SIM SIM F IDOSO CAS NAO SIM
  35. 35. Perfil de risco: Redes Neurais Artificiais. SEXO IDADE E. CIVIL USA P/ TRABALHAR FILHOS RISCO 0 0 0 1 0 1 0 0.5 0 1 0 1 1 0.5 1 1 1 0 0 1 1 0 1 0 1 0 0 1 0 1 0 0 1 1 1 0 1 1 1 0 1 0
  36. 36. Código
  37. 37. Case: Portal de vagas.
  38. 38. Redes Neurais Artificiais. Case: Como treinar? - Não existia volume suficiente de dados para treinamento; ● Definimos um conjunto de regras “estáticas” para relacionar os candidatos e as vagas de emprego. Atribuímos um peso para cada informação do currículo do candidato. ● Também adicionamos um “fator de relevância”, que crescia de acordo o “feedback” dos usuários. Essa informação foi utilizada para calcular a “similaridade / aderência” do candidato a vaga.
  39. 39. Redes Neurais Artificiais. Case: Como treinar?
  40. 40. Resultados
  41. 41. Redes Neurais Artificiais. Case: Resultados ● No início o sistema se baseava em regras estáticas para recomendação, após um período de uso passou a recomendar candidatos de acordo com as subjetividades / critérios de cada empresa; ● Trouxe mais agilidade e assertividade ao processo de contratação. ● Mesmo que as subjetividades / critérios de contratação mudem, o sistema será capaz de se adaptar ao novo cenário.
  42. 42. Redes Neurais Artificiais. Cuidados: ● Treinamento: ● Treinamento on-line nem sempre é possível; ● Algumas API's não oferecem acesso ao conhecimento da rede neural (vetores), neste caso é preciso serializar objetos para o repositório de dados; ● Importante separar seu conjunto de dados entre treino e teste (Cross Validation). Essa é uma forma de avaliar a capacidade de generalização da rede neural; ● Tuning: ● Eliminar redundâncias do conjunto de treino; ● Algumas API's não permitem “parametrizar” variáveis internas do algoritmo, que poderiam melhorar o desempenho e performance.
  43. 43. Redes Neurais Artificiais. Conclusões: ● Seu sistema pode começar com regras “estáticas” e “aprender” com os usuários, dando mais relevância às regras “aprendidas”. ● O “treinamento contínuo” trazido pelos mecanismos de feedback permite que as aplicações acompanhem as tendências / mudanças do negócio. Isso aumenta a efetividade do sistema e diminui o número de “chamados” ao TI para acrescentar “regrinhas” :) ● API's são estáveis bem documentadas, no entanto você pode “sofrer” com a falta de parametrização e o acesso aos dados internos do algoritmo. ● A escolha do algoritmo de aprendizado de máquina não precisa se restringir às RNA. Existem outros algoritmos com melhor performance em problemas específicos.
  44. 44. Obrigado!

×