A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Predicting Rare Classes: Comparing Two-Phase Rule Induction to Cost-Sensitive Boosting Mahesh V. Joshi Ramesh C. Agarwal Vipin Kumar Apresentação Carlos.

Apresentações semelhantes


Apresentação em tema: "Predicting Rare Classes: Comparing Two-Phase Rule Induction to Cost-Sensitive Boosting Mahesh V. Joshi Ramesh C. Agarwal Vipin Kumar Apresentação Carlos."— Transcrição da apresentação:

1 Predicting Rare Classes: Comparing Two-Phase Rule Induction to Cost-Sensitive Boosting Mahesh V. Joshi Ramesh C. Agarwal Vipin Kumar Apresentação Carlos Bol Nelson Alberti da Rosa CMP259 – Porto Alegre 29/05/2008

2 2 Agenda Objetivo Introdução Overview dos Algoritmos (AdaCost e PNrule) Métricas para Avaliação de modelos PNrule Objetivo Estratégia 2 Fases Aprendizado (fases e distorções) Aplicação Simplificação Regras Algoritmo Escoragem Tornando Sensível a Custo Comparando Algoritmos Referências

3 3 Objetivo Construir modelos para distinguir uma classe rara dentro de um domínio desbalanceado. Classes raras, são eventos que ocorrem muito raramente em grandes volumes de itens.

4 4 Introdução Domínios: Detecção de fraude Detecção de invasão de rede Categorização de texto Mineração na WEB Dados disponíveis de forma rotulada, bom para uso em métodos de classificação.

5 5 Introdução A métrica de avaliação significativa nesta área, no sentido de solucionar o problema deve refletir um equilíbrio entre Recall e Precision de uma determinada classe rara. two-phase rule-induction algorithm PNrule desacopla recall-precision cost-sensitive Boosting algorithm AdaCost enfatiza implicitamente recall-precision

6 6 Introdução Boosting gera um conjunto de modelos (meta-técnica) Não meta-técnica produz um modelo único Em muitos cenários, PNrule é comparável ou muito melhor que Boosting sob a perspectiva recall-precision Mesmo se PNrule tiver performance comparável, ele será melhor nos domínios aonde fácil interpretação é necessária

7 7 Overview dos algoritimos - Boosting AdaBoost, SLIPPER, AdaCost, CSB1, CSB2, RareBoost É um forte meta-classificador Trabalha em iterações, cada vez aprendendo um modelo classificador via um weak learner em diferente distribuição de peso nos registros de treinamento. Após cada iteração os pesos são atualizados No fim, a predição é feita usando os classificadores utilizados em todas iterações aplicando um processo de votação de pesos.

8 8 Overview dos algoritimos - PNRule Dado um conjunto de dados de treinamento e uma classe alvo, o algoritmo executa um modelo binário de duas-fases na classe alvo. PNrule executa um modelo disjuntivo de forma normal (DNF) consistindo em dois tipos de regras: P-Rule prediz a presença da classe rara N-Rule prediz a ausência Então os verdadeiros e falsos positivos cobertos por P- Rule são coletados, e a segunda fase N-phase executa as N-Rules para remover os falsos positivos. A meta é implementar precisão enquanto mantém o recall em níveis aceitáveis.

9 9 Exemplo ilustração- PNRule Construindo um modelo de ataque intrusivo de rede do tipo: - Remote-to-local (r2l) Pode ser determinado através de regras em atributos: - tipo de protocolo = (tcp, udp, etc) - número de logins - tipo de serviço = (ftp, http, etc) Mas algumas regras podem capturar Falsos Positivos... Os Falsos Positivos devem ser removidos por regras de aprendizagem - duração da conexão < 2s - bytes transferidos < 200

10 10 Exemplo ilustração- PNRule Habilidade PNrule em remover coletivamente Falsos Positivos N-rules

11 11 Métricas para avaliação de Modelos Acurácia:VP + VN x 100% n Erro : FP + FN x 100% n Especificidade : VN x 100% VN + FP

12 12 Métricas para avaliação de Modelos Abrangência ou Recall: VP x 100% VP + FN Precisão: VP x 100% VP + FP

13 13 PNrule Atua sobre um espaço de aprendizado Os registros desse espaço possuem atributos e um desses define sua categoria – chamado de atributo de classe Trata espaços de múltiplas classes criando classificadores binários para cada uma das classes Cria modelos baseados em regras As regras são condições sobre os atributos dos registros

14 14 PNrule Objetivo Obter um modelo com um pequeno número de regras ( cardinalidade) Que cubra um maior número de exemplos da classe alvo ( Cobertura) Que atinja poucos exemplos fora da classe alvo ( Acurácia)

15 15 PNrule Estratégia Obtém as regras em um processo cíclico Inicialmente com maior cobertura e acurácia Em cada ciclo a acurácia é relaxada em favor da cobertura

16 16 PNrule 2 Fases > Primeira Fase: P - Positive Rule Descobre regras que prevêem a presença da Classe Alvo. > Segunda Fase: N - Negative Rule Descobre regras que prevêem a ausência da Classe Alvo. A união das Negative Rule com as Positive Rule tem o objetivo de eliminar os casos de falso positivo derivados das Positive Rules Esse processo é repetido para cada uma das classes. No Final os escores são consolidados em uma matriz de custo para obter-se uma decisão final.

17 17 PNrule Aprendizado - 1.a fase a)Representação dos dados de treinamento C – Classe Alvo(+) D – Outras(-) D C

18 18 PNrule Aprendizado - 1.a fase b) Descobre a regra Positiva com maior cobertura e acurácia C – Classe Alvo(+) D – Outras(-) P0 – P-rule D CP0

19 19 PNrule Aprendizado - 1.a fase c) Remove os itens que suportam P0 e repete o processo com os restantes enquanto a cobertura e acurácia são altos (acima de um limiar) C – Classe Alvo(+) D – Outras(-) P0 – P-rule 0 P1 – P-rule 1 P2 – P-rule 2 D CP0 P1P2

20 20 PNrule Aprendizado - 1.a fase d) Devido a escolha das regras P-rule serem baseadas no suporte, há alguns itens da classe D (-) que são classificados como da classe alvo;esses são referidos como FALSOS POSITIVOS C – Classe Alvo(+) D – Outras(-) FP – Falso Positivo D C FPFP FPFP

21 21 PNrule Aprendizado - 2.a fase e) União dos itens cobertos por todas as regras Px que servirão de base para descobrir as N-Rule C – Classe Alvo(+) D – Outras(-) U – Itens cobertos por P-rules D C U

22 22 PNrule Aprendizado - 2.a fase f) O Objetivo agora é descobrir regras, N- rule, que definam a ausência da classe Alvo (C) C – Classe Rara (+) D – Outras (-) N0 – N-rule 0 D C N0

23 23 PNrule Aprendizado - 2.a fase g) A baixa de acurácia nessa fase implica em um fenômeno chamado de: Introdução de Falsos Negativos C – Classe Alvo(+) D – Outras(-) FN – Falsos Negativos D C FNFN

24 24 PNrule Distorções do Aprendizado Distorções decorrentes da falta de acurácia FP – Falso Positivo > baixa acurácia das P-rule FN – FalsoNegativos > Baixa acurácia das N-rule C- > P-rule ?? D C FNFN FPFP

25 25 PNrule Aplicação (simplificada) Dado um novo evento, descobrir se pertence a uma determinada classe ? > Aplica-se as P-rule(*) :. Se nenhuma P-rule é aplicada -> FALSO. A primeira P-rule que é aplicada -> fase Nrule > Aplica-se as N-rule(*):. A primeira N-rule que é aplicada -> FALSO. Se nenhuma N-rule é aplicada -> VERDADEIRO * Na ordem decrescente de significância (suporte e acurácia) ou ordem de descoberta

26 26 PNrule Simplificação Se não houvesse mecanismo de escoragem a classe alvo C seria simplesmente definida por: C = (P0 v P1 v... Pn) ^ ~N0 ^ ~N1 ^... ~Nm.

27 27 PNrule Regras Como as regras são descobertas??

28 28 PNrule Algoritmo – 1.a fase

29 29 PNrule Algoritmo – 2.a fase

30 30 PNrule Algoritmo - Matrizes

31 31 PNrule Algoritmo - Regra

32 32 PNrule Algoritmo - Regra O cálculo da força da regra utiliza duas técnicas diferentes: > Classes discretas -> Z-numberZ-number > Classes continuas -> Y-number

33 33 PNrule Escoragem O mecanismo de escoragem objetiva: > Minimizar as distorções produzidas pela baixa acurácia das PN-rule (FP e FN) > Resolver conflitos em domínios de múltiplas classes e múltiplas regras D C FNFN FPFP

34 34 PNrule Escoragem Escore: > O escore é a probabilidade de um determinado evento pertencer a classe alvo (0% a 100%) > Os escores são calculados para cada combinação de P-rule e N-rule Nj Pi %

35 35 PNrule Escoragem > A questão a determinar é : quanto a regra Nj influi na regra Pi ? Nj Pi %

36 36 PNrule Escoragem > A necessidade de (Pi x Nj) esta no fato das Nj serem descobertas sobre o conjunto determinado pela cobertura de todas as Pi e > Determinada Nj pode influir mais significativamente em algum subset de Pis Nj Pi %

37 37 PNrule Escoragem Matrizes: > A matriz de escore, ScoreMatrix, é calculada a partir de duas outras matrizes:. Matriz de Suporte – SupportMatrix. Matriz de Erro – ErrorMatrix Nj Pi #

38 38 PNrule Escoragem Matriz de suporte: > Registra o número de eventos que é alvo de ambas as regras : P-rule e N-rules. Ou seja, registra o número de predições positivas feitas por Pi que são convertidas para falsa por Nj (->FP). N0N1N2~N P P P285627

39 39 PNrule Escoragem Matriz de erro: > Registra o número de erros de predição onde:. A área clara registra os casos de falsos negativos (FN) introduzidos por Nj para cada Pi. A última coluna registra os casos de falsos positivos (FP) de Pi que não foram removidos por nenhuma Nj N0N1N2~N P00031 P11244 P20124

40 40 PNrule Escoragem Matriz de suporte + Matriz de erro: > [P1,N0] indica que a decisão de N0 eliminar 3 casos de falsos positivos errou em 1 caso ocasionando a introdução de falsos negativos E N0N1N2~N P00031 P11244 P20124 S N0N1N2~N P P P285627

41 41 PNrule Escoragem Matriz Escore = Matriz suporte + Matriz erro: > O escore de P1 (inicial) é calculado em termos da sua precisão, considerando os casos positivos (VP) e falsos positivos (FP) Escore = VP/VP+FP = 53/53+12 = 81.5% E N0N1N2~N P00031 P11244 P20124 S N0N1N2~N P P P285627

42 42 PNrule Escoragem Há que se considerar três aspectos no cálculo e atribuição do escore em relação as regras P e N: 1.o Estabelecimento do suporte mínimo para as regras N; 2.o Desconsiderar a influência de N-rule; 3.o Capacidade de uma regra distinguir uma classe

43 43 PNrule Escoragem 1.o Estabelecimento do suporte mínimo, MinSupport, para considerar a influência de Nj sobre Pi Tendo o MinSupport = 5, como o suporte de N0=3 logo a influência de N0 sobre P1 é desconsiderada S N0N1N2~N P P P285627

44 44 PNrule Escoragem 2.o Desconsiderar a influência de N-rule; Necessidade de recalcular a precisão em função de desconsiderar a significância de N0 sobre P1; como a regras Nj são sequencialmente aplicadas, a regra N1 é descoberta apenas para os casos onde N0 não se aplica; logo, a precisão a considerar para [P1,N1] passa a ser : Escore = VP/VP+FP = 52/52+10 = 83,9 % ESN0N1N2~N P0 P P2

45 45 PNrule Escoragem Outro modo de mostrar a variação na precisão das Pi devido a aplicação sucessiva das Nj com a eliminação de FP e introdução de FN FP InicN0N1N2 P02221 P P VP InicN0N1N2 P P P Pr. InicN0N1N2 P P P

46 46 PNrule Escoragem 3.o Capacidade de uma regra distinguir uma classe Procura reunir em uma única métrica, Z-number, a partir das medidas de suporte e acurácia, a capacidade de uma determinada regra distinguir a classe alvo. Zn = (Sr)**(1/2) (Ar – Ac)/ (Ac(1-Ac))**(1/2), onde: Sr – Suporte da regra; Ar – Acurácia da regra; Ac – Significância da classe na amostra (|c|/|Amostra|), sendo (Ac(1-Ac))**(1/2) o desvio padrão de Ac.

47 47 PNrule Escoragem 3.o Capacidade de uma regra distinguir uma classe Zn = (Sr)**(1/2) (Ar – Ac)/ (Ac(1-Ac))**(1/2), onde: (Sr – Suporte da regra; Ar – Acurácia da regra) > Regra com Zn positivo elevado (Ar >> Ac) prediz a classe alvo com grande confiança; > Regra com Zn negativo elevado (Ar << Ac) prediz a ausência da classe alvo com grande confiança;

48 48 PNrule Escoragem Z-number mínimo : Estabelecimento do Z-number mínimo, MinZ, para considerar a influência de Nj sobre Pi. Considerando um MinZ= 3.0 e o calculado Zn=11.85 determina-se que a regra N1 influi significativamente sobre P1; portanto, para a Matriz de Escore, [P1,N1] é considerada a precisão de N1 para predição da classe alvo. Escore = VP/VP+FP = 2/2+5= 28.6% ESN0N1N2~N P0 P P2

49 49 PNrule Escoragem Matriz de escore: > Registra a probabilidade de um determinado caso pertencer a classe alvo se esse estiver afeto a regras Pi e Nj ? ESN0N1N2~N P P P

50 50 PNrule Tornando sensível a Custo Matriz de custo: > Dada uma matriz de custo de erros de classificação: K[classeEfetiva,classePrevista]=custo de predizer uma classeEfetiva s como classePrevista t; > Tendo a matriz de escore como matriz de probabilidade (???); > Dado um registro x, a atribuição de uma classePrevista t será dado pelo menor custo global da fórmula: SOMATÓRIO em toda classeEfetiva s {Prob[classeEfetiva de x ser s] * K[classeEfetiva s, classePrevista ser t]}

51 51 PNrule Comparando algoritmos > Participação no concurso KDDCUP99; > Problema do KDDCUP99 : base de intrusão de redes com 5 milhões de registros distribuídos em 5 classes e uma matriz de custo para erros de classificação; > cada registro, 34 atributos contínuos e 7 discretos, representa uma intrusão ou uma conexão normal;

52 52 PNrule Comparando algoritmos > Distribuição das classes : normal19,9% Dos – Denial-of-service79,3% Probe – Surveillance0.84% R2l – Remote-to-local0.023% (1126) U2r – User-to-root0.001% (52)

53 53 PNrule Comparando algoritmos

54 54 Referências > Ramesh Agarwal, Mahesh V. Joshi and Vipin Kumar.Predictiong Rare Classes: Comparing Two-Phase Rule Induction to Cost-Sensitive Boosting; > Ramesh Agarwal and Mahesh V. Joshi. PNrule: A New Framework for Learning Classifier Models in Data Mining (A Case-Study in Network Intrusion Detection); > Mahesh Vijaykumar Joshi's Research Work

55 55 Perguntas

56 Predicting Rare Classes: Comparing Two-Phase Rule Induction to Cost-Sensitive Boosting Carlos Bol Nelson Alberti da Rosa Obrigado !


Carregar ppt "Predicting Rare Classes: Comparing Two-Phase Rule Induction to Cost-Sensitive Boosting Mahesh V. Joshi Ramesh C. Agarwal Vipin Kumar Apresentação Carlos."

Apresentações semelhantes


Anúncios Google