Baixe o app para aproveitar ainda mais
Prévia do material em texto
SISTEMAS DE INFORMAÇÃO 1 1 1 1SISTEMAS DE INFORMAÇÃO 1 1SISTEMAS DE INFORMAÇÃO 1 1 1 Professora: Ariane Machado Lima Tema 3 Redução de Dimensionalidade Seleção de Características (e medidas de distância para classificação) SISTEMAS DE INFORMAÇÃO 2 2 2 2SISTEMAS DE INFORMAÇÃO 2 2SISTEMAS DE INFORMAÇÃO 2 2 2 Ciclo de aprendizado supervisionado mundo Coleta de dados Análise exploratória Pré-processamento Redução de dimensionalidade Escolha do alg. indutor Treinamento do classificador Avaliação do classificador Retreinamento do classificador Fusão de características (PCA) Aula passada SISTEMAS DE INFORMAÇÃO 3 3 3 3SISTEMAS DE INFORMAÇÃO 3 3SISTEMAS DE INFORMAÇÃO 3 3 3 Ciclo de aprendizado supervisionado mundo Coleta de dados Análise exploratória Pré-processamento Redução de dimensionalidade Escolha do alg. indutor Treinamento do classificador Avaliação do classificador Retreinamento do classificador Fusão de características (PCA) Aula de hoje Seleção de características SISTEMAS DE INFORMAÇÃO 4 4 4 4SISTEMAS DE INFORMAÇÃO 4 4SISTEMAS DE INFORMAÇÃO 4 4 4 Seleção de Características • Dados com N características • Problema: escolher um subconjunto contendo D características que seja melhor que os outros subconjuntos (D < N) • Número de possíveis subconjuntos de tamanho D: SISTEMAS DE INFORMAÇÃO 5 5 5 5SISTEMAS DE INFORMAÇÃO 5 5SISTEMAS DE INFORMAÇÃO 5 5 5 Seleção de Características • Dados com N características • Problema: escolher um subconjunto contendo D características que seja melhor que os outros subconjuntos (D < N) • Número de possíveis subconjuntos de tamanho D: N = N! D (N-D)! D! • Número de possíveis subconjuntos (se eu não limitar a D características): 2N SISTEMAS DE INFORMAÇÃO 6 6 6 6SISTEMAS DE INFORMAÇÃO 6 6SISTEMAS DE INFORMAÇÃO 6 6 6 Seleção de Características • N = 20, D = 10: 2x105 subconjuntos! SISTEMAS DE INFORMAÇÃO 7 7 7 7SISTEMAS DE INFORMAÇÃO 7 7SISTEMAS DE INFORMAÇÃO 7 7 7 Seleção de Características • N = 20, D = 10: 2x105 subconjuntos! • N = 40, D = 10: ~ 109 subconjuntos! SISTEMAS DE INFORMAÇÃO 8 8 8 8SISTEMAS DE INFORMAÇÃO 8 8SISTEMAS DE INFORMAÇÃO 8 8 8 Seleção de Características • N = 20, D = 10: 2x105 subconjuntos! • N = 40, D = 10: ~ 109 subconjuntos! • N = 40 e D não definido: 240 ~ 1012 • Milagre (ou maldição) da combinatória!!! SISTEMAS DE INFORMAÇÃO 9 9 9 9SISTEMAS DE INFORMAÇÃO 9 9SISTEMAS DE INFORMAÇÃO 9 9 9 Seleção de Características • Questões relevantes: • Como encontrar o melhor subconjunto? Avaliar todos, um a um? • O que é um subconjunto ser melhor que outro? SISTEMAS DE INFORMAÇÃO 10 10 10 10SISTEMAS DE INFORMAÇÃO 10 10SISTEMAS DE INFORMAÇÃO 10 10 10 Características de um algoritmo de seleção de Características Relação com o classificador Função de avaliação (define métrica do que é “melhor”) Forma de percorrer o espaço de busca (subconjuntos de características) Critério de parada: quando me dou por satisfeito SISTEMAS DE INFORMAÇÃO 11 11 11 11SISTEMAS DE INFORMAÇÃO 11 11SISTEMAS DE INFORMAÇÃO 11 11 11 Características de um algoritmo de seleção de Características Relação com o classificador Função de avaliação (define métrica do que é “melhor”) Forma de percorrer o espaço de busca (subconjuntos de características) Critério de parada: quando me dou por satisfeito SISTEMAS DE INFORMAÇÃO 12 12 12 12SISTEMAS DE INFORMAÇÃO 12 12SISTEMAS DE INFORMAÇÃO 12 12 12 Relação com o classificador • Filtro: • seleção de características é um passo anterior e independente da classificação (não tem relação nenhuma com o classificador) • Camada (wrapper): • o subconjunto de características é avaliado usando o próprio classificador (avaliação pelo desempenho da classificação) • Embutidos: • A seleção é feita pelo próprio classificador SISTEMAS DE INFORMAÇÃO 13 13 13 13SISTEMAS DE INFORMAÇÃO 13 13SISTEMAS DE INFORMAÇÃO 13 13 13 Relação com o classificador • Filtro: • seleção de características é um passo anterior e independente da classificação (não tem relação nenhuma com o classificador): Ex: filtro de correlação SISTEMAS DE INFORMAÇÃO 14 14 14 14SISTEMAS DE INFORMAÇÃO 14 14SISTEMAS DE INFORMAÇÃO 14 14 14 Relação com o classificador • Camada (wrapper): • o subconjunto de características é avaliado usando o próprio classificador (avaliação pelo desempenho da classificação – ex: acurácia) SISTEMAS DE INFORMAÇÃO 15 15 15 15SISTEMAS DE INFORMAÇÃO 15 15SISTEMAS DE INFORMAÇÃO 15 15 15 Relação com o classificador • Embutidos: • A seleção é feita pelo próprio classificador (ex: árvore de decisão) Feature selection and Classification SISTEMAS DE INFORMAÇÃO 16 16 16 16SISTEMAS DE INFORMAÇÃO 16 16SISTEMAS DE INFORMAÇÃO 16 16 16 Características de um algoritmo de seleção de Características Relação com o classificador Função de avaliação (define métrica do que é “melhor”) Forma de percorrer o espaço de busca (subconjuntos de características) Critério de parada: quando me dou por satisfeito SISTEMAS DE INFORMAÇÃO 17 17 17 17SISTEMAS DE INFORMAÇÃO 17 17SISTEMAS DE INFORMAÇÃO 17 17 17 Função de avaliação (função critério) • Dentre vários subconjuntos de características, qual é o melhor? • Otimalidade é sempre relativa a uma função de avaliação que faz alguma medida do subconjunto corrente. • Exemplos de tipos de medidas: baseadas em • Distância • Informação • Dependência • Consistência • Taxa de erro do classificador SISTEMAS DE INFORMAÇÃO 18 18 18 18SISTEMAS DE INFORMAÇÃO 18 18SISTEMAS DE INFORMAÇÃO 18 18 18 Função de avaliação (função critério) • Medidas de distância • Ex: distância euclidiana: d(u,v) = ||v-u|| • Subconjunto (de características) X é melhor do que o subconjunto Y se: X consegue fazer com que as duas classes fiquem mais distantes do que Y consegue • Qual é a distância entre duas classes? SISTEMAS DE INFORMAÇÃO 19 19 19 19SISTEMAS DE INFORMAÇÃO 19 19SISTEMAS DE INFORMAÇÃO 19 19 19 Distância entre duas classes A e B • Single linkage (vizinhos mais próximos): • dist(A,B) = min dist(a,b), a ∈ A, b ∈ B • Distância mínima entre qualquer ponto da classe A e qualquer ponto da classe B SISTEMAS DE INFORMAÇÃO 20 20 20 20SISTEMAS DE INFORMAÇÃO 20 20SISTEMAS DE INFORMAÇÃO 20 20 20 Distância entre duas classes A e B • Complete linkage (vizinhos mais distantes): • dist(A,B) = max dist(a,b), a ∈ A, b ∈ B • Distância máxima entre qualquer ponto da classe A e qualquer ponto da classe B SISTEMAS DE INFORMAÇÃO 21 21 21 21SISTEMAS DE INFORMAÇÃO 21 21SISTEMAS DE INFORMAÇÃO 21 21 21 Distância entre duas classes A e B • Distância média: • dist(A,B) = 1/(NANB) ∑ dist(a,b), a ∈ A, b ∈ B • Distância média de todos os pares de pontos das classes A e B SISTEMAS DE INFORMAÇÃO 22 22 22 22SISTEMAS DE INFORMAÇÃO 22 22SISTEMAS DE INFORMAÇÃO 22 22 22 Distância entre duas classes A e B • Distância entre centróides: • dist(A,B) = dist (CA,CB) • Distância entre os centros de massa (centróides) da classe A (CA) e da classe B (CB) • I-ésimo componente do centróide da classe k (Ci K) é valor médio dos i-ésimos componentes de todos os elementos (vetores de características) da classe k SISTEMAS DE INFORMAÇÃO 23 23 23 23SISTEMAS DE INFORMAÇÃO 23 23SISTEMAS DE INFORMAÇÃO 23 23 23 Função de avaliação (função critério) • Medidas de informação • Ex: informação mútua, entropia SISTEMAS DE INFORMAÇÃO 24 24 24 24SISTEMAS DE INFORMAÇÃO 24 24SISTEMAS DE INFORMAÇÃO 24 24 24 Função de avaliação (função critério) • Medidas de informação • Ex: informação mútua • Subconjunto X é melhor que Y se a informação mútua entre X e a classe é maior que a informação mútua entre Y e a classe (ie, olhando para X você acerta mais a classe do que olhando Y) ou seja, I(X, c) > I(Y, c) ? SISTEMAS DE INFORMAÇÃO 25 25 2525SISTEMAS DE INFORMAÇÃO 25 25SISTEMAS DE INFORMAÇÃO 25 25 25 Função de avaliação (função critério) • Medidas de informação • Ex: entropia Subconjunto X é melhor que Y se (entropia): a incerteza (entropia) sobre a classe diminui mais olhando para X do que para Y (ie, X fornece mais informação sobre a classe do que Y) ou seja, H(Cx) < H(Cy) ? Ex: cara ou coroa (n=2) SISTEMAS DE INFORMAÇÃO 26 26 26 26SISTEMAS DE INFORMAÇÃO 26 26SISTEMAS DE INFORMAÇÃO 26 26 26 Função de avaliação (função critério) • Medidas de dependência • Ex: correlação Subconjunto X é melhor que Y se: correlação (X, classe) > correlação(Y, classe) ou correlação(X, Y) é alta, um deles pode ser descartado SISTEMAS DE INFORMAÇÃO 27 27 27 27SISTEMAS DE INFORMAÇÃO 27 27SISTEMAS DE INFORMAÇÃO 27 27 27 Função de avaliação (função critério) • Medidas de consistência Ex: Subconjunto X é consistente se todas as instâncias com o mesmo valor de X possuem a mesma classificação SISTEMAS DE INFORMAÇÃO 28 28 28 28SISTEMAS DE INFORMAÇÃO 28 28SISTEMAS DE INFORMAÇÃO 28 28 28 Função de avaliação (função critério) • Medidas baseadas na taxa de erro do classificador • Subconjunto A de características é melhor que o subconjunto B se o classificador apresentou menor erro considerando A do que considerando B • Relação com o classificador: wrapper • Veremos na próxima aula diferentes métodos para medir esse erro SISTEMAS DE INFORMAÇÃO 29 29 29 29SISTEMAS DE INFORMAÇÃO 29 29SISTEMAS DE INFORMAÇÃO 29 29 29 Avaliação das funções de avaliação • Generalidade • O subconjunto selecionado é bom para vários algoritmos de classificação? • Complexidade de tempo • Tempo gasto para selecionar o subconjunto • Desempenho • Desempenho da classificação (ex: acurácia) usando o subconjunto selecionado SISTEMAS DE INFORMAÇÃO 30 30 30 30SISTEMAS DE INFORMAÇÃO 30 30SISTEMAS DE INFORMAÇÃO 30 30 30 Avaliação das funções de avaliação Medida Generalidade Complex. Tempo Acurácia Distância Sim Baixa - Informação Sim Baixa - Dependência Sim Baixa - Consistência Sim Moderada - Taxa de erro do classificador Não Alta Alta - : nada se pode afirmar SISTEMAS DE INFORMAÇÃO 31 31 31 31SISTEMAS DE INFORMAÇÃO 31 31SISTEMAS DE INFORMAÇÃO 31 31 31 Características de um algoritmo de seleção de Características Relação com o classificador Função de avaliação (define métrica do que é “melhor”) Forma de percorrer o espaço de busca (subconjuntos de características) Critério de parada: quando me dou por satisfeito SISTEMAS DE INFORMAÇÃO 32 32 32 32SISTEMAS DE INFORMAÇÃO 32 32SISTEMAS DE INFORMAÇÃO 32 32 32 Forma de percorrer o espaço de subconjuntos de características Isto é: Em que ordem eu avalio os vários conjuntos de características? Quando páro de olhar novos subconjuntos? SISTEMAS DE INFORMAÇÃO 33 33 33 33SISTEMAS DE INFORMAÇÃO 33 33SISTEMAS DE INFORMAÇÃO 33 33 33 Forma de percorrer o espaço de subconjuntos de características • Completo: encontra a solução ótima Exaustivo Busca + backtracking (nem todos são avaliados) Ex: branch and bound, best first search, beam search • Heurístico: incremental a cada iteração, uma nova característica integra o subconjunto corrente (ou é removida dele). O(N2) • Randômico: SISTEMAS DE INFORMAÇÃO 34 34 34 34SISTEMAS DE INFORMAÇÃO 34 34SISTEMAS DE INFORMAÇÃO 34 34 34 Forma de percorrer o espaço de subconjuntos de características • Completo: encontra a solução ótima • Exaustivo (testa todos os subconjuntos) • Busca + backtracking (nem todos são avaliados) • Ex: branch and bound, best first search, beam search • Heurístico: incremental a cada iteração, uma nova característica integra o subconjunto corrente (ou é removida dele). O(N2) • Randômico: SISTEMAS DE INFORMAÇÃO 35 35 35 35SISTEMAS DE INFORMAÇÃO 35 35SISTEMAS DE INFORMAÇÃO 35 35 35 Forma de percorrer o espaço de subconjuntos de características • Completo: encontra a solução ótima • Exaustivo (testa todos os subconjuntos) • Busca + backtracking (nem todos são avaliados) • Ex: branch and bound, best first search, beam search • Heurístico: incremental ou baseado em pesosncremental ação, uma nova característica integra o subconjun • Randômico: SISTEMAS DE INFORMAÇÃO 36 36 36 36SISTEMAS DE INFORMAÇÃO 36 36SISTEMAS DE INFORMAÇÃO 36 36 36 Forma de percorrer o espaço de subconjuntos de características • Completo: encontra a solução ótima Exaustivo (testa todos os subconjuntos) • Busca + backtracking (nem todos são avaliados) • Ex: branch and bound, best first search, beam search • Heurístico: incremental ou baseado em pesos • Randômico: cada novo subconjunto é gerado aleatoriamente. • Definição de um número máximo de iterações SISTEMAS DE INFORMAÇÃO 37 37 37 37SISTEMAS DE INFORMAÇÃO 37 37SISTEMAS DE INFORMAÇÃO 37 37 37 Forma de percorrer o espaço de subconjuntos de características • Completo: encontra a solução ótima • Exaustivo (testa todos os subconjuntos) • Busca + backtracking (nem todos são avaliados) • Ex: branch and bound, best first search, beam search SISTEMAS DE INFORMAÇÃO 38 38 38 38SISTEMAS DE INFORMAÇÃO 38 38SISTEMAS DE INFORMAÇÃO 38 38 38 Branch and bound (completo) • Quero selecionar D características de um total de N (um “bom chute” é a raiz quadrada de N) • “Crio” (sob demanda) uma árvore na qual • Cada nó possui um subconjunto de características • A raiz possui o subconjunto contendo TODAS (N) as características • Um nó filho tem uma característica a menos que seu pai • Folhas têm subconjuntos com D características • Busca em profundidade para achar a folha melhor avaliada SISTEMAS DE INFORMAÇÃO 39 39 39 39SISTEMAS DE INFORMAÇÃO 39 39SISTEMAS DE INFORMAÇÃO 39 39 39 SISTEMAS DE INFORMAÇÃO 40 40 40 40SISTEMAS DE INFORMAÇÃO 40 40SISTEMAS DE INFORMAÇÃO 40 40 40 Branch and bound Entrada: • uma amostra de treinamento (rotulada) • D (número desejado de características) • a árvore de características (Ti(n) é o i-ésimo nó do nível n; nível contado de D a N (das folhas até a raiz) SISTEMAS DE INFORMAÇÃO 41 41 41 41SISTEMAS DE INFORMAÇÃO 41 41SISTEMAS DE INFORMAÇÃO 41 41 41 SISTEMAS DE INFORMAÇÃO 42 42 42 42SISTEMAS DE INFORMAÇÃO 42 42SISTEMAS DE INFORMAÇÃO 42 42 42 Branch and bound Entrada: • uma amostra de treinamento (rotulada) • D (número desejado de características) • a árvore de características (Ti(n) é o i-ésimo nó do nível n; nível contado de D a N (das folhas até a raiz) • Uma função critério F 1. melhor_medida ← 0 2. S ← ∅ 3. Explore_no(T1(N)) Saída: S terá o subconjunto melhor avaliado //melhor valor de F até o momento //S = melhor subconjunto de caract. até o momento (F(S) = melhor_medida) SISTEMAS DE INFORMAÇÃO 43 43 43 43SISTEMAS DE INFORMAÇÃO 43 43SISTEMAS DE INFORMAÇÃO 43 43 43 Função critério do branch and bound • A função de avaliação utilizada deve ser monotonicamente crescente na dimensão (nr de características), isto é, para subconjuntos A e B, F(A) <= F(AUB) , isto é, se eu tirar elementos de um subconjunto (descer na árvore), a medida de avaliação do subconjunto resultante não pode aumentar (fica igual ou piora) – Ex: funções baseadas em distância Ideia: Se eu já sei que um subconjunto S de tamanho D possui F(S)=melhor_medida, não vou analisar subconjuntos maiores que com medidas <= melhor_medida, pois esse valor só pode piorar ao remover algumas características SISTEMAS DE INFORMAÇÃO 44 44 44 44SISTEMAS DE INFORMAÇÃO 44 44SISTEMAS DE INFORMAÇÃO 44 44 44 SISTEMAS DE INFORMAÇÃO 45 45 45 45SISTEMAS DE INFORMAÇÃO 45 45SISTEMAS DE INFORMAÇÃO 45 45 45 Ex: F(T2(4)) = 180 Ent o n o preciso ã ã avaliar seus descendentes SISTEMAS DE INFORMAÇÃO 46 46 46 46SISTEMAS DE INFORMAÇÃO 46 46SISTEMAS DE INFORMAÇÃO 46 46 46 Explore_no(Ti(n)): Se (F(Ti(n)) ≤ melhor_medida) retorna; // se o nó não é promissor, não siga sua subárvore,pois tirar características desse subconjunto não vai aumentar F() Se (n = D) então // F(Ti(n)) > melhor_medida, senão teria retornado acima melhor_medida ← F(Ti(n)) S ← Ti(n) retorna //ie, melhor_medida é sempre de uma folha (com exceção da inicialização) // para um nó não-folha ser avaliado, ele precisa ter um F maior do que a da melhor folha avaliada até o momento Para todos (Tk(n-1) ⊂ Ti(n)) // filhos do nó Ti(n) Explore_no(Tk(n-1)) retorna SISTEMAS DE INFORMAÇÃO 47 47 47 47SISTEMAS DE INFORMAÇÃO 47 47SISTEMAS DE INFORMAÇÃO 47 47 47 Branch and bound • Observações • A função de avaliação utilizada deve ser monotonicamente crescente na dimensão • Melhor usar com funções de avaliação baseadas em distância • Encontra a solução ótima • Apesar de não exaustivo, ainda pode ser computacionalmente intenso (dependendo de N e D) • Pode dar o azar de ser exaustivo… quando? • A árvore não precisa ser criada de verdade, é só uma representação lógica do que ocorre na recursão SISTEMAS DE INFORMAÇÃO 48 48 48 48SISTEMAS DE INFORMAÇÃO 48 48SISTEMAS DE INFORMAÇÃO 48 48 48 Forma de percorrer o espaço de subconjuntos de características • Completo: encontra a solução ótima Exaustivo (testa todos os subconjuntos) • Busca + backtracking (nem todos são avaliados) • Ex: branch and bound, best first search, beam search • Heurístico: incremental ou baseado em pesos • Randômico: cada novo subconjunto é gerado aleatoriamente. • Definição de um número máximo de iterações SISTEMAS DE INFORMAÇÃO 49 49 49 49SISTEMAS DE INFORMAÇÃO 49 49SISTEMAS DE INFORMAÇÃO 49 49 49 Heurísticos Backward selection: começa com todas as características; a cada iteração características são deletadas do subconjunto corrente – Ex: sequential backward selection (SBS) Forward selection: começa com o conjunto vazio; a cada iteração novas características são adicionadas ao subconjunto corrente – Ex: sequential forward selection (SFS) • Forward-Backward: combinação de ambos – Ex: plus t – take away r • Weighting: durante a execução as características recebem pesos; no final são selecionadas as que têm peso maior que um limiar SISTEMAS DE INFORMAÇÃO 50 50 50 50SISTEMAS DE INFORMAÇÃO 50 50SISTEMAS DE INFORMAÇÃO 50 50 50 Heurísticos – Sequential Backward Selection • Início: conjunto de N características (raiz da árvore) • A cada iteração: testa o novo subconjunto composto pelo subconjunto corrente – (menos) uma de cada característica. O novo subconjunto corrente será o melhor avaliado • Continua até alcançar D características • Figura (semelhante à da branch and bound) SISTEMAS DE INFORMAÇÃO 51 51 51 51SISTEMAS DE INFORMAÇÃO 51 51SISTEMAS DE INFORMAÇÃO 51 51 51 Heurísticos – Sequential Backward Selection • Início: conjunto de N características (raiz da árvore) • A cada iteração: testa o novo subconjunto composto pelo subconjunto corrente – (menos) uma de cada característica. O novo subconjunto corrente será o melhor avaliado • Continua até alcançar D características • Figura (semelhante à da branch and bound) • Problema: SISTEMAS DE INFORMAÇÃO 52 52 52 52SISTEMAS DE INFORMAÇÃO 52 52SISTEMAS DE INFORMAÇÃO 52 52 52 Heurísticos – Sequential Backward Selection • Início: conjunto de N características (raiz da árvore) • A cada iteração: testa o novo subconjunto composto pelo subconjunto corrente – (menos) uma de cada característica. O novo subconjunto corrente será o melhor avaliado • Continua até alcançar D características • Figura (semelhante à da branch and bound) • Problema: depois que uma característica sai, não entra mais SISTEMAS DE INFORMAÇÃO 53 53 53 53SISTEMAS DE INFORMAÇÃO 53 53SISTEMAS DE INFORMAÇÃO 53 53 53 Heurísticos – Sequential Forward Selection • Início: conjunto vazio (raiz da árvore) • A cada iteração: testa o novo subconjunto composto pelo subconjunto corrente + uma de cada característica faltante. O novo subconjunto corrente será o melhor avaliado • Continua até alcançar D características, ou o melhor de todos SISTEMAS DE INFORMAÇÃO 54 54 54 54SISTEMAS DE INFORMAÇÃO 54 54SISTEMAS DE INFORMAÇÃO 54 54 54 Heurísticos – Sequential Forward Selection • Início: conjunto vazio (raiz da árvore) • A cada iteração: testa o novo subconjunto composto pelo subconjunto corrente + uma de cada característica faltante. O novo subconjunto corrente será o melhor avaliado • Continua até alcançar D características • Problema: SISTEMAS DE INFORMAÇÃO 55 55 55 55SISTEMAS DE INFORMAÇÃO 55 55SISTEMAS DE INFORMAÇÃO 55 55 55 Heurísticos – Sequential Forward Selection • Início: conjunto vazio (raiz da árvore) • A cada iteração: testa o novo subconjunto composto pelo subconjunto corrente + uma de cada característica faltante. O novo subconjunto corrente será o melhor avaliado • Continua até alcançar D características • Problema: depois que uma característica entra, não sai mais SISTEMAS DE INFORMAÇÃO 56 56 56 56SISTEMAS DE INFORMAÇÃO 56 56SISTEMAS DE INFORMAÇÃO 56 56 56 Incremental forward SISTEMAS DE INFORMAÇÃO 57 57 57 57SISTEMAS DE INFORMAÇÃO 57 57SISTEMAS DE INFORMAÇÃO 57 57 57 Heurísticos – plus l – take away r (l > r) • Início: conjunto vazio (raiz da árvore) • A cada iteração: • A) testa o novo subconjunto composto pelo subconjunto corrente + l novas características. O novo subconjunto corrente será o melhor avaliado dentre as várias possibilidades (de + l caract.) • B) testa o novo subconjunto composto pelo subconjunto corrente – r características. O novo subconjunto corrente será o melhor avaliado dentre as várias possibilidades (de - r caract.) SISTEMAS DE INFORMAÇÃO 58 58 58 58SISTEMAS DE INFORMAÇÃO 58 58SISTEMAS DE INFORMAÇÃO 58 58 58 Heurísticos –Weighting • Ex: RELIEF (distância euclidiana): (KIRA & RENDELL, 1992) • Para cada instância (de um certo número de instâncias m) são encontrados: – NearHit (instância mais próxima da mesma classe) – NearMiss (instância mais próxima de classe diferente) SISTEMAS DE INFORMAÇÃO 59 59 59 59SISTEMAS DE INFORMAÇÃO 59 59SISTEMAS DE INFORMAÇÃO 59 59 59 Heurísticos –Weighting • Ex: RELIEF (distância euclidiana): • Para cada instância (de um certo número de instâncias m) são encontrados: – NearHit (instância mais próxima da mesma classe) – NearMiss (instância mais próxima de classe diferente) • As características têm seus pesos atualizados, sendo consideradas: – Mais relevantes se distinguem a instância de seu nearMiss – Menos relevantes se distinguem a instância de seu nearHit SISTEMAS DE INFORMAÇÃO 60 60 60 60SISTEMAS DE INFORMAÇÃO 60 60SISTEMAS DE INFORMAÇÃO 60 60 60 Heurísticos –Weighting Relief (Dataset, m, relevancia_min): S = vazio //características selecionadas Para j =1 a N Wj = 0 //pesos de cada uma das N características fj's Para i =1 a m Escolha aleatoriamente uma instância x no Dataset Encontre seus NearHit e NearMiss (de um sorteio de instâncias) Para cada característica fj, j = 1 a N Wj = Wj – diff(xj, NearHitj)2 + diff(xj, NearMissj)2 Para j = 1 a N relevanciai = Wj / m Se relevanciaj >= relevancia_min S = S “+” fj Retorna S SISTEMAS DE INFORMAÇÃO 61 61 61 61SISTEMAS DE INFORMAÇÃO 61 61SISTEMAS DE INFORMAÇÃO 61 61 61 Heurísticos –Weighting diff (xj, yj): Se fj é uma variável nomimal: diff(xj, yj) = 0 se xj = yj 1 caso contrário Se fj é uma variável numérica: diff(xj, yj) = (xj – yj) / nj no qual nj é um valor para normalizar diff em [0,1] SISTEMAS DE INFORMAÇÃO 62 62 62 62SISTEMAS DE INFORMAÇÃO 62 62SISTEMAS DE INFORMAÇÃO 62 62 62 Heurísticos –Weighting Relief (Dataset, m, relevancia_min): S = vazio //características selecionadas Para j =1 a N Wj = 0 //pesos de cada uma das N características fj's Para i =1 a m Escolha aleatoriamente uma instância x no Dataset Encontre seus NearHit e NearMiss (de um sorteio de instâncias) Para cada característica fj, j = 1 a N Wj = Wj – diff(xj, NearHitj)2+ diff(xj, NearMissj)2 Para j = 1 a N relevanciai = Wj / m Se relevanciaj >= relevancia_min S = S “+” fj Retorna S SISTEMAS DE INFORMAÇÃO 63 63 63 63SISTEMAS DE INFORMAÇÃO 63 63SISTEMAS DE INFORMAÇÃO 63 63 63 Heurísticos –Weighting Relief (Dataset, m, relevancia_min): S = vazio //características selecionadas Para j =1 a N Wj = 0 //pesos de cada uma das N características fj's Para i =1 a m Escolha aleatoriamente uma instância x no Dataset Encontre seus NearHit e NearMiss (de um sorteio de instâncias) Para cada característica fj, j = 1 a N Wj = Wj – diff(xj, NearHitj)2 + diff(xj, NearMissj)2 Para j = 1 a N relevanciai = Wj / m Se relevanciaj >= relevancia_min S = S “+” fj Retorna S SISTEMAS DE INFORMAÇÃO 64 64 64 64SISTEMAS DE INFORMAÇÃO 64 64SISTEMAS DE INFORMAÇÃO 64 64 64 SISTEMAS DE INFORMAÇÃO 65 65 65 65SISTEMAS DE INFORMAÇÃO 65 65SISTEMAS DE INFORMAÇÃO 65 65 65 SISTEMAS DE INFORMAÇÃO 66 66 66 66SISTEMAS DE INFORMAÇÃO 66 66SISTEMAS DE INFORMAÇÃO 66 66 66 Randômicos • Cada novo subconjunto é gerado aleatoriamente • Exemplos: • LVF – Las Vegas Filter • Baseados em algoritmo genético SISTEMAS DE INFORMAÇÃO 67 67 67 67SISTEMAS DE INFORMAÇÃO 67 67SISTEMAS DE INFORMAÇÃO 67 67 67 Randômico – LVF (Las Vegas Filter) Avalia um número pré-determinado de subconjuntos de características (MAX_TENTATIVAS) • Cada subconjunto S é escolhido aleatoriamente (tamanho e elementos) • Há a melhor solução corrente (Sbest) • Cbest é a cardinalidade do subconjunto Sbest • O próximo subconjunto só é analisado se sua cardinalidade for menor ou igual a Cbest • Se sua análise for boa (taxa de inconsistência menor ou igual a um limiar), torna-se Sbest SISTEMAS DE INFORMAÇÃO 68 68 68 68SISTEMAS DE INFORMAÇÃO 68 68SISTEMAS DE INFORMAÇÃO 68 68 68 Randômico – LVF (Las Vegas Filter) Entrada: MAX_TENTATIVAS D (dataset) N (número total de características) L (limiar de taxa de inconsistência) Saída: Subconjuntos (vários) que satisfazem o critério de inconsistência SISTEMAS DE INFORMAÇÃO 69 69 69 69SISTEMAS DE INFORMAÇÃO 69 69SISTEMAS DE INFORMAÇÃO 69 69 69 Randômico – LVF (Las Vegas Filter) • Critério de inconsistência (S, D) • Duas instâncias são inconsistentes se seus valores das características de S são iguais mas suas classes não • Considerando que existam q conjuntos de instâncias inconsistentes (cada conjunto contendo as instâncias com os mesmos valores das características S). Para cada conjunto: • n instâncias inconsistentes = c1 + c2 + …. (onde ci é o número de instâncias da classe i neste conjunto) • O contador de inconsistência deste conjunto = n-cmax, onde cmax = max (c1, c2, ….) • Taxa de inconsistência = soma dos contadores de inconsistência dos q conjuntos / | D | • Observação: não apropriado para valores contínuos de características SISTEMAS DE INFORMAÇÃO 70 70 70 70SISTEMAS DE INFORMAÇÃO 70 70SISTEMAS DE INFORMAÇÃO 70 70 70 Randômico – LVF (Las Vegas Filter) Cbest = N Para i = 1 até MAX_TENTATIVAS S=sorteiaSubconjunto(semente) C = cardinalidade(S) se (C ≤ Cbest) se (taxaInconsistencia(S, D) < L) imprime (C, S) se (C < Cbest) Cbest = C SISTEMAS DE INFORMAÇÃO 71 71 71 71SISTEMAS DE INFORMAÇÃO 71 71SISTEMAS DE INFORMAÇÃO 71 71 71 Randômico – LVF (Las Vegas Filter) • Limiar L: – Pode ser = taxaInconsistência (SA, D), onde SA é o conjunto de todas as características SISTEMAS DE INFORMAÇÃO 72 72 72 72SISTEMAS DE INFORMAÇÃO 72 72SISTEMAS DE INFORMAÇÃO 72 72 72 Randômico – LVF (Las Vegas Filter) Critério de parada? • número máximo de tentativas (sugestão experimental: 77*N) • Balanço entre tempo e qualidade da solução • Na verdade pode-se parar a qualquer momento (e escolher o último subconjunto impresso) SISTEMAS DE INFORMAÇÃO 73 73 73 73SISTEMAS DE INFORMAÇÃO 73 73SISTEMAS DE INFORMAÇÃO 73 73 73 Randômico – Algoritmos Genéticos Primeiro vamos entender a lógica por trás de algoritmos genéticos como um todo. Finalidade: otimização aleatória → encontra uma boa solução (dentre as possíveis) percorrendo o espaço de busca de forma aleatória, mas usando um algoritmo mais sofisticado para sortear a próxima solução a ser analisada SISTEMAS DE INFORMAÇÃO 74 74 74 74SISTEMAS DE INFORMAÇÃO 74 74SISTEMAS DE INFORMAÇÃO 74 74 74 Randômico – Algoritmos Genéticos • População de indivíduos (tamanho constante): amostra do espaço de busca (de soluções) • Cada indivíduo (uma possível solução) é um “cromossomo” contendo “genes” (vetor de valores) – No contexto de seleção de características: N SISTEMAS DE INFORMAÇÃO 75 75 75 75SISTEMAS DE INFORMAÇÃO 75 75SISTEMAS DE INFORMAÇÃO 75 75 75 Randômico – Algoritmos Genéticos • Cada indivíduo (uma possível solução) é avaliado por uma função fitness • Os indivíduos mais aptos (com melhor avaliação) geram descendentes (que herdam parte de suas características) • Crossover: mistura de 2 pais (origem a 2 filhos) • Mutação: alteração de 1 pai • Os indivíduos menos aptos morrem • MAX_GERACOES: número de gerações que são produzidas (critério de parada) SISTEMAS DE INFORMAÇÃO 76 76 76 76SISTEMAS DE INFORMAÇÃO 76 76SISTEMAS DE INFORMAÇÃO 76 76 76 Randômico – Algoritmo Genético para Seleção de Características [VAFAIE & IMAM, 1994] • Indivíduo: vetor binário de tamanho n (0 na i-ésima posição indica a ausência da característica i, e 1 sua presença) • Crossover: dada uma posição, concatena a primeira parte de um com a segunda parte de outro (gerando 2 filhos distintos) • Mutação: altera aleatoriamente um ou mais componentes de um pai • Função fitness: desempenho do classificador (wrapper) SISTEMAS DE INFORMAÇÃO 77 77 77 77SISTEMAS DE INFORMAÇÃO 77 77SISTEMAS DE INFORMAÇÃO 77 77 77 SISTEMAS DE INFORMAÇÃO 78 78 78 78SISTEMAS DE INFORMAÇÃO 78 78SISTEMAS DE INFORMAÇÃO 78 78 78 SISTEMAS DE INFORMAÇÃO 79 79 79 79SISTEMAS DE INFORMAÇÃO 79 79SISTEMAS DE INFORMAÇÃO 79 79 79 SISTEMAS DE INFORMAÇÃO 80 80 80 80SISTEMAS DE INFORMAÇÃO 80 80SISTEMAS DE INFORMAÇÃO 80 80 80 Em resumo... • Cada algoritmo de seleção de características pode ser entendido a partir dessas informações: – É do tipo filtro, camada ou embutido – Qual função critério é utilizada? (pode ser a combinação de uma ou mais – Como ele percorre o espaço de busca? • Acha o ótimo dentre todas as combinações possíveis? (logo, a função critério deve avaliar o subconjunto como um todo) • Usa alguma heurística para escolher um subconjunto? (selecionando heuristicamente cada subconjunto a ser avaliado, ou dando uma nota para cada característica separadamente e arbitrariamente escolhendo as melhores) • De forma aleatória SISTEMAS DE INFORMAÇÃO 81 81 81 81SISTEMAS DE INFORMAÇÃO 81 81SISTEMAS DE INFORMAÇÃO 81 81 81 Exemplos • CFS: Correlation-based feature selection - características altamente correlacionadas com a classe alvo, porém pouco correlacionadas entre si (HALL, 1990) • mRMR: Minimum Redundance Maximum Relevance - dois critérios: mínima redundância entre pares de caracteríssticas e relevância máxima por meio da medida de informação mútua (DING; PENG, 2005) SISTEMAS DE INFORMAÇÃO 82 82 82 82SISTEMAS DE INFORMAÇÃO 82 82SISTEMAS DE INFORMAÇÃO 82 82 82 Atividade 3 (para 01/09) Seleção de características usando ao menos método à escolha (se 2 ou mais, de preferência o mais distintos possível) Métodos: uso de quais rotinas, parâmetros utilizados e por quê, outras informações relevantes Por ex: no caso do Relief, como selecionou as características com base nos pesos e por quê Resultados: quantas e quais características foram selecionadas Discussão: o que você achou dos resultados? Reduziu bastante? SISTEMAS DE INFORMAÇÃO 83 83 83 83SISTEMAS DE INFORMAÇÃO 83 83SISTEMAS DE INFORMAÇÃO 83 83 83 Observações sobre o trabalho - Para a maioria dos métodos de seleção de características precisa usar uma colunade classificação (supervisionados) SISTEMAS DE INFORMAÇÃO 84 84 84 84SISTEMAS DE INFORMAÇÃO 84 84SISTEMAS DE INFORMAÇÃO 84 84 84 Referências • DASH, M., LIU, H., Feature Selection for Classification. Intelligent Data Analysis 1, 131-156, 1997. • DING, C.; PENG, H. Minimum redundancy feature selection from microarray gene expression data. Journal of bioinformatics and computational biology, World Scientic, v.3, n. 02, p. 185-205, 2005. • HALL, M. A. Correlation-based feature selection for machine learning. University of Waikato Hamilton, 1999. • LIU, H., SETIONO, R., A Probabilistic Approach to Feature Selection - A Filter Solution. In: Proceedings of International Conference on Machine Learning, 319-327, 1996. (alg. LVF) • VALFAIE, H., IMAM, I.F., Feature selection methods: genetic algorithms vs. greedy-like search. In: Proceedings of the International Conference on Fuzzy and Intelligent Control Systems, 1994 Slide 1 Slide 2 Slide 3 Slide 4 Slide 5 Slide 6 Slide 7 Slide 8 Slide 9 Slide 10 Slide 11 Slide 12 Slide 13 Slide 14 Slide 15 Slide 16 Slide 17 Slide 18 Slide 19 Slide 20 Slide 21 Slide 22 Slide 23 Slide 24 Slide 25 Slide 26 Slide 27 Slide 28 Slide 29 Slide 30 Slide 31 Slide 32 Slide 33 Slide 34 Slide 35 Slide 36 Slide 37 Slide 38 Slide 39 Slide 40 Slide 41 Slide 42 Slide 43 Slide 44 Slide 45 Slide 46 Slide 47 Slide 48 Slide 49 Slide 50 Slide 51 Slide 52 Slide 53 Slide 54 Slide 55 Slide 56 Slide 57 Slide 58 Slide 59 Slide 60 Slide 61 Slide 62 Slide 63 Slide 64 Slide 65 Slide 66 Slide 67 Slide 68 Slide 69 Slide 70 Slide 71 Slide 72 Slide 73 Slide 74 Slide 75 Slide 76 Slide 77 Slide 78 Slide 79 Slide 80 Slide 81 Slide 82 Slide 83 Slide 84
Compartilhar