Introdução O que é computação?. - ppt carregar
Introdução O que é computação?.
PublicouKauã Hiza Alterado mais de 4 anos atrás
Apresentação em tema: "Introdução O que é computação?."— Transcrição da apresentação:
1 Introdução O que é computação?
2 Funções computáveis e não computáveis
3 A estrutura do cérebro aproximadamente 1010 neurônios
cada um conectado com cerca de 104 outros
4 Ativação de um neurônio
ativo Sinal de Saída inativo Nível de Entrada limiar
5 Aprendizagem em sistemas biológicos
6 Vetores de características e espaços de estados
7 Funções discriminantes
8 Técnicas de classificação: vizinho mais próximo
9 Medidas de distância entre vetores
Distância de Hamming = Distância Euclidiana =
10 Classificadores lineares
11 Técnicas estatísticas: classificação Bayesiana
Importante técnica analítica que facilita o entendimento da natureza estatística dos dados Baseia-se na teoria estatística de probabilidades e probabilidades condicionais Em reconhecimento de padrões, medições são feitas sobre os padrões (componentes do vetor de características) a fim de se obter uma estimativa da probabilidade de um padrão pertencer a uma classe particular. Mais formalmente, seja Gi (i=1,2,...,n) a lista de possíveis grupos ou classes, define-se a probabilidade de um padrão pertencer a uma classe como sendo P(Gi), onde 0  P(Gi)  1
12 O uso de probabilidades condicionais permite a inclusão de conhecimento prévio sobre o problema de forma a melhorar a estimativa de um padrão pertencer a uma dada classe Dados dois eventos X e Y, a probabilidade condicional é definida como sendo a probabilidade do evento Y dada a ocorrência do evento X: P(Y |X) Em reconhecimento de padrões, o conhecimento prévio que é combinado com a função de probabilidade da classe são as medições de dados obtidas para o padrão, ou seja, o vetor de características X = (x1, x2 , ..., xn ) Assim, o problema de classificação de padrões pode ser enunciado como: Considerando um conjunto de medições, X, qual é a probabilidade dele pertencer à classe Gi , ou seja P(Gi |X) ?
13 Regra de Bayes Decida por x pertencer à classe i se:
P(Gi |X) > P(Gj |X) para i=1,2,...,n i  j Como estimar as probabilidades condicionais? Fazendo suposições sobre os dados de padrões Descrevendo distribuições desconhecidas através de modelos Dado que se sabe que o padrão deva pertencer a um dos n grupos, então define-se a probabilidade de se se obter aquele padrão em cada um dos grupos P(X | Gi) P(Gi |X) = P(X | Gi ) . P(Gi) / ( j P(X | Gj) . P(Gj) )
14 Outras técnicas estatísticas
EM algorithm: Expectation-Maximisation Support Vector Machines
15 Perceptrons Modelando um único neurônio  ... y w0 w1 w2 w3 wn x0 x1
16 Funções de ativação
17 Funções de ativação
18 Funções de ativação
19 Funções de ativação
20 Aprendizagem do perceptron
1. Inicializar pesos e limiar Definir wi(t), (0  i  n) como o peso da entrada i no tempo t e w0 como sendo -, o limiar, e x0=1 Ajustar wi(0) com pequenos valores randômicos 2. Apresentar entradas x0, x1, ..., xn e saída desejada d(t) 3. Calcular a saída do neurônio 4. Adaptar os pesos se correto	wi(t+1) = wi(t) se saída=0, mas devia ser 1 wi(t+1) = wi(t)+xi(t) se saída=1, mas devia ser 0	wi(t+1) = wi(t)-xi(t)
21 Modificações da adaptação dos pesos
4. Adaptar os pesos se correto	wi(t+1) = wi(t) se saída=0, mas devia ser 1 wi(t+1) =wi(t)+xi(t) se saída=1, mas devia ser 0	wi(t+1) =wi(t)-xi(t) onde 0    1 controla a taxa de adaptação do peso 4. Adaptar os pesos - regra delta de Widrow-Hoff  = d(t) - y(t) wi(t+1) = wi(t) +   xi(t) Neurônios com este algoritmo de aprendizagem: ADALINE Uso de entradas bipolares acelera o treinamento, por que?
22 Limitações dos perceptrons de 1 camada
Foi provado (Rosemblatt) que se for possível classificar linearmente um conjunto de entradas, então uma rede de perceptrons pode aprender a solução Um perceptron tenta encontrar uma reta que separa as classes de padrões Porém há situações em que a separação entre as classes precisa ser muito mais complexa do que uma simples reta, por exemplo, o problema do XOR: linearmente inseparável X Y Z 1 1
23 Perceptron de múltiplas camadas
Como resolver o problema de ser incapaz de resolver problemas linearmente inseparáveis com o perceptron? Uma solução seria usar vários perceptrons, cada qual encarregado de separar várias pequenas seções linearmente separáveis das entradas, e combinar as saídas em outro perceptron que daria o resultado da classificação final
24 Perceptron de múltiplas camadas
O problema com este arranjo em camadas é que os neurônios não podem aprender usando a aprendizagem do perceptron Os neurônios da primeira camada recebem as entradas diretamente, mas os da segunda camada não conhecem o estado das entradas reais, apenas o resultado do processamento pela 1a camada Como o aprendizado de perceptrons corresponde ao reforço de conexões entre entradas ativas e neurônios ativos, seria impossível reforçar as partes corretas da rede, uma vez que as entradas são mascaradas pelas camadas intermediárias
25 A solução Usar função de ativação contínua ao invés de binária permite ter-se uma idéia mais realística das entradas, por exemplo, sigmóide ou semi-linear. f(net) = 1 / (1+ e -z . net)
26 Arquitetura Saída Entrada Escondida
27 A solução Algoritmo de aprendizagem:
1. Iniciar pesos e limiar para pequenos valores randômicos 2. Apresentar entrada e saída desejada Xp=x0,x1,...,xn-1, Tp=t0,t1,...,tm-1 3. Calcular as saídas da rede, cada camada produz: e passa os resultados como entradas para a próxima camada. As saídas da última camada são opj 4. Adaptar os pesos
28 Algoritmo de aprendizagem (backpropagation):
4. Adaptar os pesos, começar na camada de saída e prosseguir de trás para frente wij(t+1) = wij(t) +  pj opj Para neurônios de saída: pj = z opj (1 - opj) (tpj - opj) Para neurônios de camadas escondidas pj = z opj (1 - opj) k pk wjk