• Nenhum resultado encontrado

aula01 cap1 introducao

N/A
N/A
Protected

Academic year: 2021

Share "aula01 cap1 introducao"

Copied!
55
0
0

Texto

(1)

Tópicos  Especiais  em  Computação:  Aprendizado   de  Máquina  

Cap  1:  Introdução      

Prof.  Jefferson  Morais   Email:  jmorais@ufpa.br  

UNIVERSIDADE  FEDERAL  DO  PARÁ  

INSTITUTO  DE  CIÊNCIAS  EXATAS  E  NATURAIS  

(2)

Agenda  

! 

Mo*vação  

! 

Contextualização  

! 

Definição  de  aprendizado  de  máquina  

! 

Recursos  

(3)

Mo*vação  

(4)

Mo*vação  

! 

Por  que  AM  é  tão  importante  hoje?  

"   AM  cresceu  além  do  campo  da  Inteligência  Ar*ficial  (IA)  

"   Antes:  construir  máquinas  inteligentes    

!  Programar  uma  máquina  para  fazer  tarefas  básicas  tais  como  

encontrar  o  caminho  mais  curto  entre  duas  cidades  A  e  B  

!  Não  se  sabia  resolver  problemas  mais  interessantes  tais  como:  

pesquisa  na  web  ou  marcações  em  fotos  ou  an*-­‐spam   " Hoje:  u*liza-­‐se  aprendizado  de  Máquina  

!  Fazer  com  que  a  máquina  aprendesse  por  si  mesma  

!  Então,  AM  foi  desenvolvida  como  uma  nova  capacidade  para  os  

(5)

Mo*vação  

! 

Escrever  um  programa  de  computador  que  

" 

 Reconheça  pessoas  pelo  rosto  

!  Problemas:  

" Diferentes  expressões  faciais  

" Alterações  de  face  (ex.  Óculos,  bigode)  

" Cortes  de  cabelo  

" Que  caracterís*cas  considerar?  

(6)

Mo*vação  

! 

Escrever  um  programa  de  computador  que  

" 

Faça  diagnósXco  de  pacientes  por  sintomas  e  

exames  

!  Médico:  formação  e  experiência  

" 

 Responda  questões  sobre  vendas  como  

!  Quais  produtos  são  vendidos  em  conjunto?  

!  Que  produto  recomendar  a  um  cliente?  

(7)

Mo*vação  

! 

Escrever  um  programa  de  computador  que  

(8)

Histórico  de  AM  

! 

1950s  –  1960s  

"   Um  período  exploratório  quando  muitas  técnicas  gerais  

nasceram.  A  pesquisa  inicial  era  inspirada  pela  biologia  e   psicologia  

" Arthur  Samuel  (1952)  desenvolveu  o  programa  jogador  de  

damas  

" Rosenblat  (1957)  desenvolveu  o  “perceptron”,  o  qual  foi  

modelado  a  par*r  dos  chamados  neurônios  ar*ficiais.  Foi   o  percursor  para  o  trabalho  posterior  em  redes  neurais.  

(9)

Histórico  de  AM  

! 

1950s  –  1960s  

" 1959:  modelo  Pandemonium  de  Selfridge   !  Reconhecimento  de  padrões  

!  Padrão  é  reconhecido  em  partes  antes  do  total  

!  Aprendizado  por  meio  de  ajustes  de  pesos  

" 1969:  Minsky  e  Papert,  escrevem  um  ar*go  provando  as  

limitações  do  Perceptron,  o  que  desencorajou  pesquisas   nessa  área  por  quase  20  anos  

(10)

Histórico  de  AM  

! 

1970s  

" Caracterizado  pelo  desenvolvimento  de  algoritmos  mais  

prá*cos,  muitas  vezes  através  de  técnicas  simbólicas  

" Sistemas  especialistas  e  o  gargalo  de  aquisiçãode  

conhecimento  

(11)

Histórico  de  AM  

! 

1980s  

" Surgimento  de  novas  técnicas  e  maior  ênfase  em  

metodologias  de  avaliação  

!  Aprendizado  de  Regras,  EBL  (Explana'on-­‐based  Learning  

" 1986:  Ressurgimento  das  Redes  Neurais  com  o  algoritmo  

backpropaga'on  proposto  por  Rumelhart  superando  as  

(12)

Histórico  de  AM  

! 

1990s    

" Sistemas  inteligentes  híbridos,  aprendizado  por  reforço,  

aprendizado  por  redes  Bayesianas,  aplicações  em  robó*ca,   agentes  de  solware  adapta*vos  e  aplicações  na  Web,  

induc've  logic  programming  

" Mineração  de  dados  (Data  Mining  -­‐  1996)  emerge  como  

uma  aplicação  importante  para  muitas  a*vidades   comerciais  

(13)

Histórico  de  AM  

! 

2000s  

" Máquinas  de  Vetores  de  Suporte  (Support  Vector  

Machines)  

" Modelos  Gráficos  Probabilis*cos  

" Aplicações  em:  

!  Sistemas  de  Computadores  

!  Engenharia  de  Solware  

!  Segurança  (detecção  de  intrusão,  virus  e  worm)  

!  Mineração  da  Web  

!  Gerenciamento  de  E-­‐mail  

!  Bioinformá*ca  

(14)
(15)

O  que  é  aprendizado  de  máquina?  

! 

Arthur  Samuel  (1959).  Aprendizado  de  Máquina:  

Campo  de  estudo  que  fornece  aos  computadores  a  

habilidade  de  aprender  sem  está  explicitamente  

programado  para  isso  

(16)

O  que  é  aprendizado  de  máquina?  

! 

Tom  Mitchell  (1998)  coloca  muito  bem  o  conceito  de  

Aprendizado  de  Máquia:  Um  programa  de  

computador  aprende  a  par*r  da  Experiência  E,  em  

relação  a  uma  classe  de  tarefas  T,  com  medida  de  

desempenho  P,  se  seu  desempenho  em  T,  medido  

por  P,  melhora  com  E  

! 

Lorena,  et  al.  (2011):  Algoritmos  de  AM  induzem  

uma  função  ou  hipótese  capaz  de  resolver  o  

problema  a  par*r  de  exemplos  (instâncias)  do  

problema  a  ser  resolvido  

(17)

Exemplo  1  

! 

Vamos  supor  o  problema  de  aprender  a  jogar  

damas.  Iden*fique  a  tarefa  T,  a  experiência  E  

e  o  desempho  P  para  este  problema  

" 

Porcentagem  de  vitóras    contra  oponentes  

" 

Jogar  damas  

" 

Pra*car  jogando  

P

E

(18)

Exemplo  2  

!  Vamos  supor  que  seu  programa  de  email  favorito  “observa”   quais  emails  você  marca  ou  não  marca  como  spam.  Em  

seguida  com  base  em  suas  observações  (aprendizado)  ele   consegue  uma  forma  de  melhorar  o  filtro  de  spam.  Defina   qual  a  tarefa  T,  a  experiência  E  e  o  desempenho  P  para  o   cenário.  

"  Classificar  emails  como  spam  ou  não  spam    

"  Observar  o  conjunto  de  exemplos  de  spam  e  não  spam    

"  O  número  de  emails  corretamente  classificados  como  spam  e  não  

spam.    

T

E

P

(19)

Exemplo  3    

! 

Vamos  supor  o  problema  de  reconhecer  

manuscritos.  Defina  qual  a  tarefa  T,  a  experiência  E  e  

o  desempenho  P  para  o  cenário.  

"   Exemplo  de  dígitos  manuscritos  com  as  respec*vas  

classificações    

" Porcentagem  de  dígitos  corretamente  iden*ficados  

" Reconhecer  e  classificar  dígitos  manuscritos  dentro  de  

imagens    

P

E

(20)

Exemplo  4    

! 

Vamos  supor  o  problema  da  direção  autônoma  de  

um  carro.  Defina  qual  a  tarefa  T,  a  experiência  E  e  o  

desempenho  P  para  o  cenário.  

"   Sequência  de  imagens  e  comandos  de  direção  registrados  

observando  um  condutor  humano  

" Distância  média  percorrida  antes  de  um  erro  

" Dirigir  em  um  rodovia  pública  usando  sensores  de  visão  

P

E

(21)

Exemplo  5    

! 

Vamos  supor  o  problema  da  análise  de  faltas  do  *po  

curto-­‐circuito  em  linhas  de  transmissão  

" Sequências  de  formas  de  onda  de  tensão  e  corrente  

rotuladas  com  o  respec*vo  *po  de  falta  

" O  número  de  faltas  iden*ficadas  corretamente  

" Classificar  uma  falta  do  *po  curto-­‐circuito  em  um  dos  10  

*pos  possíveis:  AT,  BT,  CT,  AB,  AC,  BC,  ABT,  ACT,  BCT,  ABC  

P

E

(22)

Inferência  indu*va  

! 

Inferência  

" 

 Ato  de  derivar  conclusões  a  par*r  do  

conhecimento  e  de  evidências  disponíveis  (  

! 

Na  inferência  indu*va    

" 

Conclusões  são  derivadas  da  observação  

sistemá*ca  de  fenômenos  empíricos  e  de  

experimentos  

" 

Em  outras  palavras:  Faz-­‐se  um  raciocínio  do  geral  

(23)

Inferência  indu*va  

! 

A  inferência  indu*va  pode  ser  sumarizada  a  

grosso  modo  nos  seguintes  passos  

1. 

 Observar  um  fenômeno    

2. 

 Construir  um  modelo  daquele  fenômeno  

3. 

 Realizar  predições  usando  esse  modelo  

(24)

Inferência  indu*va  

! 

Exemplo    

"   Observar-­‐se  que:  

!  1986  -­‐  Todos  os  pacientes  com  déficit  de  atenção  atendidos  

sofriam  de  ansiedade  

!  1987  -­‐  Todos  os  pacientes  com  déficit  de  atenção  atendidos  

sofriam  de  ansiedade  

!  ...  

!  Pode-­‐se  inferir  por  indução  que  todo  paciente  que  tem  déficit  de  

atenção  sofre  de  ansiedade  

!  Óbvio:  isso  pode  ou  não  ser  verdade,  mas  pode  ser  considerada  

uma  conclusão  

(25)

Conjunto  de  dados  

! 

Experiência  pode  ser  provida  por  um  conjunto  

de  dados  (de  treinamento)  

(26)

Conjunto  de  dados  

! 

Base  de  dados  de  um  hospital  

! 

Meta:  induzir  uma  hipótese  para  fazer  diagnós*cos  

(27)

Conjunto  de  dados:  hospital  

27

Cada  linha  é  um  dado  (objeto,   instância,  exemplo,  padrão  ou   registro)  

Cada  coluna  é  uma  caracterísXca  (atributo,  

parâmetro,  campo  ou  variável)  que  descreve  os   principais  aspectos  de  um  objeto  

Atributo  ou  parâmetro  de  saída  (alvo):   presente  em  algumas  tarefas  (ex.  

Classificação),  seus  valores  devem  ser   esXmados  usando  outros  atributos  

(28)

AM:  Mul*disciplinar  

Aprendizado  de   Máquina   Probabilidade   e  EstadsXca   Teoria  da   computação   Neurociência   Biologia  

….  

(29)

Tipos  de  Aprendizado  de  Máquina  

! 

Predi*vo  (Supervisionado)  

" Obje*vo:  encontrar  uma  função  (modelo  ou  hipótese)  que  

possa  ser  u*lizado  para  prever  um  rótulo  ou  valor  para   novos  dados  

" Objetos  na  forma  de  (entrada,  saída)  

! 

Descri*vo  (Não-­‐supervisionado)  

" Obje*vo:  explorar  ou  descrever  um  conjunto  de  dados.  

Encontrar  grupos  de  objetos  semelhantes    

(30)

Tipos  de  Aprendizado:  Hierarquia  

Aprendizado   Indu*vo  

Supervisionado  

(Predi*vo)   Não  Supervisionado  (Descri*vo)  

Modelo  PrediXvo  também  provê  descrição  dos  dados  e  modelo   DescriXvo  pode  prover  previsões  após  validado  

(31)

Aprendizado  Supervisionado  

!  O  algoritmo  de  aprendizado  (indutor)  recebe  um  conjunto  de   exemplos  de  treinamento  para  os  quais  os  rótulos  da  classe   associada  são  conhecidos  

"  Representado  por  um  conjunto  de  pares  (x,y)  

!  Ex:  x=sintomas  e  y=diagnós*co  

!  Métodos  supervisionados  dis*nguem  pelo  *po  dos  rótulos   dos  dados  

"  Rótulos  discretos  (classificação)  

!  Ex:  diagnós*co,  bom/mau  pagador,  etc.  

"  Rótulos  conwnuos  (regressão)  

(32)

Aprendizado  Não-­‐Supervisionado  

! 

Exploram  regularidades  nos  dados  não  fazendo  uso  

de  atributos  de  saída  

! 

Tarefas  

" Sumarização:  encontrar  uma  descrição  compacta  para  os  

dados  

" Associação:  encontrar  padrões  frequentes  de  associações  

entre  atributos  

" Agrupamento:  Dados  agrupados  de  acordo  com  sua  

(33)

Hierarquia  de  Aprendizado  

Aprendizado   Indu*vo  

Supervisionado  

(Predi*vo)   Não  Supervisionado  (Descri*vo)   Classificação   Regressão  

Sumarização  

Associação   Agrupamento  

(34)

Aprendizado  por  reforço  

! 

Meta:  reforçar  ou  recompensar  ações  posi*vas  e  

punir  ações  nega*vas  

" Presença  de  um  crí*co  externo  

! 

Ex:  ensinar  um  robô  a  encontrar  a  melhor  trajetória  

entre  dois  pontos  

" Punir  a  passagem  por  trechos  pouco  promissores  

(35)

Generalização  

! 

Capacidade  de  generalização  de  uma  hipótese  

" 

Propriedade  de  con*nuar  válida  para  outros  

objetos  que  não  fazem  parte  de  seu  conjunto  de  

treinamento  

" 

Problemas  

!  Overfi&ng:  especialização  nos  dados  de  treinamento,  

não  generaliza  

!  Underfi&ng:baixa  taxa  de  acerto  mesmo  nos  dados  de  

(36)

Viés  (bias)  indu*vo  

! 

Quando  um  algoritmo  de  AM  está  aprendendo,  ele  

está  procurando  uma  hipótese,  no  espaço  possível  

de  hipóteses  

"   Que  descreva  as  relações  entre  os  dados  

" E  se  ajuste  aos  dados  de  treinamento  

! 

Cada  algoritmo  u*liza  uma  forma  ou  representação  

(viés  indu*vo)  para  descrever  a  hipótese  indu*va  

! 

O  viés  pode  ser  de  dois  *pos:  representação  ou  

(37)

Viés  (bias)  indu*vo  

! 

Viés  de  representação  ou  linguagem  

"   Define  o  espaço  de  busca  

"   Restringe  hipóteses  que  podem  ser  geradas  

Peso   Sexo   Doente Doente Saudável >=50 < 50 F M

Árvore  de  decisão  

Redes  Neurais  

(38)

Viés  (bias)  indu*vo  

! 

Viés  de  preferência  ou  busca  

"   É  a  forma  como  o  algoritmo  busca  a  hipótese  que  melhor  

se  ajusta  aos  dados  de  treinamento  

"   Preferências  de  algumas  hipóteses  sobre  outras  

!  Ex:  No  algoritmo  ID3  buscam-­‐se  árvores  de  decisão  com  poucos  

nós  

! 

O  viés  é  necessário  para  restringir  as  hipóteses  a  

serem  visitadas  no  espaço  de  busca  

(39)

Aplicações    

! 

Técnicas  de  AM  têm  sido  u*lizadas  na  solução  de  

diversos  problemas  reais  

" Primeira  etapa:  compreender  o  problema   !  Ex:  o  problema  é  descri*vo  ou  predi*vo?  

!  Quantos  e  quais  são  os  parâmetros  de  entrada?  

!  …  

" Segunda  etapa:  coletas  de  dados  sobre  o  problema  

!  Dados  possuem  diferentes  formatos:  em  geral  transformados  para  

(40)

Aplicações    

! 

Técnicas  de  AM  têm  sido  u*lizadas  na  solução  de  

diversos  problemas  reais  

" Terceira  etapa:  pré-­‐processamento  podem  ser  necessários   !  Decidir  as  operações  a  serem  realizadas  e  a  ordem    

" Quarta  etapa:  escolha  e  uso  da  técnica  de  AM   !  Ex:  disposi*vos  móveis:  pouco  uso  de  memória  

!  Necessário  entender  o  que  a  técnica  extraiu?  

!  Necessidade  de  ajustar  os  parâmetros  dos  algoritmos  

" 

 

Quinta  etapa:  avaliação  do  modelo  ob*do  

(41)

Aplicações:  Agropecuária  

! 

Embora    o  Brasil  possua  uma  grande  fa*a  do  

mercado  mundial  em  agronomia  e  pecuária,  essa  

a*vidade  poderia  ser  mais  bem  explorada  

! 

A  qualidade,  a  quan*dade  e  a  lucra*vidade  do  que  é  

produzido  associado  a  minimização  do  impacto  

ambiental  podem  se  beneficiar  da  incorporação  de  

novas  tecnologias  computacionais  que  permitam  

uma  análise  inteligente  de  dados  

(42)

Aplicações:  Bioinformá*ca  

!  Consiste  na  aplicação  de  técnicas  matemá*cas,  estaws*cas  e   computacionais  para  resolução  de  problemas  da  Biologia  

"   Foco  em  Biologia  Molecular  e  Gené*ca  

!  Espera-­‐se  ganhos  com:  

"  Melhor  compreensão  da  origem  e  mecanismos  de  doenças  

"  Formulação  de  tratamentos  médicos  mais  eficazes  

"  Desenvolvimento  de  novos  medicamentos  

"  Controle  e  melhorias  na  produção  de  alimentos  

!  Atualmente:  análise  de  grande  volume  de  dados  gerados  em   Lab.  

(43)

Aplicações:  Bioinformá*ca  

! 

Alguns  problemas  tratados:  

" Análise  da  forma  de  proteínas    

!  Destaque  para  uso  de  RNAs  e  Algoritmos  Gené*cos  

" Localização  de  proteínas  no  meio  celular     !  Classificação  

!  Destaque  para  o  uso  de  SVMs  

" Predição  da  função  de  proteínas   !  Classificação  

(44)

Aplicações:  Bioinformá*ca  

! 

Alguns  problemas  tratados:  

" Alinhamento  de  sequências  

!  Iden*ficar,  por  exemplo,  mutações  gené*cas  ou  medir  distância  

evolu*va  entre  espécies    

!  Destaque  para  uso  de  Algoritmos  Gené*cos  e  Programação  

dinâmica  

" 

 Iden*ficação  de  genes  em  sequência  de  DNA  

!  Reconhecimento  e  localização  do  gene  

!  Classificação  

(45)

Aplicações:  Bioinformá*ca  

! 

Alguns  problemas  tratados:  

" Análise  de  expressão  gênica  

!  Comparar  mudanças  de  padrão  de  expressão  

!  Classificação  e  agrupamento  

!  Destaque  para  SVMs,  agrupamentos  hierárquicos  

" Previsão  de  interação  entre  proteínas   !  Classificação  

(46)

Aplicações:  Ecologia  e  meio  

ambiente  

!  É  crescente  a  preocupação  com  a  manutenção  da  qualidade   do  meio  ambiente  no  planeta.    

"  Problemas:  desmatamento  de  florestas,  queimadas,  ex*nção  de  

espécies,  inundações  e  etc  

"   Sistemas  computacionais  baseados  em  AM  fazem  parte  das  soluções  

mais  recentes  para  lidar  com  esse  problemas  

!  Obtenção  de  modelos  que  auxiliem  em:  

"   Indicação  de  áreas  para  conservação  ambiental  

"  Avaliação  de  risco  de  espécies  invasoras  

"  Impacto  de  mudanças  ambientais  

"  Indicação  de  rotas  de  disseminação  de  doenças  

"  Teste  de  teoria  ecológicas  

(47)

Aplicações:  Energia  

! 

Uso  mais  racional  dos  recursos  disponíveis  e  

planejamento  de  expansões  

! 

Tipos  de  aplicação:  

"   Distribuição  e  transmissão  de  energia  

"   Exploração  de  energia  

" Planejamento  e  comercialização  

! 

Nessas  aplicações,  os  algoritmos  têm  sido  u*lizados  

principalmente  em  ferramentas  de  o*mização  e  de  

suporte  à  tomada  de  decisão  

(48)

Aplicações:  Finanças  

! 

Análise  de  dados  u*lizados  por  agentes  financeiros  

! 

Aplicações:  

" Análise  de  risco  de  crédito  

" Previsão  de  falências  

" Previsão  de  cotações  de  moedas  e  de  ações  

" Detecção  de  fraudes  

" Segmentação  de  mercados  

(49)

Aplicações:  Mineração  de  Dados  e  

Textos  

! 

Extrair  conhecimento  de  grandes  quan*dades  

de  dados  

! 

Aplicações:  

" 

Análise  de  bases  de  dados  de  estabelecimentos  

comerciais  (associação)  

(50)

Aplicações:  Mineração  de  Dados  e  

Textos  

! 

Extrair  conhecimento  de  grandes  quan*dades  

de  dados  

! 

Aplicações:  

" 

Análise  de  bases  de  dados  de  estabelecimentos  

comerciais  (associação)  

(51)

Aplicações:  Robó*ca  

! 

Auxílio  no  desenvolvimento  de  robôs  inteligentes  

(52)

Aplicações:  Saúde  

! 

Sistemas  de  apoio  à  tomada  de  decisão  

! 

Aplicações:  

" Controle  de  epidemias  

" Auxílio  a  exames  clínicos  

" Monitoramento  de  pacientes  

" Dosagem  de  medicamentos  

(53)

Recursos  

!  UCI  Machine  Learning  Repository  

"  h}p://archive.ics.uci.edu/ml/   !  WEKA   "  h}p://www.cs.waikato.ac.nz/ml/weka/   !  Pentaho   "  h}p://weka.pentaho.com/   !  KEEL   "  h}p://www.keel.es/   !  R  project   "  h}p://www.r-­‐project.org/  

!  MLC++,  A  Machine  Learning  Library  in  C++  

(54)

Referências  

! 

Material  de  aula  

" Profa.  Dra.  Ana  Carolina  Lorena  (UFABC)    

" Prof.  Andrew  Ng  (Standford)  

" Prof.  Dr.  Marcilio  C.  P.  Souto  

! 

Livros:      

" Inteligência  Ar*ficial:  uma  abordagem  de  Aprendizado  de  

Máquina,  2011    

(55)

A*vidade  1  

!  Faça  o  resumo  do  seguinte  ar*go:  “Some  studies  in  Machine   Learning  Using  the  Game  of  Checkers”      

!  Com  base  no  ar*go  “The  Discipline  of  Machine  Learning”  e   responda  as  seguintes  perguntas:    

"   É  possível  que  dados  não  rotulados  sejam  úteis  para  aprendizado  

supervisionado?    

"  Como  se  pode  transferir  aquilo  que  é  aprendido  em  uma  tarefa    para  

outra  tarefa  relacionada?    

"  Qual  é  a  relação  existente  entre  diferentes  algoritmos  de  aprendizado  

e  qual  deve  ser  usado?    

"  Pode-­‐se  criar  máquinas  que  nunca  param  de  aprender?  

Referências

Documentos relacionados

Hoje não existe muitos recursos próprios para os alunos com deficiência visual e os que têm ainda são pouco conhecidos pelos professores, um exemplo é o

Sem embargo, a partir desses pontos chegamos ao cumprimento dos objetivos geral, que visa analisar, com o auxílio de recursos da Teoria da Atividade, como se dão os impactos no

Contou algumas curiosidades e foi isso né, porque ele ainda estava jogando no Kansas City Chiefs, então a gente tinha bastante para falar de temporada e

A presente tese, intitulada descriminantes putativas típicas, consiste no estabelecimento de critérios bastantes para diferenciar o conhecimento da proibição

Aprimorar o hardware e o software de um robô de sumô aplicando técnicas de automação de sistemas a eventos discretos para uma resposta precisa e autônoma aos

Elaborou-se um roteiro estruturado sobre a mãe fumante com questões de identificação, sociodemográficas qual a idade materna, estado civil e nível de escolaridade e alguns

No ano de 2012 tem-se início a um ciclo de seca colocando cerca de 180 Municípios dos 223 existentes no Estado em situação crítica, uma saída emergencial para driblar a

ANOVA de modelos linear, quadrático e cúbico de regressão de dados de pré- tratamentos com ulvana (10mg/mL), 6 e 3 dias antes da inoculação com Colletotrichum lindemuthianum , em