Title: Intelig
1Universidade Federal de Campina
Grande Departamento de Sistemas e Computação
Curso de Bacharelado em Ciência da Computação
- Inteligência Artificial I
- Aprendizagem
- (Parte III)
- Prof.a Joseana Macêdo Fechine
- joseana_at_dsc.ufcg.edu.br
- Carga Horária 60 horas
2Aprendizagem
3Redes Neurais
- É uma célula do cérebro cuja principal função é
coletar, processar e disseminar sinais elétricos. - Acredita-se que a capacidade de processamento de
informações no cérebro vem de redes de neurônios.
Componentes de um neurônio
4Redes Neurais
- Componentes de um Neurônio
- Axônio transmissão de sinais a partir do corpo
celular poucas ramificações e compridos - Dendritos conduzem sinais para a célula têm
muitas ramificações (zonas receptivas) - Sinapses estruturas funcionais elementares que
mediam as conexões entre os neurônios
5Redes Neurais
- Plasticidade de um neurônio capacidade de
adaptação ao ambiente. - Mecanismos de Plasticidade (cérebro de um adulto)
- Criação de novas conexões sinápticas
- Modificação das sinapses existentes
- Plasticidade - essencial para as Redes Neurais
Artificiais
6Neurociência computacional
- Modelo matemático do neurônio criado por
McCulloch e Pitts (1943) - Interesse nas propriedades mais abstratas da RNs
- Habilidade para executar computação distribuída
- Habilidade para tolerar entradas ruidosas
- Habilidade para aprender
- Uma das formas mais populares e efetivas de
sistemas de aprendizagem
7Redes Neurais Artificiais
Inspiração Biológica
8Neurônio Artificial
- Neurônio artificial projetado por McCulloch e
Pitts (1943)
- sinais são apresentados à entrada
- cada sinal é multiplicado por um número, ou peso,
que indica a sua influência na saída da unidade - é feita a soma ponderada dos sinais que produz um
nível de atividade - se este nível de atividade exceder um certo
limite (threshold) a unidade produz uma
determinada resposta de saída.
Função de ativação
9Neurônio Artificial
- Dispara quando uma combinação linear de suas
entradas excede algum limiar.
10Redes Neurais Artificiais
- Cada unidade i calcula
- Uma soma ponderada de suas entradas
- Depois, aplica uma função de ativação g a essa
soma para derivar a saída
11A função de ativação
- g é projetada para atender a dois propósitos
- Deseja-se a unidade ativa (próxima de 1)
quando as entradas corretas forem recebidas e
inativa (próxima de 0) quando as entradas
erradas forem recebidas - A ativação precisa ser não-linear
12Neurônio Artificial
- Exemplo
- sinais de entrada X1, X2, ..., Xp (0 ou 1)
- pesos W1, W2, ..., Wp, valores reais.
- limitador t
- Neste modelo, o nível de atividade a é dado por
- a W1X1 W2X2 ... WpXp
- A saída y é dada por
- y 1, se a t ou
- y 0, se a lt t.
13Exemplos de Aplicações
- Exemplo bem simplificado suponha que você está
em uma encruzilhada com quatro caminhos a seguir,
e precisa escolher o mais fácil. - Como você nunca andou em nenhum deles, o peso de
cada um é 1, ou seja, tanto faz escolher qualquer
um. - Você escolhe um deles, e anda até descobrir um
lago em que deve atravessar a nado. Pela
dificuldade, você deve aumentar o peso deste
caminho para 2. - Quando outra pessoa chegar na mesma encruzilhada,
saberá que o caminho de maior peso é o mais
difícil a seguir. - A rede neural aprende a determinar os pesos de
acordo com as movimentações entre as paradas.
14Rede Neural - Organização em Camadas (Exemplo)
Redes Neurais Artificiais
15Redes Neurais Artificiais
- As camadas são classificadas em três grupos
(usualmente) - Camada de Entrada onde os padrões são
apresentados à rede - Camadas Intermediárias ou Escondidas onde é
feita a maior parte do processamento, através das
conexões ponderadas podem ser consideradas como
extratoras de características - Camada de Saída onde o resultado final é
concluído e apresentado.
16Redes Neurais Artificiais
- Redes Neurais Classificação dos Modelos
Conexionistas - Em relação à estrutura da rede
- Redes de uma única camada
- Redes de múltiplas camadas
- Redes do tipo uni-direcional
- Redes do tipo recorrentes
- Redes com estrutura estática (não altera a sua
estrutura) - Redes com estrutura dinâmica (altera a estrutura)
- Redes com conexões de ordem superior
17Estruturas de rede
- Redes acíclicas ou redes de alimentação direta
- Representam uma função de sua entrada atual
- NÃO têm nenhum estado interno além dos pesos.
- Redes cíclicas ou redes recorrentes
- Utilizam suas saídas para realimentar suas
próprias entradas - Níveis de ativação da rede formam um sistema
dinâmico - Pode atingir um estado estável ou exibir
oscilações - A resposta da rede a uma determinada entrada pode
depender de entradas anteriores (como um
flip-flop).
18Redes de alimentação direta
- Representa uma função de suas entradas
- Dados os valores de entrada a1 e a2 a rede
calcula - a5 g(W3,5a3 W4,5a4)
- g(W3,5g(W1,3a1 W2,3a2) W4,5g(W1,4a1
W2,4a2))
19Redes de alimentação direta
- Expressando a saída de cada unidade oculta como
uma função de suas entradas percebe-se que - a5 é uma função das entradas da rede
- Os pesos da rede atuam como parâmetros dessa
função - A rede calcula hw(x)
- Ajustando os pesos muda-se a função que a rede
representa - Aprendizagem!
20Redes Neurais Artificiais
- Processos de Aprendizado
- A propriedade mais importante das redes neurais é
a habilidade de aprender com seu ambiente e com
isso melhorar seu desempenho. - Isso é feito através de um processo iterativo de
ajustes aplicado a seus pesos, o treinamento. - O aprendizado ocorre quando a rede neural atinge
uma solução generalizada para uma classe de
problemas.
21Redes Neurais Artificiais
- Algoritmo de Aprendizado
- Conjunto de regras bem definidas para a solução
de um problema de aprendizado. - Existem muitos tipos de algoritmos de aprendizado
específicos para determinados modelos de redes
neurais. - Os algoritmos diferem entre si principalmente
pelo modo como os pesos são modificados.
22Redes Neurais Artificiais
- Redes Neurais Classificação - Aprendizado
- Em relação ao aprendizado
- Aprendizado supervisionado
- Aprendizado semi-supervisionado
- Aprendizado não supervisionado
- Aprendizado instantâneo
- Aprendizado por pacotes
- Aprendizado contínuo
- Aprendizado ativo
- Aprendizado aproximação de funções
- Aprendizado classificação
- Usar apenas uma base de exemplos de aprendizado
- Usar uma base de aprendizado e uma base de teste
de generalização
23Redes Neurais Artificiais
- Redes Neurais Classificação dos Modelos
Conexionistas - Em relação as unidades da rede
- Redes baseadas em Perceptrons (MLP - Multi-Layer
Perceptron) - Redes baseadas em Protótipos (RBF - Radial Basis
Function)
24Redes Neurais Artificiais
Exemplos de Redes Neurais
25Redes Neurais Artificiais
- Aplicações Práticas
- Reconhecimento de Padrões Caracteres, Imagens,
Voz, etc - Sistemas de Auxílio ao Diagnóstico Médico,
Falhas Mecânicas, etc - Robótica Inteligente
- Previsão Tempo, Cotações da Bolsa de Valores,
etc - Sistemas de Controle
- Processamento de Sinais
- Processamento de Linguagem Natural
- Data Mining
26Redes Neurais Artificiais
- Aplicações Práticas
- http//www.nd.com/neurosolutions/products/ns/nnand
nsvideo.html - http//fbim.fh-regensburg.de/saj39122/begrolu/koh
onen.html
27Exemplos de Aplicações
- Exemplo de uso prático no Brasil Visanet,
operadora de cartões de crédito. - A empresa implantou um sistema de rede neural,
batizado de Lynx, que detecta possíveis fraudes
em transações com cartão. - A base de dados fornece um histórico e o hábito
de consumo de cada número de cartão de crédito
Visa emitido no país. - Número de transações anteriores mais de 850
milhões. - São emitidos alertas para os bancos toda vez que
o Lynx detecta variáveis fora dos padrões e,
portanto, a possibilidade de fraude. - O sistema compara o comportamento de cada
transação com os padrões armazenados na base de
dados. - Uma despesa em um estabelecimento comercial nunca
utilizado antes por determinado cartão, por
exemplo, gera uma variável. - O cadastro e o histórico do próprio
estabelecimento comercial geram outras variáveis
que levam em conta fatores como a ocorrência de
casos anteriores de fraude. - A soma dessas variáveis resulta em um índice de
probabilidade de fraude que vai de 1 a 100.
Lynx (lince) - animal que os antigos acreditavam
ter o poder de enxergar através de paredes.
28Exemplos de Aplicações
- Exemplo Reconhecimento de fala reconhecer 1 de
10 vogais entre h_d (em inglês) - F1 e F2 parâmetros retirados da análise
espectral do som da palavra.
29Exemplos de Aplicações
- Neural Networks Java Applets
- Perceptron Learning Rule (CNNL)
- Image Compression Using Backprop (CNNL)
- Generalizations of the Hamming Associative Memory
(CNNL) - Joone - Java Object Oriented Neural Engine
- Porta XOR
- Simulador de Redes Neurais SNNS (Stuttgart
Neural Network Simulator)
Fonte Java Demonstrations of Neural Net
Concepts, http//neuron.eng.wayne.edu/software.htm
l
30Redes Neurais Artificiais
- Por que utilizá-las?
- Generalização Podem aprender através de
conjuntos de exemplos e apresentar respostas
coerentes para entradas não vistas durante o
treinamento. - Adaptabilidade Podem adaptar-se a um novo
ambiente através de alterações em seus pesos
sinápticos. Também podem ser projetadas para
alterarem seus pesos em tempo real ou para
operarem em ambientes que variem com o tempo. - Informação Contextual Processam as informações
contextuais de forma natural, uma vez que o
processamento de um neurônio é afetado pelo
processamento de outros neurônios da rede. - Uniformidade A mesma notação é utilizada em
diferentes domínios de aplicações os neurônios
são encontrados em todas as redes neurais é
possivel utilizar os mesmos algoritmos de
aprendizagem e teorias em diversas apllicações
através da integração homogênea de módulos,
podemos construir redes modulares.
31Redes Neurais Artificiais
- Vantagens
- Aquisição automática de conhecimentos empíricos a
partir de uma base de exemplos de aprendizado
referente a um problema - Manipulação de dados quantitativos, aproximados e
mesmo incorretos com uma degradação gradual das
respostas - Grande poder de representação de conhecimentos
através da criação de relações ponderadas entre
as entradas do sistema
32Redes Neurais Artificiais
- Desvantagens
- Dificuldade de configuração das redes em relação
à sua estrutura inicial e também no que se refere
aos parâmetros dos algoritmos de aprendizado - Dificuldade de explicitar os conhecimentos
adquiridos pela rede através de uma linguagem
compreensível para um ser humano - Dificuldade de convergência (bloqueios) e
instabilidade, inerentes aos algoritmos de
otimização empregados - Lentidão do processo de aprendizado /
adaptação.
33Aprendizagem
Sistemas Inteligentes Híbridos
34Aprendizagem