• Nenhum resultado encontrado

H.4 Usuário para Superusuário (U2R)

J.1.5 Algoritmo AIRS

O sistema de reconhecimento imunológico artificial (AIRS) é um algoritmo de apren- dizagem supervisionada, que é usado para problemas de classificação [178]. A função do algo- ritmo AIRS, proposto por [79] é um processo de seleção clonal, inspirada na clonagem e hiper- mutação somática para a preparação de um banco de células de memória ou reconhecimento, que são representativos dos dados de treinamento. O algoritmo utiliza uma única iteração sobre um conjunto de dados de treinamento.

No algoritmo AIRS, uma célula B é chamada de esfera de reconhecimento artificial (ARB) que consiste em um anticorpo, um número de recursos (parâmetro que pode ser definido inicialmente pelo usuário) e um valor de estimulação (definido como a similaridade entre o ARB e o antígeno).

A população ARB é treinada durante vários ciclos de competição por recursos limita- dos. O melhor ARB recebe o maior número de recursos e os ARBs sem recursos são eliminados da população de células. A cada ciclo de treinamento, o melhor classificador ARB gera clones mutados que melhorem o processo de reconhecimento do antígeno, enquanto que os ARBs com recursos insuficientes são removidos da população. Após o treinamento, os melhores classifi- cadores ARB são selecionados como células de memória. Estas células de memória são usadas para classificar novos antígenos.

163 1. Inicialização. O sistema é preparado para o processo de aprendizagem. Os dados de treinamento são normalizados para [0, 1]. A afinidade é calculada para todos os pares de antígenos e então a referência inicial de afinidade é determinada como a afinidade média para todos os antígenos do conjunto de treinamento. Os antígenos são selecionados aleatoriamente e inseridos na população de células de memória.

O Limiar de Afinidade (AT), dado pela Equação (J.9), é determinado como uma média de afinidades para todos os pares de antígenos na base de dados de treinamento. Os valores de afinidade para a população de célula de memória são calculados pela interação com todos os antígenos de treinamento. As células de memória com maior estimulação são selecionadas para gerar os clones mutados que serão adicionados na população ARB.

AT = Pn i=1 Pn j=i+1af f inity(agi, agj) n(n−1) 2 , (J.9)

em que n é o número de antígenos ag na base de dados de treinamento. agi and agj são o i-ésimo e jésimo antígeno de treinamento, e af f inity(x, y) retorna a distância Euclidiana entre dois antígenos.

2. Antigen Training. Cada instância de treinamento é apresentada à população de memória (M Cag.c) de cada vez, em que M C representa o conjunto de células de memória e mc representa um membro individual deste conjunto e ag.c representa a classe de um dado antígeno ag (ag.c ∈ C = 1, 2, ...nc e nc é o número de classes na base de dados). O primeiro passo deste estágio do algoritmo é a identificação das células de memória e a geração de ARB. Dado um específico antígeno de treinamento (ag), encontra-se a célula de memória (mcmatch) que tem a propriedade descrita na Equação (J.10). As células de memória com maior estímulo, stim(ag, mcmatch), são selecionados para gerarem clones mutados, baseados na Equação (J.11), que são adicionados na população ARB.

mcmatch = argmaxmc∈M Cag∗cstim(ag, mc). (J.10)

nClones = stim(ag, mcmatch) ∗ cRate ∗ hRate, (J.11) em que stim(x, y) é definido na Equação (J.12). a taxa clonal (cRate) e a taxa de hiper- mutação (hRate) são definidos pelo usuário.

stim(x, y) = 1 − af f inity(x, y). (J.12)

3. Competição por Recursos Limitados. Esta fase é usada para controlar o tamanho da po- pulação ARB, para desenvolver uma célula de memória, que é o candidato mais bem suce- dido em classificar corretamente um dado antígeno (ag), e alocar, de forma otimizada,

164 recursos para os ARBs com as melhores capacidades de reconhecimento. Cada antígeno treina apenas as ARBs da mesma classe.

Primeiro, os recursos são alocados para um dado ARB (ab), baseado no seu valor de estímulo normalizado (ver Equação (J.13)), o qual é usado como uma indicação de sua aptidão em reconhecer ag.

resource = normStim(ag, ab) ∗ cRate. (J.13)

O número máximo de recursos que podem ser alocados pelo ARB é um parâmetro definido pelo usuário. A população ARB é então ordenada por recursos alocados na ordem descen- dente e os recursos são removidos dos ARBs situados no fim da lista até que a soma de todos os recursos alocados seja menor que o número total de recursos e, em seguida, os ARBs sem recursos são removidos da população de ARB. A competição para o processo de recursos finaliza quando a estimulação média normalizada é maior do que o limiar de estimulação definido pelo usuário. No passo final, cada ARB presente na população de ARB gera um número de clones mutados, usando a Equação (J.14).

ARBClones = stim(ag, ab) ∗ cRate. (J.14)

4. Seleção de Células de Memória. O estágio final do processo de treinamento é a in- serção de células de memórias candidatas, mccandidate, na população de memória existente (M C). É durante este estágio que o limiar de afinidade, calculado durante a inicialização torana-se crítico, uma vez que determina se o mccandidatesubstitui o mcmatchque foi pre- viamente identificado. Assim, o ARB é copiado para a população de células de memória se o valor de estímulo para o mccandidateé melhor do que a melhor célula de memória ex- istente. Isso ocorre se a afinidade entre o mccandidatee o mcmatch é menor que o produto entre o limiar de afinidade - AT e o limiar escalar de afinidade - ATS (ver Equação (J.15)).

cutOf f = AT ∗ AT S, (J.15)

em que ATS é um parâmetro definido pelo usuário.

5. Finalização. O processo de treinamento é finalizado e o grupo de células de memória forma o classificador AIRS.

A classificação de antígenos novos é realizada através do método k-nearest neighbor [85]. As melhores l células de memória são identificadas e a classe predita é determinada com um voto majoritário. O parâmetro l pode ser otimizado para maximizar o desempenho da predição. O algoritmo AIRS1, utilizado nos experimentos, é a primeira versão do algoritmo e realiza generalização via redução de dados. Isto significa que ele não utiliza todos os dados

165 de formação de generalização, e o classificador resultante produzido pelo algoritmo representa os dados de treinamento com um número reduzido ou mínimo de ocorrências. Outras versões foram desenvolvidas (AIRS2 e paralelo AIRS2), mas estes não foram testados neste trabalho, devido ao volume do conjunto de dados, que gera um elevado aumento de tempo de execução geral.