Subgroup Mining 1 Subgroup Discovery driven by a Property of Interest Paulo J Azevedo INESC-Tec, HASLab Departamento de Informática
Subgroup Mining Objectivo: Detecção de subpopulações em que os valores de uma propriedade em estudo se desviem do expectável i.e. desvio em relação a uma população referência, por exemplo a população geral em estudo. Representação deste fenómeno usando padrões específicos: tipicamente regras. Exemplos: Sex=female Wage: mean=$7.9 (overall mean=$9.02) non-smoker & wine-drinker life-expectancy=85 (overall mean=80) Subgroup Mining 2
Pattern Mining Procurar padrões (relações entre os elementos atómicos que constituem os dados) interessantes/surpreendentes. Padrões estrutura nos dados. Tipicamente representem associação/co- ocorrência/correlação/etc entre elementos atómicos dos dados. Métodos de extracção por força bruta. –Exemplo: Motifs em dados de sequências de DNA – fragmentos de DNA fortemente conservados (alta incidência) ao longo de diferentes genes. Vários tipos de padrões: –Termos frequentes (regras de associação), –Sequências e Motifs –Grafos –Séries Temporais –etc. Subgroup Mining 3
4 Regras de Associação Problema típico: ,1881,199, , ,199,177,100 ….. … ,1881,199,8 O marketing da cadeia de Hipermercados pretende fazer um estudo de comportamento de compras. Tem acesso aos dados representativos dos “cestos de compras” (basket data) Número da transacção item 901 & 199 1881 (s=0.3,conf=0.9) Medidas de interesse: incidência (suporte) Previsibilidade (confiança) Subgroup Mining
5 Medidas de Interesse Tipicamente recorre-se a uma medida de incidência para definir quais as associações relevantes. A mais popular é o suporte (contagem) dos itemsets i.e. associações As regras são qualificadas por uma medida de interesse (previsibilidade, solidez ou força da regra). Normalmente é usada a confiança (probabilidade condicional) = s(AC)/s(A) Assim, a regra de associação: Deve ser lida como: a compra conjunta dos produtos 901, 199 e 1881 ocorre em 30% das transacções. Por outro lado, verifica-se que 90% das transacções que contêm 901 e 199 também contêm o produto Outra leitura: 90% da sub-população definida pelos produtos 901 e 199 consomem O utilizador fornece valores limites para a pesquisa: suporte e confiança mínimos. 901 & 199 1881 (s=0.3,conf=0.9) Relevante para esta palestra pois vamos falar de detecção de subgrupos Subgroup Mining
6 ACBD ADACABBCBD ABCD ABDACDABC CD Seta indica inclusão matemática Itemset Item BCD Podemos ver o problema pela perspectiva do espaço de pesquisa (de termos frequentes) a explorar
Algoritmos 7 Extracção de termos frequentes (itemsets) i.e. associações (alta complexidade computacional) Geração de regras (baixa complexidade) Selecção de regras “interessantes” Primeiro problema exaustivamente estudado pela comunidade com centenas de contribuições. Algoritmo seminal: Apriori [Agrawal&Srikant94]. Faz uso da propriedade de anti-monotonia do suporte: Se X ⊆ Y então s(X) ≥ s(Y) Subgroup Mining
A CBD ADACAB BCBD ABCD ABDACDABC CD Infrequente BCD Aplicação da Propriedade Anti-monótona Subgroup Mining 8
Cálculo de termos frequentes Estratégias bottom-up: Apriori-like –Vários passagens pela base de dados –Geração de “candidatos” Estratégias depth-first –Uso de representações verticais dos dados e.g. listas de ocorrências, bitmaps, diff-sets, etc. –Melhores oportunidades de pruning –Adequada para obter algoritmos “rule-based” 9 Subgroup Mining
Graph Mining Extracção de fragmentos (subgrafos) significativos (frequentes) de uma base de dados de grafos. Possíveis aplicação na web e em redes sociais em geral. Enumeras aplicações em dados biológicos. Exemplo de Unfolding: Subgroup Mining 10
Graph Mining Exemplo de identificação de um subgrafo que persiste ao longo do processo descrito anteriormente Subgroup Mining 11
Séries Temporais Time Series(TS): um formato de dados comum em diversos domínios (biologia, física, mercado de títulos, network monitoring,…), Colecção de observações feitas sequencialmente ao longo do tempo. Tipicamente os dados representam uma propriedade numérica. Tópico em grande expansão (e.g. indexing, clustering, classification, …) Mining previously unknown patterns; – Episodes : subsequences that repeat in an unique and longer sequence; – Motifs : subsequences that repeat in several related sequences; Subgroup Mining 12
Motifs & Episodes Motifs Episodes Subgroup Mining 13
Expectations… Can be deceived!!!!!!!! Subgroup Mining 14
Factores de Interesse Número de regras derivadas é facilmente insustentável (explosão combinatória)! e.g. dados de retalho –3182 produtos (items) – número de regras possíveis! –#regras com –Alta probabilidade de improvável co- ocorrência real i.e serem falsas descobertas ! 15 Subgroup Mining
Falsas Descobertas Queremos identificar associações que ocorrem nos fenómenos que dão origem aos dados em estudo. O intensivo processo de procura associado à derivação de regras de associação resulta num alto risco de falsas descobertas: –i.e. associações que aparentam existir na amostra em estudo mas que não ocorrem no fenómeno que lhe dá origem. 16 Subgroup Mining
Exemplos Suporte (frequência) dos items de uma regra pode ser prevista assumindo a independência de um subconjunto deles: homem & miopia & óculos cancro_próstata (homem & cancro_próstata ) versus (miopia & óculos) Regras redundantes: (items no antecedente explicam outros items) Ex: grávida retenção_de_liquidos e grávida & mulher retenção_de_liquidos Descartar regra redundante x y se: Ǝ z ∈ x : s(x y) = s(x - z y) Regras não Produtivas: homem & psa_alta & diabetes cancro_próstata conf=0.84 homem & psa_alta cancro_próstata conf= Subgroup Mining
Regras Significantes Medir a significância do ganho preditivo da especialização. [Webb2007] Regra ant cnq conf = v 1 é significante se todos os valores (v 1 – v i ) são estatisticamente significativos. 18 Subgroup Mining
Regras Significantes Aplicar teste de hipótese durante o processo de pesquisa para determinar significância e.g. teste exacto de Fisher. Com um p-value exacto podemos controlar o problema das múltiplas hipóteses (inflação do erro tipo I): –Para um valor crítico α e n regras a derivar, a probabilidade de obter uma falsa descoberta é 1 – (1 – α) n –Necessidade de ajustar o valor crítico (α) Com este tipo de filtros controlamos o sobre- ajustamento (overfitting) do modelo. Regras mais específicas tem de produzir uma mais valia. 19 Subgroup Mining
Framework Derivação de subgrupos usando um algoritmo de extracção de regras de associação. Algoritmo rule-based. Detecção de desvios (interesse) à custa de testes de significância estatística. Controle de especialização (overfitting) usando o mesmo tipo de teste estatístico. Vários tipos de regras dependendo da aplicação específica. Subgroup Mining 20
Detecção de Subgrupos Derivar regras para identificar subpopulações interessantes que ocorrem nos dados em estudo caracteristicas_descritores_do_subgrupo poi Propriedade de interesse (poi) pode ser um atributo categórico ou numérico, uma expressão de restrição ou até um contraste. Várias estatísticas associadas às regras 21 Subgroup Mining
Propriedades de interesse Numéricas Quantitative Association Rules [Aumann&Lindell2003] e.g: fumador=n & consumo_vinho=s espera_vida=85 (overall=80) Sex=female Wage: mean=$7.9 (overall = $9.02) Interessa da regra determinado por teste comparativo entre média da poi do subgrupo e a médio do seu complemento. Impact Rules [Webb2001] –Interesse determinado pelo impacto da regra –Impact(Regra) = [avg(Regra) – avg(po_geral)] x sup(ant(Regra)) 22 Subgroup Mining
Regras de Distribuição [Jorge&Azevedo2007] O consequente é uma distribuição, Possibilita a análise de distribuições segundo parâmetros tipo Skewness (grau de assimetria) e Kurtosis (grau de afunilamento) Uso do teste Kolmogorov-Smirnov, para avaliar se regra é interessante. Noção de interesse: Regra é interessante se o p-value do ks-test(apriori,rules-dist) < α Especialização das subpopulações também controlado por um teste de KS (KS-improvement). Várias aplicações 23 Distribuição do subgrupo da regra Distribuição geral da população Subgroup Mining
24 Case Study Descripitive data mining –dataset: Determinants of Wages from the 1985 Current Population Survey in the United States, a.k.a. Wages –property of interest: WAGE Rule discovery –min-sup=0.1, KS-int=0.95 –numerical attributes in the antecedent were pre-discretized –compact internal representation of rules –rules can be output as text or graphically Subgroup Mining
25 Uso de Regras de Distribuição antecedente –Indivíduos com 13 a 15 de formação escolar –Não são do sul dos EUA consequente –wage (rendimento/h): distribuição é melhor que população geral mas continua concentrada nos mesmo intervalo. Subgroup Mining
26 Uso de Regras de Distribuição antecedente –Refinamento do anterior –Raça é caucasiana consequente –Melhoria da distribuição em relação à regra anterior. – regra passa o teste de KS-improvement em relação à anterior. –Rendimentos continuam concentrados no mesmo intervalo. Subgroup Mining
27 Uso de Regras de Distribuição antecedente –jovens consequente –Baixo rendimento, muito concentrado. –Sugere algumas modas secundárias. Subgroup Mining
Max Leverage Rules [Jorge&Azevedo2011] Regras do tipo: ant A I, onde I é o intervalo que define o máximo valor de leverage (add value) de A para o antecedente ant, onde A é a nossa poi. Regras derivadas da regra de distribuição correspondente. Intervalos que maximizam leverage /(added value) são obtidos do teste KS. AV(A C) = conf(A C) – sup(C). 28 Subgroup Mining
Max Leverage Rules Exemplo (Cov=0.226 Lev=0.148 AV=0.653 Conf=0.922) HP=(132.5-inf) & Ncy=(5.5-inf) & Year=(-inf-79.5] MPG < 18 A regra declara que carros com potência (HP) acima de 132.5, mais de 5 cilindros (Ncy) e ano de construção (Year) antes de 1980 tendem a ter um desempenho (MPG) inferior a 18 quando comparados com um carro genérico (população total). Um carro genérico tem muito menor probabilidade de ter tão mau desempenho. Na verdade, a probabilidade de um carro genérico ter tão baixo desempenho é 65,3% (Added Value) abaixo da probabilidade do carro descrito pela regra. 29 Subgroup Mining
Regras de Contrastes Rules for Contrast Sets [Azevedo2010] Descrever a diferença entre grupos de contraste. Um conjunto de contraste é uma conjunção de características que descreve uma subpopulação que ocorre com diferentes proporções ao longo dos diferentes grupos. Exemplo de contraste de indivíduos entre grupos: –a diferentes instâncias temporais (total de vendas em 1998 versus 1999), –diferentes localizações (encontrar características distintas da localização do gene x no DNA humano em relação ao DNA dos ratos), –ao longo de diferentes classes (diferenças entre loiras e morenas). 30 Subgroup Mining
Regras de Contraste As características da subpopulação a encontrar (contrast sets) são interessantes (significativas) se as proporções da ocorrência desses indivíduos ao longo dos diferentes grupos for significativamente distinta. i.e. subpopulação não independente de pertença ao grupo. Significância obtida por um teste de Fisher. Gsup = | p = E-017 education=Doctorate >> education=Masters Gsup = | p = E-040 education=Doctorate >> education=Bachelors Sup(CS) = workclass=State-gov & class > 50K. Controle de especialização do contrast set implementada usando o mesmo teste de Fisher. 31 Subgroup Mining
Sumário Subgroup Mining para a detecção de desvios em subpopulações. Várias aplicações e.g. census, bioinformática, etc Processo de Pattern mining controlado pela propriedade de interesse em estudo. Exemplo com regras de associação como motor gerador de subgrupos interessantes em relação a uma poi. Subgroup Mining 32