• Nenhum resultado encontrado

SD-R: Seleção Dinâmica Baseada em uma Escolha Randômica Simples

4 Seleção Dinâmica de Atributos para Comitês de Classicação

4.1 SD-R: Seleção Dinâmica Baseada em uma Escolha Randômica Simples

Para entender melhor essa versão proposta, suponha que seja B uma base de dados, composta por A = {att1, att2, ..., attq}atributos e I instâncias, onde q é o número total de

atributos que a base de dados B possui. As instâncias são divididas em 3 conjuntos, treina- mento T R = {tr1, tr2, ..., trntr}, validação V = {v1, v2, ..., vnv} e teste T = {t1, t2, ..., tnt},

onde ntr, nv e nt representam os conjuntos de treinamento, validação e teste, respectiva- mente.

O método proposto pode ser descritos através dos seguintes passos:

1. Agrupar os dados: Para tal, um algoritmo de agrupamento Alg é aplicado ao con- junto de validação V , que é responsável pela separação das instâncias em grupos. A aplicação do algoritmo é representado pela Equação 4.1:

G = Alg(V ) (4.1)

formados pela partição;

2. Selecionar os atributos mais importantes para cada grupo: Para tal, os seguintes passos serão executados. No 1o passo, para cada grupo g

j é aplicado uma função

F (gj) que dene um critério de avaliação, denindo a importância dos atributos

para este grupo.

(a) Como resultado desta função, um valor E é obtido, onde E = {e1, .., eq}, e q o

número de atributos inicial da base de dados. O valor ei para cada atributo i de

A, usando como base as instâncias de gj, dene a importância deste atributo

para o grupo gj, baseado no critério utilizado por F .

(b) Baseado neste critério de avaliação, todos os atributos são ordenados, como representado na equação pela Equação 4.2. Essa ordenação pode ser crescente ou decrescente, dependendo da medida escolhida.

Rj = rank(F (gj)) (4.2)

(c) Uma vez ordenado, os N atributos mais bem posicionados no ranking são se- lecionados para cada grupo gj. Os Ngj atributos selecionados para representar

gj formam o conjunto Aj, como mostra a Equação 4.3. Neste método, pode-se

utilizar um valor de Ngj para cada grupo. A quantidade de atributos seleci-

onados N é uma escolha de implementação, ou seja, qualquer taxa pode ser utilizada.

Aj = select(Rj, Ngj) (4.3)

Onde,

Aj = {att1, att2, ..., attN}|Aj ⊂ A;

3. Denir as proporções de atributos por grupo: Neste passo, a proporção de atributos que será utilizada de cada grupo será denida.

(a) Quando se deseja classicar uma instância de teste ti, a mesma é comparada

com a partição G para se denir a distancia de ti para os diferentes grupos de

G, utilizando uma medida de similaridade DIST.

O principal objetivo de DIST é calcular a distância entre a instância de teste ti e o centroide de cada grupo. Onde py é o protótipo do grupo y, que pode ser

o centroide ou qualquer vetor que melhor consiga representar o grupo y. (b) Uma função P ROB é aplicada para cada valor de DIST , visando transformar

a distância (similaridade) disty no formato de probabilidade a posteriori, Py,

como mostrado na Equação 4.5, que, desta forma, pode ser interpretado como a probabilidade da instância ti pertencer ao grupo gy.

Py = P ROB(ti, disty). (4.5)

(c) Essa função de probabilidade é baseada na distância entre ti e cada um dos

grupos formados. A probabilidade é inversamente proporcional a distância en- contrada. Quanto mais distante, menor vai ser a probabilidade de pertinência. Essa medida será utilizada para representar a proporção de atributos que serão selecionados de cada grupo para compor o subconjunto de atributos gerais S selecionados para a instância de teste.

S = select(Aj, Pj) (4.6)

Onde, j é o total de grupos formados.

4. Seleção dos atributos para a instância de testes: Para o processo de classicação da instância de teste ti, suponha que seja C um comitê de classicação formado

por z classicadores, onde C = {c1, c2, ..., cz}. Para diversicar o comitê é neces-

sário selecionar z diferentes subconjuntos de atributos, um para cada classicador, para representar a instância e treinar os classicadores de maneira a gerar diversi- dade entre eles. Portanto, serão necessários z subconjuntos de atributos, obtidos do subconjunto global S para classicar a instância de teste ti.

SS(ti, S) = {ss1, ss2, ..., ssz} (4.7)

(a) Visando denir o subconjunto de atributos para cada classicador, W atributos são selecionados aleatoriamente a partir de S. W pode ser igual ou diferente para cada membro do conjunto de classicadores.

5. Classicação da instância utilizando os atributos selecionados: Após a denição dos subconjuntos de atributos mais importantes para a instância de teste ti, z classica-

dores cksão treinados, cada classicador com um subconjunto diferente de atributos

ssk. Então ti será classicada pelo comitê C.

6. A acurácia é obtida através da aplicação dos Passos 3 - 6 para todo conjunto de testes T ao comitê de classicadores C.

Para melhor ilustrar, suponha que ti seja uma instância composta por 50 atributos

após a seleção dos N melhores atributos de cada grupo. Supondo que ti possua o conjunto

de proporções denido por P = {0.3, 0.6, 0.1}. Baseado em P , 30% serão selecionados do grupo 1 (15 atributos), 60% serão selecionados do grupo 2 (30 atributos) e 10% serão selecionados do grupo 3 (5 atributos). Formando assim, o conjunto geral de atributos S para representar a instância ti.

Durante o processo de escolha dos atributos, pode ocorrer de serem selecionados o mesmo atributo de diferentes grupos. Caso isso aconteça, o atributo será escolhido do grupo onde o mesmo tiver o maior valor no ranqueamento R. Assim, não haverá repetição dos atributos escolhidos. Por exemplo, se o atributo att2 for escolhido do grupo 1 e do

grupo 2, o valor do ranqueamento dele em ambos os grupos será observado. Se o seu melhor valor for no grupo 1, ele entrará como um dos atributos escolhidos pela proporção do grupo 1, enquanto um novo atributo será selecionado para o grupo 2.

4.1.1 Funcionamento

Algoritmo 2 Algoritmo demonstrando a versão SD-R

1: procedure Seleção dinâmica de atributos 2: Entrada: B =(V, TR, T)

3: G ← Alg(V )

4: para cada grupo gj faça

5: para cada instância vi em gj faça

6: para cada atributo ai em vi faça

7: E ← F (gj) 8: m para 9: Rj = rank(E) 10: Aj = select(Rj, N ) 11: m para 12: m para

13: para cada padrão de teste ti em T faça

14: para cada grupo gj faça

15: Calcular a distância de Ti para pj através de d

16: m para

17: para cada grupo gj faça

18: Pj = P (Ti, dj)

19: m para

20: para cada atributo a de Aj faça

21: Si =select(Aj, Pj)

22: m para

23: para cada classicador k de C faça 24: SSk = select(ti, S, Wk) 25: m para 26: Ci ← T rain(T R, SSi) 27: acc ← T est(Ci, Ti, SSi) 28: m para 29: m procedure

O método recebe como entrada uma base de dados dividida em três conjuntos: Trei- namento, Teste e Validação (linha 2), com o conjunto de validação correspondente a 30% dos padrões que formam a base de dados. Um algoritmo de agrupamento é aplicado no conjunto de validação para separar as instâncias em grupos (linha 3), visando obter os atributos mais importante para as instâncias de cada grupo formado.

Após a criação dos grupos, um critério de avaliação é aplicado sobre os atributos das instâncias que formam cada grupo (linha 7). Desse critério será obtido um valor para cada atributo, valor esse que representa o grau de importância que o mesmo possui durante a classicação daquelas instâncias. Esses atributos são ordenados a partir desse grau e os N melhores são selecionados para compor o subconjunto de atributos mais relevantes para aquele grupo (linhas 9 - 10).

Após a denição dos atributos mais importantes para cada grupo, dá-se início o pro- cesso de classicação das instâncias do conjunto de testes. Quando se deseja classicar uma instância, o primeiro passo é calcular a distância entre a mesma e os centros dos grupos formados (linha 15). O valor dessas distâncias são transformados em probabili- dades (linha 17 - 19), que representa a probabilidade da instância de testes pertencer a cada grupo. Esse valor é inversamente proporcional à distância, ou seja, quanto menor a distância maior será o valor da probabilidade encontrada para aquele grupo.

O valor dessa probabilidade servirá para denir a quantidade de atributos que será utilizado de cada grupo para compor o subconjunto de melhores atributos para a instância de teste. Assim, cada instância possuirá um conjunto de atributos selecionados diferente das demais, obedecendo as proporções estabelecidas pelo cálculo da probabilidade (linha 20 - 22).

O próximo passo é treinar os classicadores que serão utilizados para a formação do comitê. Para cada classicador é necessário denir um subconjunto diferente de atributos que serão utilizados, visando diversicar o sistema de classicação. Cada classicador será treinado com um conjunto de atributos diferente, selecionados aleatoriamente do subconjunto S, conjunto de atributos mais relevantes para a instância da vez (linha 23 - 25). A quantidade de atributos selecionados W é uma escolha de implementação, ou seja, qualquer taxa pode ser utilizada. Essa taxa de seleção é aplicada sobre o valor de N e não sobre a quantidade total de atributos da base de dados inicial.

Cada classicador será treinado utilizando apenas os atributos selecionados (linha 26) e, após o treinamento de todos os classicadores, a instância de teste é submetida ao sistema de classicação (linha 27). A saída dos classicadores são combinadas e a acurácia é obtida quando todas as instâncias do conjunto de teste são classicadas pelo comitê.

4.2 SD-P: Seleção Dinâmica Baseada em uma Escolha

Documentos relacionados