Partilhar via


Seleção de recursos em mineração de dados

A seleção de recursos é um imperativo para qualquer produto de mineração de dados. Isso ocorre porque, quando você cria um modelo de mineração de dados, frequentemente, o conjunto de dados contém mais informações que o necessário para criar o modelo. Por exemplo, um conjunto de dados pode ter 500 colunas que descrevem as características dos clientes mas, talvez, apenas 50 dessas colunas serão usadas para criar um modelo específico. Se você mantiver colunas desnecessárias quando criar o modelo, precisará de mais CPU e memória durante o processo de treinamento e de mais espaço de armazenamento para o modelo completo.

Ainda que recursos não sejam um problema, normalmente você remove colunas desnecessárias porque elas podem diminuir a qualidade dos padrões descobertos, pelos seguintes motivos:

  • Algumas colunas são ruidosas ou redundantes. Esse ruído dificulta a descoberta de padrões significantes a partir dos dados;

  • Para descobrir padrões de qualidade, a maioria que algoritmos de mineração de dados requer um conjunto de dados de treinamento muito maior no conjunto de dados de grande dimensão. Mas os dados de treinamento são muito pequenos em alguns aplicativos de mineração de dados.

A seleção de recursos ajuda a resolver esse problema, de ter dados demais de pouco valor, ou de ter pouquíssimos dados de alto valor.

Seleção de recursos na mineração de dados do Analysis Services

Em geral, ela funciona calculando uma pontuação para cada atributo e, em seguida, selecionando apenas os atributos com a pontuação mais alta. É possível ajustar o limiar para os pontos mais altos. A seleção de recursos sempre é feita antes do treinamento do modelo, para que os atributos de um conjunto de dados com maior probabilidade de uso no modelo sejam escolhidos de forma automática.

O Analysis Servicesoferece vários métodos para a seleção de recursos. O método exato para selecionar os atributos com o valor mais alto depende do algoritmo usado em seu modelo e qualquer parâmetro que você tenha definido nele. A seleção de recursos é aplicada a entradas, atributos previsíveis ou estados em uma coluna. Somente os atributos e os estados que o algoritmo selecionar serão incluídos no processo de criação de modelo e poderão ser usados para previsão. As colunas previsíveis ignoradas pela seleção de recurso são usada para previsão, mas as previsões têm base apenas nas estatísticas globais que existem no modelo.

ObservaçãoObservação

A seleção de recursos afeta apenas as colunas usadas no modelo e não o armazenamento da estrutura de mineração. As colunas que ficarem fora do modelo de mineração continuarão disponíveis na estrutura, e os dados das colunas da estrutura de mineração serão armazenados em cache.

Definição de métodos de seleção de recursos

Há várias formas de implementar a seleção de recursos, dependendo do tipo de dados com que você está trabalhando e do algoritmo escolhido para a análise. O SQL Server Analysis Services fornece vários métodos populares e bem-estabelecidos para pontuar atributos. O método aplicado em qualquer algoritmo ou conjunto de dados depende dos tipos de dados e do uso de coluna.

A pontuação de interesse é usada para classificar e ordenar atributos em colunas que contêm dados numéricos contínuos não binários.

Para colunas que contêm dados discretos e diferenciados, você pode escolher entre a entropia de Shannon e duas pontuações Bayesianas. No entanto, se o modelo contiver colunas contínuas, a pontuação de interesse será usada para avaliar todas as colunas de entrada a fim de garantir a consistência.

Esta seção descreve cada método de seleção de recursos.

Pontuação de interesse

Um recurso será interessante se ele transmitir alguma informação útil. Como a definição do que é útil varia de acordo com a situação, a indústria de mineração de dados desenvolveu várias formas de medir o interesse. Por exemplo, novidade seria interessante para detectar um valor discrepante, mas a capacidade de diferenciar itens intimamente relacionados, ou peso discriminatório, seria mais interessante para a classificação.

A medida de interesse usada no SQL Server Analysis Services baseia-se em entropia, ou seja, os atributos com distribuições aleatórias têm maior entropia e menor ganho de informações; sendo assim, esses atributos são menos interessantes. A entropia de qualquer atributo em particular é comparada à entropia de todos os outros atributos, como segue:

Interestingness(Attribute) = - (m - Entropy(Attribute)) * (m - Entropy(Attribute))

Entropia central ou m, significa a entropia de todo o conjunto de recursos. Ao subtrair a entropia do atributo de destino da entropia central, é possível avaliar a quantidade de informações fornecida pelo atributo.

Por padrão, essa pontuação será usada sempre que a coluna contiver dados numéricos contínuos não binários.

Entropia de Shannon

A entropia de Shannon mede a incerteza de uma variável aleatória para um resultado em particular. Por exemplo, a entropia do lançamento de uma moeda pode ser representada como uma função da probabilidade de o resultado ser cara.

O Analysis Services usa a seguinte fórmula para calcular a entropia de Shannon:

H(X) = -∑ P(xi) log(P(xi))

Esse método de pontuação está disponível para atributos discretos e diferenciados.

Bayesiano com K2 a priori

O Analysis Services fornece duas pontuações para seleção de recursos que se baseiam em redes Bayesianas. Uma rede Bayesiana é um gráfico direcionado ou acíclico de estados e transições entre estados, ou seja, alguns estados vêm sempre antes do estado atual, alguns ocorrem depois, e o gráfico não se repete nem gera um loop. Por definição, as redes Bayesianas permitem o uso do conhecimento prévio. No entanto, a questão de qual estado anterior usar no cálculo de probabilidades de estados posteriores é importante para o design, o desempenho e a precisão do algoritmo.

O algoritmo K2 para aprender com a rede Bayesiana foi desenvolvido por Cooper e Herskovits e é usado com frequência na mineração de dados. Ele é escalável e analisa diversas variáveis, mas requer ordenação das variáveis usadas como entrada. Para obter mais informações, consulte Learning Bayesian Networks (em inglês) de Chickering, Geiger e Heckerman.

Esse método de pontuação está disponível para atributos discretos e diferenciados.

Bayesiano Dirichlet Equivalente com Uniforme a priori

A pontuação BDE (Bayesiano Dirichlet Equivalente) também usa análise Bayesiana para avaliar uma rede dado um conjunto de dados. O método de pontuação do BDE foi desenvolvido por Heckerman e se baseia na métrica de BD desenvolvida por Cooper e Herskovits. A distribuição Dirichlet é uma distribuição multinomial que descreve a probabilidade condicional de cada variável da rede e possui muitas propriedades que devemos conhecer.

O método BDEU (Bayesiano Dirichlet Equivalente com Uniforme a priori) assume um caso especial da distribuição Dirichlet, na qual uma constante matemática é usada para criar uma distribuição fixa ou uniforme de estados anteriores. A pontuação do BDE também assume equivalência de probabilidade, o que significa que não se pode esperar que os dados separem estruturas equivalentes. Em outras palavras, se a pontuação de If A Then B for igual à pontuação de If B Then A, não será possível distinguir as estruturas com base nos dados nem deduzir a causa.

Para obter mais informações sobre redes Bayesianas e a implementação desses métodos de pontuação, consulte Learning Bayesian Networks (em inglês).

Métodos de seleção de recursos usados pelos algoritmos do Analysis Services

A tabela a seguir lista os algoritmos que suportam a seleção de recursos, os métodos de seleção de recursos usados por eles e os parâmetros que você define para controlar o comportamento da seleção de recursos:

Algoritmo

Método de análise

Comentários

Naive Bayes

Entropia de Shannon

Bayesiano com K2 a priori

Bayesiano Dirichlet com precedência uniforme (padrão)

O algoritmo Microsoft Naïve Bayes aceita somente atributos discretos ou diferenciados; portanto, não pode usar a pontuação de interesse.

Para obter mais informações sobre esse algoritmo, consulte Referência técnica do algoritmo Microsoft Naive Bayes.

Árvores de decisão

Pontuação de interesse

Entropia de Shannon

Bayesiano com K2 a priori

Bayesiano Dirichlet com precedência uniforme (padrão)

Se alguma coluna contiver valores contínuos não binários, a pontuação de interesse será usada em todas as colunas para garantir a consistência. Caso contrário, será usado o método de seleção de recursos padrão ou o método que você especificou quando criou o modelo.

Para obter mais informações sobre esse algoritmo, consulte Referência técnica do algoritmo Árvores de Decisão da Microsoft.

Redes neurais

Pontuação de interesse

Entropia de Shannon

Bayesiano com K2 a priori

Bayesiano Dirichlet com precedência uniforme (padrão)

O algoritmo Redes Neurais da Microsoft pode usar ambos os métodos, desde que os dados contenham colunas contínuas.

Para obter mais informações sobre esse algoritmo, consulte Referência técnica do algoritmo Rede Neural da Microsoft.

Regressão logística

Pontuação de interesse

Entropia de Shannon

Bayesiano com K2 a priori

Bayesiano Dirichlet com precedência uniforme (padrão)

Embora o algoritmo de Regressão Logística da Microsoft se baseie no algoritmo Rede Neural da Microsoft, você não pode personalizar modelos de regressão logística para controlar o comportamento de seleção de recursos; portanto, a seleção de recursos sempre usa o método mais apropriado para o atributo por padrão.

Se todos os atributos forem discretos ou diferenciados, o padrão será BDEU.

Para obter mais informações sobre esse algoritmo, consulte Referência técnica do algoritmo Regressão Logística da Microsoft.

Clustering

Pontuação de interesse

O algoritmo Microsoft Clustering pode usar dados discretos ou diferenciados. No entanto, como a pontuação de cada atributo é calculada como uma distância e representada como um número contínuo, a pontuação de interesse deve ser usada.

Para obter mais informações sobre esse algoritmo, consulte Referência técnica do algoritmo Microsoft Clustering.

Regressão linear

Pontuação de interesse

O algoritmo de Regressão Linear da Microsoft pode usar somente a pontuação de interesse, pois suporta apenas colunas contínuas.

Para obter mais informações sobre esse algoritmo, consulte Referência Técnica do Algoritmo de Regressão Linear da Microsoft.

Regras de associação

Clustering de sequências

Não usado

A seleção de recursos não é invocada com esses algoritmos.

No entanto, você poderá controlar o comportamento do algoritmo e reduzir o tamanho dos dados de entrada se necessário, configurando o valor dos parâmetros MINIMUM_SUPPORT e MINIMUM_PROBABILIITY.

Para obter mais informações, consulte Referência técnica do algoritmo de associação da Microsoft e Referência técnica do algoritmo MSC (Analysis Services - Mineração de Dados).

Série temporal

Não usado

A seleção de recursos não se aplica a modelos de série temporal.

Para obter mais informações sobre esse algoritmo, consulte Referência técnica do algoritmo MTS.

Controlando o comportamento da seleção de recursos

Nos algoritmos que suportam a seleção de recursos, é possível controlar quando a seleção de recursos é ativada usando os parâmetros a seguir. Cada algoritmo tem um valor padrão para o número de entradas permitidas, e você pode substituir esse padrão e especificar o número de atributos.

MAXIMUM_INPUT_ATTRIBUTES

Se o modelo tiver mais colunas do que o número especificado no parâmetro MAXIMUM_INPUT_ATTRIBUTES, o algoritmo ignora as colunas calculadas como não interessantes.

MAXIMUM_OUTPUT_ATTRIBUTES

Do mesmo modo, se o modelo tiver mais colunas previsíveis do que o número especificado no parâmetro MAXIMUM_OUTPUT_ATTRIBUTES, o algoritmo ignora as colunas calculadas como não interessantes.

MAXIMUM_STATES

Se um modelo tiver mais casos que os especificado no MAXIMUM_STATES parâmetro, dos estados menos populares serão agrupados para tratados como ausentes. Se qualquer um desses parâmetros for definido como 0, a seleção de recursos será desativada, o que afeta o tempo de processamento e o desempenho.