computação natural - aula 13 - sistemas imunológicos artificiais.pdf

54
Sistemas Imunológicos Artificiais Professora: Gisele L. Pappa Estágio Docência: Mirlaine Crepalde Computação Natural

Upload: vinicius-pereira

Post on 30-Dec-2015

25 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Computação Natural - Aula 13 - Sistemas Imunológicos Artificiais.pdf

Sistemas Imunológicos Artificiais

Professora: Gisele L. PappaEstágio Docência: Mirlaine Crepalde

Computação Natural

Page 2: Computação Natural - Aula 13 - Sistemas Imunológicos Artificiais.pdf

Sistema Imunológico: Princípios e Teorias

• Componentes Biológicos: – Linfócitos (anticorpos)

• Células-B: maturação na medula óssea– Processo de clonagem e mutação

• Células-T: maturação no Thymus– Antígenos: ativam sistema imunológico

• Reconhecimento e Ligação:– Afinidade: complementariedade, interações

Page 3: Computação Natural - Aula 13 - Sistemas Imunológicos Artificiais.pdf

Sistema Imunológico: Princípios e Teorias

• Adaptação– Clonal selection

• Mutação• Reatividade Cruzada

– Maturação• Discriminação Self/Nonself

– Maturação das células-T no Thymus através da seleção negativa

• Teoria das Redes Imunológicas

Page 4: Computação Natural - Aula 13 - Sistemas Imunológicos Artificiais.pdf

Um Framework para SIA

Algoritmos

Afinidade

Representação

Aplicação

Solução

AIS

Forma-Espaço

Binário

Inteiro

Real

Simbólico

[De Castro and Timmis, 2002]

Page 5: Computação Natural - Aula 13 - Sistemas Imunológicos Artificiais.pdf

Um Framework para SIA

Algoritmos

Afinidade

Representação

Aplicação

Solução

AIS

[De Castro and Timmis, 2002]

Euclidiana

Manhattan

Hamming

rbc

r-chunks

Page 6: Computação Natural - Aula 13 - Sistemas Imunológicos Artificiais.pdf

Um Framework para SIA

Algoritmos

Afinidade

Representação

Aplicação

Solução

AIS

[De Castro and Timmis, 2002]

Modelos de Medula

Seleção e Clonagem

Seleção Negativa

Redes Imunológicas

Page 7: Computação Natural - Aula 13 - Sistemas Imunológicos Artificiais.pdf

Forma-Espaço• Um anticorpo pode reconhecer

qualquer antígeno cujo complemento está dentro de uma região α ao seu redor (o limiar de afinidade ou reatividade cruzada)

• Isso resulta em um volume ve conhecido como região de reconhecimento do anticorpo

α

ve

V

S

A camada de representação

ve

ve

α

α

[Perelson,1989]

Page 8: Computação Natural - Aula 13 - Sistemas Imunológicos Artificiais.pdf

Camada de Afinidade• O grau de interação entre um anticorpo e um antígeno ou entre

dois anticorpos pode ser avaliado utilizando uma medida de distância ou afinidade

• A escolha da medida de afinidade é importante porque:• Ela altera a topologia da forma-espaço• Ela deve levar em consideração o problema sendo resolvido e os

dados disponíveis• Células podem sofrer mutação de acordo com a afinidade

A camada de afinidade

Page 9: Computação Natural - Aula 13 - Sistemas Imunológicos Artificiais.pdf

A camada de algoritmos• Modelos da Medula

– Usado para gerar repositórios de células e moléculas• Seleção e Clonagem

– Utilizado para controlar como os componentes do sistema imunológico interagem com antígenos

• Seleção negativa– Utilizado para gerar reportórios de células capazes de reconhecer self e

non-self• Modelos de Redes (dinâmicos)

– Contínuos– Discretos

A camada de Algoritmos

Page 10: Computação Natural - Aula 13 - Sistemas Imunológicos Artificiais.pdf

Exemplos de Representação e Matching

• Distância Hamming

Page 11: Computação Natural - Aula 13 - Sistemas Imunológicos Artificiais.pdf

Exemplos de Representação e Matching

Page 12: Computação Natural - Aula 13 - Sistemas Imunológicos Artificiais.pdf

Exemplos de Representação e Matching

Page 13: Computação Natural - Aula 13 - Sistemas Imunológicos Artificiais.pdf

Modelo da Medula

• É na medula que todas as células do sistema imunológico são criadas

• Geram “células” aleatoriamente– Como a inicialização da população de um AG

• Podem utilizar bibliotecas de genes– Essa bibliotecas podem trazer conhecimento a

priori sobre o problema

Page 14: Computação Natural - Aula 13 - Sistemas Imunológicos Artificiais.pdf

1A 1B 1C 1D 2A 2B 2C 2D

1C 2B

1C 2B

Library 1 Library 2

Page 15: Computação Natural - Aula 13 - Sistemas Imunológicos Artificiais.pdf

Algoritmos de Seleção Negativa• Define Self como um padrão de atividade normal ou comportamento

estável de um sistema / processo (S)• Objetivo:

– Gerar um conjunto de dectores R que não casam com os padrões em S.• Monitora novas observações de S procurando por mudanças.

– Testa os detectores em relação a S. – Se existe um casamento, uma mudança deve ter ocorrido no

comportamento do sistema.• Definir o limiar de reconhecimento (afinidade ε)

Page 16: Computação Natural - Aula 13 - Sistemas Imunológicos Artificiais.pdf

Fase de Censoriamento

Self Strings(S)

Generate random

Strings (R0)Detector Set (R)

Reject

Match

Yes

No

Page 17: Computação Natural - Aula 13 - Sistemas Imunológicos Artificiais.pdf

Fase de Monitoramento

Protected Strings

(S*)

Detector Set (R)

Nonself Detected

Match

Yes

Page 18: Computação Natural - Aula 13 - Sistemas Imunológicos Artificiais.pdf

Real-Valued Negative Selection Algorithm (RNS)

• Atributos pertencem ao espaço [0,1]• Movimento dos detectores para cubrir ao

máximo o espaço nonself• Matching de um detector r e o conjunto self

é baseada na vizinhança de r no conjunto S• Idade é associada aos detectores• Direção do movimento é ponderada por

– η(t)=η0e-t/τ

Page 19: Computação Natural - Aula 13 - Sistemas Imunológicos Artificiais.pdf

Cobertura dos Detectores: abordagem recente V-Detector

Page 20: Computação Natural - Aula 13 - Sistemas Imunológicos Artificiais.pdf

Ilustrando...

Match10111000

Don’t Match1101

•Regra de r bits contíguos, com r = 2

Page 21: Computação Natural - Aula 13 - Sistemas Imunológicos Artificiais.pdf

Aplicação Clássica de Seleção Negativa

• Detecção de anomalias• Domínio de segurança de computadores• Classificação onde classes há duas classes e

há desbalanceamento de representantes• Reconhecer o que é self /non-self

– Usa seleção negativa para criar um conjunto de detectores

Page 22: Computação Natural - Aula 13 - Sistemas Imunológicos Artificiais.pdf

Segurança: Mapeamento do Sistema Imunológico Real para o ArtificialSistemas Imunológico Sistema Imunológico ArtificialCélulas T, B e anticorpos Detectores representados por um string de

bitsCélula de Memória Detector de memóriaAntígeno (Nonself) string de bitsCasamento Utilizando a regra de r bits contíguos

Tolerância Algoritmo de seleção negativa

Page 23: Computação Natural - Aula 13 - Sistemas Imunológicos Artificiais.pdf

Segurança de Redes

• Broadcast em LANs• Proteger a LAN de intrusos• SIA precisa monitorar o

tráfico da rede e identificar intrusos

• Conexão é uma tripla:– <fonte, destino, porta>

Page 24: Computação Natural - Aula 13 - Sistemas Imunológicos Artificiais.pdf

Segurança de Computadores• Self são conexões normais que acontecem durante um determinado período de tempo• SIA deve aprender a distinguir o que é normal do que não é• O conjunto de conexões normais (self) é definido dinamicamente

– Os dectores de non-self são produzidos através de seleção negativa durante um período de tolerância

Page 25: Computação Natural - Aula 13 - Sistemas Imunológicos Artificiais.pdf

Avaliação• Hofmeyr & Forrest, 2000• Testado em subredes de 50 computadores• Dados coletados por 50 dias

– Mais de 2.3 milhões de conexões TCP, filtradas para 1.5

• Conexão representada por um string de 49 bits• Conjunto de non-selfs tinha apenas 7 intrusões• Número baixos de conexões normais detectadas como

ataques (2 por dia)

Page 26: Computação Natural - Aula 13 - Sistemas Imunológicos Artificiais.pdf

Diagnóstico de Câncer de Mama• Gonzàlez and Dasgupta, 2003• RNS + Rede Neural• 683 amostras de células com 10 características• Dois conjuntos: 271 para treino (benignas) e 412 para

teste (mistas)• Usa o algoritmo RNS para gerar 400 detectores (nonself

- malignos)• Usa as 400 amostras malignas + 271 amostras benignas

para treinar a rede

Page 27: Computação Natural - Aula 13 - Sistemas Imunológicos Artificiais.pdf

Parâmetros• ε: limiar de afinidade : 0.1• N: número de detectores • T: idade máxima de maturidade : 5• η0: valor inicial da taxa de atualização : 1

• τ: controla decaimento da taxa de atualização • k: o número de vizinhos que define o self-match : 1 • max_it : 400

Page 28: Computação Natural - Aula 13 - Sistemas Imunológicos Artificiais.pdf

Seleção e Clonagem –Clonalg

1. Inicialização 2. Apresentação dos antígenos

a. Afinidadeb. Seleção,clonagem e expansãoc. Maturação da afinidaded. Meta-dinâmica

3. Ciclo

Page 29: Computação Natural - Aula 13 - Sistemas Imunológicos Artificiais.pdf

1. Inicialização

2. Apresentação dos antígenosa. Afinidadeb. Seleção,clonagem e

expansão– Maturação da afinidaded. Meta-dinâmica

3. Ciclo

Clonalg

• Cria aleatoriamente uma população (P) de anticorpos

Page 30: Computação Natural - Aula 13 - Sistemas Imunológicos Artificiais.pdf

1. Inicialização2. Apresentação dos antígenos

a. Afinidadeb. Seleção,clonagem e

expansão– Maturação da afinidaded. Meta-dinâmica

3. Ciclo

Clonalg

• Para cada padrão (antígeno) no conjunto de dados S faça:

Page 31: Computação Natural - Aula 13 - Sistemas Imunológicos Artificiais.pdf

1. Inicialização2. Apresentação dos antígenos

a. Afinidadeb. Seleção,clonagem e

expansãoc. Maturação da afinidaded. Meta-dinâmica

3. Ciclo

Clonalg

• Apresenta o antígeno para população P e calcula a afinidade com cada anticorpo

Page 32: Computação Natural - Aula 13 - Sistemas Imunológicos Artificiais.pdf

1. Inicialização2. Apresentação dos antígenos

a. Afinidadeb. Seleção,clonagem e

expansãoc. Maturação da afinidaded. Meta-dinâmica

3. Ciclo

Clonalg

• Seleciona os n1 anticorpos com maior afinidade em P

• Gera clones desses anticorpos com probabilidade proporcional a anfinidade com o antígeno (qto maior afinidade, mais clones)

Page 33: Computação Natural - Aula 13 - Sistemas Imunológicos Artificiais.pdf

1. Inicialização2. Apresentação dos antígenos

a. Afinidadeb. Seleção,clonagem e

expansão– Maturação da afinidaded. Meta-dinâmica

3. Ciclo

Clonalg

• Muta cada clone• Adiciona os indivíduos mutados a

população P• Seleciona novamente os melhores

indivíduos para serem mantidos como memória do antígeno apresentado

Page 34: Computação Natural - Aula 13 - Sistemas Imunológicos Artificiais.pdf

1. Inicialização2. Apresentação dos antígenos

a. Afinidadeb. Seleção,clonagem e

expansãoc. Maturação da afinidaded. Meta-dinâmica

3. Ciclo

Clonalg

• Substitui um número n2 de indivíduos com afinidade baixa por novos indivíduos gerados aleatoriamente

Page 35: Computação Natural - Aula 13 - Sistemas Imunológicos Artificiais.pdf

1. Inicialização2. Apresentação dos antígenos

a. Afinidadeb. Seleção,clonagem e

expansãoc. Maturação da afinidaded. Meta-dinâmica

3. Ciclo

Clonalg

• Repete passo 2 até um critério de parada ser encontrado

Page 36: Computação Natural - Aula 13 - Sistemas Imunológicos Artificiais.pdf

Otimização vs Aprendizagem

• Otimização– Assume que existe uma função a ser otimizada,

e que cada anticorpo correponde a um valor dessa função

• Aprendizagem ou Reconhecimento de padrões– Assume que existe um conjunto de padrões a

serem reconhecidos ou aprendidos (conjunto S de antígenos)

Page 37: Computação Natural - Aula 13 - Sistemas Imunológicos Artificiais.pdf

Reconhecimento de Caracteres

• Gerar um conjunto de detectores capazes de reconhecer dígitos simples

Page 38: Computação Natural - Aula 13 - Sistemas Imunológicos Artificiais.pdf

•Representação: cada indivíduo é um bit de strings (120)

• Usa distância Hamming como métrica de similaridade• 10 anticorpos (P) • max_it: 500• n1=5, n2=0

• Nc=(β.N)/i, β=10

=

=

100111101111101101100101010010010011011000010010101101101101

5

4

3

2

1

ppppp

P

Page 39: Computação Natural - Aula 13 - Sistemas Imunológicos Artificiais.pdf

Evolução dos Detectores

Page 40: Computação Natural - Aula 13 - Sistemas Imunológicos Artificiais.pdf

Redes Imunológicas

Page 41: Computação Natural - Aula 13 - Sistemas Imunológicos Artificiais.pdf

Redes Imunológicas

• Algoritmos que vimos até agora propõe um sistema imunológico em estado de espera, que apenas se torna ativo quando invadido

• Redes propõe um sistema imunológico dinâmico, i.e, ativo mesmo quando não está em perigo

Page 42: Computação Natural - Aula 13 - Sistemas Imunológicos Artificiais.pdf

Redes Imunológicas

• Primeiro modelo de redes imunológicas naturais foi proposto por Jerne (1974)

• Primeiro modelo computacional de redes contínuas foi proposto em 1986– Baseado em equações diferenciais do modelo

de Jerne– Construída para simular a rede imunológica

natural, não para ser utilizada como um algoritmo para resolver problemas

Page 43: Computação Natural - Aula 13 - Sistemas Imunológicos Artificiais.pdf

Redes Imunológicas Discretas

• Em redes imunológicas, existem 2 tipos de interações:

1. Com os antígenos (externa)2. Com os outros elementos da rede (interna)

• Existem diversos modelos de redes discretas

– Aqui discutiremos a aiNet (Artificial Imune Network)

Page 44: Computação Natural - Aula 13 - Sistemas Imunológicos Artificiais.pdf

aiNet

• Existe uma população de antígenos S que deve ser reconhecida por um conjunto P de células que formam a rede

• Ambos antígenos e anticorpos são representados por um vetor de números reais

Page 45: Computação Natural - Aula 13 - Sistemas Imunológicos Artificiais.pdf

1. Inicialização2. Apresentação dos antígenos

a. Afinidadeb. Seleção,clonagem e

expansãoc. Maturação da afinidaded. Meta-dinâmicae. Interação de clonagemf. Supressão de clonagem

3. Interações da rede4. Supressão da rede5. Diversidade6. Ciclo

aiNET

De Castro and Von Zuben, 2000

Idêntico ao Clonalg

Page 46: Computação Natural - Aula 13 - Sistemas Imunológicos Artificiais.pdf

1. Inicialização2. Apresentação dos antígenos

a. Afinidadeb. Seleção,clonagem e

expansãoc. Maturação da afinidaded. Meta-dinâmicae. Interação de clonagemf. Supressão de clonagem

3. Interações da rede4. Supressão da rede5. Diversidade6. Ciclo

aiNET

• Determina a afinidade entre todos os elementos da memória de clonagem

Page 47: Computação Natural - Aula 13 - Sistemas Imunológicos Artificiais.pdf

1. Inicialização2. Apresentação dos antígenos

a. Afinidadeb. Seleção,clonagem e

expansãoc. Maturação da afinidaded. Meta-dinâmicae. Interação de clonagemf. Supressão de clonagem

3. Interações da rede4. Supressão da rede5. Diversidade6. Ciclo

• Elimina todos os clones cujas afinidades são menores que um dado limiar. Incorpora o restante dos clones na rede

aiNET

Page 48: Computação Natural - Aula 13 - Sistemas Imunológicos Artificiais.pdf

1. Inicialização2. Apresentação dos antígenos

a. Afinidadeb. Seleção,clonagem e

expansãoc. Maturação da afinidaded. Meta-dinâmicae. Supressão de clonagem

3. Interações da rede4. Supressão da rede5. Diversidade6. Ciclo

aiNET

• Determina a similaridade entre cada par de anticorpos da rede

Page 49: Computação Natural - Aula 13 - Sistemas Imunológicos Artificiais.pdf

1. Inicialização2. Apresentação dos antígenos

a. Afinidadeb. Seleção,clonagem e

expansão– Maturação da afinidaded. Meta-dinâmicae. Supressão de clonagem

3. Interações da rede4. Supressão da rede5. Diversidade6. Ciclo

aiNET

• Elimina todos os anticorpos da rede cuja afinidade seja menor que um limiar pré-definido

Page 50: Computação Natural - Aula 13 - Sistemas Imunológicos Artificiais.pdf

1. Inicialização2. Apresentação dos antígenos

a. Afinidadeb. Seleção,clonagem e

expansãoc. Maturação da afinidaded. Meta-dinâmicae. Supressão de clonagem

3. Interações da rede4. Supressão da rede5. Diversidade6. Ciclo

aiNET

• Introduz novos anticorpos a população P

Page 51: Computação Natural - Aula 13 - Sistemas Imunológicos Artificiais.pdf

1. Inicialização2. Apresentação dos antígenos

a. Afinidadeb. Seleção,clonagem e

expansãoc. Maturação da afinidaded. Meta-dinâmicae. Supressão de clonagem

3. Interações da rede4. Supressão da rede5. Diversidade6. Ciclo

aiNET

• Repete os passos 2 a 5 para um determinado número de iterações

Page 52: Computação Natural - Aula 13 - Sistemas Imunológicos Artificiais.pdf

aiNET em Otimização Multi-modal

Initial population

Final population

Page 53: Computação Natural - Aula 13 - Sistemas Imunológicos Artificiais.pdf

Resultados

aiNET CLONALG

Page 54: Computação Natural - Aula 13 - Sistemas Imunológicos Artificiais.pdf

Agradecimento

• A maioria desses slides foi retirado das notas de aula de John Timmis.