600 likes | 686 Views
Inte l ig ênc i a A r t i fi c ia l : U ma Ab o rd a g em. d e Ap r en d i zad o d e M áquin a. Mé t o d o s B a s ead o s e m O timiza ç ão. Mét o d o s B a seados em O tim i zaç ã o. A l gu m a s t écn i cas d e A M bu s cam h i pó t e s e
E N D
Inteligência Artificial: Uma Abordagem de AprendizadodeMáquina Métodos Baseados em Otimização
Métodos Baseados em Otimização Algumas técnicas de AM buscam hipótese recorrendo àotimizaçãodeumafunção: Ex.erro médio quadrático Em problemas supervisionados,rótulo dosobjetos é consideradona formulação Estudaremos duastécnicas: RedesNeurais Artificiais (RNAs) Máquinas de Vetores deSuporte(SVMs) Support Vector Machines
Redes Neurais Artificiais Cérebro humanoé responsável pelo proces- samentoecontroledediversas informações Realizamos açõesquerequerematenção adiversos eventos aomesmo tempoe processamentosvariados Ex.pegarobjeto, caminhar, envolvem açãodediversos componentes, comomemória,coordenação, aprendizado Motivação naconstrução demáquinas inteligentes 3 André Ponce de Leon de Carvalho
Redes Neurais Artificiais Sistemas distribuídos inspirados naestrutura e funcionamento dosistemanervoso Objetivo: simular capacidade deaprendizado do cérebro na aquisição de conhecimento Compostas porváriasunidadesdeprocessamento (“neurônios”) Interligadaspor umgrande númerodeconexões (“sinapses”) 4 André Ponce de Leon de Carvalho
Histórico 1940 1950 1960 1970 1980... 1943 Primeiromodelo de neurônio artificial W. McCulloch e W. Pitts (neurônio MCP) McCulloch: psicólogo e neurofisiologista Pitts: matemático
Histórico 1940 1950 1960 1970 1980... 1949 Primeirotrabalhodemonstrandoaprendizado em redes neuraisartificiais(D. Hebb) Conseguido atravésde alteraçõesnospesos de entradadosneurônios Regra de Hebb: baseada no reforçodasligações entre neurôniosexcitados
Histórico 1940 1950 1960 1970 1980... 1958 Modelo de RNA Perceptron de F. Rosenblatt Sinapsesajustáveis com neurônios MCP poderiam ser treinadaspara classificação Propôs algoritmo de treinamento
Histórico 1940 1950 1960 1970 1980... 1969 Artigo de Minskye Papert Perceptron de Rosenblatt nãoé algunsproblemas simples capazde resolver (Perceptron simplesé limitado àresolução de pro- blemaslinearmente separáveis)
Histórico 1940 1950 1960 1970 1980... Década de 70 abordagem conexionista adormecida Algunspoucos trabalhosimportantes: • • • Redes sem peso Sistemasauto-adaptativos Memóriasassociativase modelos auto-organizáveis
Histórico 1940 1950 1960 1970 1980... Década de 80:ressurgimento 1982 J. Hopfield: propriedades RNAs– relação comsistemas associativas físicos das 1986 D. E. Rumelhart e J. L. McClelland Algoritmo de treinamentoback-propagation para RNAsmulti-camadas resolução deproblemas mais complexos
Histórico 1940 1950 1960 1970 1980... Interessesmais recentesem RNAs: • • • • Implementação em hardware Modelosmaispróximosao biológico Sistemasneurais híbridos Busca de algoritmosde treinamentoeficientes
Redes Biológicas Cérebro humano: 1011neurônios Cada neurônio processa e secomunica com milharesde outros continuamente eem paralelo Cérebro: responsávelpor funçõescognitivase execução defunções sensoriomotorase autônomas Temcapacidade de reconhecer padrõeserelacioná-los, usare armazenarconhecimento por experiênciae interpretar observações
Neurônio Natural Um neurônio simplificado: Dendritos Axônio Corpo Sinal Sinapse
Neurônio Dendritos são prolongamen- Osommacoleta, combinae tosnumerosos dosneurô- processa as informações cepção de estímulos nervosos Manda informaçõesjáproces- Estesestímulos podemser do sadas parao axônio meio ambiente, como de outrosneurônios Cadadendritocarregaosinal elétrico parao corpo (somma) dacélula principal nios, especializados nare- recebidas dosdendritos
Neurônio Concentrações depotássio(negativo)e só- dio (positivo)criamdiferenças de potencial V +40 mV Tempo - 50 mV - 70 mV Disparo Repouso
Neurônio Axônios sãoprolongamentos Sinapse é onomedadoà co- dosneurônios,responsá- nexão entre neurônios veispelaconduçãodos impulsoselétricos até outro quecaracterizaa força da conexão entre dois São responsáveispela neurônios transmissãode estímulos Ossinais são transportados Alguns axiôniosde um atravésdesinapsespor humano adulto podem substânciasquímicascha- chegar amaisde ummetro madasneurotransmissores decomprimento Cadasinapsetem um peso, local maisdistante
Redes Biológicas Neurônios são bem maislentosqueoscircuitos elétricos, mas o cérebro é capaz de realizar muitas tarefasmaisrápidoque qualquer computador Redes neuraisbiológicas trabalham deformamassiva- mente paralela Neurônios estão organizados em cercade 1000 nódu- los principais,cada um com 500 redes neurais E cada neurônio podeestarligadoa centenasou até milhares deoutros neurônios
Rede Neural Artificial UmaRede Neural Artificial (RNA)é umsistema computacional queapresentaummodeloinspirado na estrutura neural do cérebrohumano Componentes básicos: Neurônio: unidadecomputacional básica da rede Arquitetura:estruturatopológica de como os neurônios são conectados Aprendizagem:processoque adapta a rededemodoa computarumafunção desejada,ourealizar umatarefa
Neurônio artificial Unidadede processamento fundamental de uma RNA Entradas Pesos x Saída x2 y xd Sinal Objeto x com d atributosfornece entrada Pesospara asentradassão dadospelo vetorw Érealizadaumasomaponderadadaentrada,àqualéaplicadauma função de ativação, que fornecea saídafinal (previsão) 1 ... w 1 fa ∑ w2 w d
Neurônio artificial Entradatotal doneurônio: x1 w x2 w wd xd Conexõespodem ser excitatórias (peso >0) ouinibitórias (peso <0) 1 d y u xjwj j j 2 a
Neurônio artificial
Funções de ativação Funções deativaçãomais comuns: Linear:f(u) = u Threshold oulimiar:f(u)= 1 ,se u≥Φ Sigmoide Logística:f(u)=1/(1+ e- u) Tangentehiperbólica:f(u) =(1- e-u) (1+e-u) a a 0, se u (ou -1) a a
Função linear f(u) u f(u) =u
Função limiar f(u) u 1, se u 0, se u f(u) =
Função sigmoide logística f(u) 1 f(u) =1/(1 +e- u) Função delimiardiferenciável
Função tangente hiperbólica f(u) +1 (1+e- u) -1 - u (1- e ) f(u) =
Topologia Definida por: Número decamadas daRNA Número deneurôniosemcada camada Grau deconectividade dos neurônios Presençaou não de conexõesde retropropagação
Topologia Neurôniospodem estardispostosemcamadas Neurôniopodereceber como entradaa saída de neurônios dacamadaanterior Eenviarsuasaídaparaentrada de neurônios em camada seguinte camada de camada de conexões camadas intermediárias entrada saída
Topologia Rede multicamadas: Podeterdiferentespadrõesdeconexõesentreneurônios: Completamente co- Parcialmenteco- Localmente co- nectada:neurônios nectada:neurônios nectada:neurônios estão todosconecta- estão conectadosa conectadosencon- dosaosda camada apenasalgunsneu- tram-seem uma re- anterior/seguinte rônios da camada gião específica anterior/seguinte
Topologia Rede multicamadas: Podeterdiferentesarranjosdeconexões: Redesfeedforward: Redes recorrentes: Grades:matrizde processamento da ca- apresentam cone- nodos mada deentrada à de xõesderetroalimen- saída tação (uso em siste- Tipo maiscomum masdinâmicos) 0 1 0 0 1 0
Topologia Escolhasdependem deváriosfatores: Complexidade do problema Dimensionalidade da entrada Característicasdinâmicasou estáticas Conhecimento a priori Representatividadedosdados
Aprendizado Ajustedospesosdas conexões ( w(t+1)=w(t) + Δw(t) Algoritmos deaprendizado Conjunto de regrasbem definidaspara ensinar a rede a resolver umdado problema Divergem na maneiracomo ospesos são ajustados EmcomoΔwé calculado
Aprendizado competição entre neurônios ajustar pesos parareduzir sosajustados,geralmente (supervisionado) Hebbiano: baseadosnaregra (nãosupervisionado) Termodinâmico(Boltzmann): vos, aconexãoentre eles seados emprincípiosob- (nãosupervisionado)
Perceptron DesenvolvidaporRosemblat em1958 Utilizamodelo deMcCulloch-Pitts como neurônio Redemais simples para classificaçãode dados linearmente separáveis Dadosquepodemser separados por um hiperplano
Perceptron Na realidade, é RNA comumaúnica camada Estado de ativação 1= ativo 0= inativo Pode ser usado +1 e -1 também Aprendizadoporcorreção de erro Obter valor de incrementoΔw(t)para quevalor w(t+1) = w(t)+ Δw(t)esteja maispróximo da(solução desejada quew(t)
Aprendizado Perceptron Considereum neurônioarbitrário Com entradas x’e pesos w’ Ativação = iw’ix’i= w’ .x’ Produto interno Condiçãodedisparo: w’ . x’ =θ Ouw’.x’- θ=0 Limiarde ativação
Aprendizado Perceptron w’ . x’ - θ= 0 éequivalente aadicionarum peso w0comvalor - θàsentradas do neurônio econectá-lo aumaentradacom valorfixo x0=1 )w=(-θ, w1, ...,wn) x w1 2 2 w3 +1 1 x x3 w f x =(1, x1, ...,xn) -
Aprendizado Considereo parde treinamento {x, yd}e a saída atual darede y Erro devido à saída atual: e =yd–y y yd e 0 0 0 0 1 1 1 0 -1 1 1 0
Aprendizado y yd e 0 1 1 (w. x <0, já que y = 0 w(t) ||w|| ||x||cos( α)< 0 α= ânguloentrevetores wex .α cos(α)<0 x α> 90º
Aprendizado Mudança plausível paraw ésomá-lo a um vetor na direção de x Para modificar ângulo (
Aprendizado η= taxa deaprendizado 0 < η<1 Taxaspequenas Estimativasestáveis de peso Aprendizadolento Aprendizado rápido Taxasgrandes Captação demudançasno processo Taxas variáveis Instabilidade Maioresnocomeço
Aprendizado y yd e 1 0 -1 w. x> 0, já que y = 1 ( ||w||||x||cos( α)> 0 w(t) cos(α)> 0 . α α< 90º x
Aprendizado Mudançaplausível paraw ésubtraí-lode um vetor na direção dex Para modificar ângulo Vetorηx (w(t+1)= w(t) - ηx(t) ηx Comoe =-1,podemos escrever: w(t) w(t+1)= w(t) + ηex(t) .w(t+1) x ( Assim, w(t) =- x(t)
Aprendizado Paraduassituaçõesde erropossíveis, chegou-se à mesmaregrade atualização: ( w(t+1) =w(t)+ ηex(t) Logo, Δw(t)= ηex(t),se y ≠yd 0,se y = yd Ajuste depesosdeve ser proporcional aoproduto do erro pelo valor deentrada dasinapse
Aprendizado por correção de erro Superfície de erro Superfície multi-dimensional representando gráfico da função de custosX peso Objetivodo aprendizado: Apartir de umponto qualquer dasuperfície,mover em direção aummínimo global
Superfície de erro Erro mínimo global Parâmetros livres
Superfície de erro Erro X mínimos locais mínimo global Parâmetros livres
Algoritmo de treinamento Perceptron Teoremade convergência: Se é possível classificar um conjunto de entradas linearmente, umarede Perceptron fará a classificação Em um númerofinito depassos Mastempo podeser proibitivo! 21/11/11 48 Redes Neurais-AndréPonce deLeon F. de
Algoritmo de treinamento Algoritmo de treinamento de RNA Perceptron Entrada: Conjunto detreinamento D= {(x,y), i = 1,...n} i i Saída: RedePerceptroncom pesos ajustados Iniciar pesos darede com valoresbaixos repita paracadaxfaça i Calcularvalor dasaída produzidapela rede f(x) i erroe= y- f(x) i i se e> 0então ηex(t) Ajustar pesos do neurônio w(t+1)= w(t) + ε) até que erro = 0 (ouerro< 21/11/11 49 Redes Neurais-AndréPonce deLeon F. de
Algoritmo de treinamento Vetor peso ideal 6 5 3 4 2 1 21/11/11 50 Redes Neurais-AndréPonce deLeon F. de