Clusterização de dados

Informações do conceito

Comando CLUSTER

A clusterização agrupa os registros de uma tabela de acordo com valores similares em um ou mais campos-chave numéricos. Valores similares são valores próximos ou semelhantes entre si no contexto de todo o conjunto de dados. Esses valores similares representam clusters que, uma vez identificados, revelam padrões nos dados.

Nota

Se quiser usar regularmente a clusterização no seu programa de análises, recomendamos que você faça o curso da Academia da Diligent Encontrando grupos de dados usando o comando CLUSTER no Analytics (ACL 361) (exige login do cliente).

A diferença entre a clusterização e outros comandos de agrupamento do Analytics

A clusterização é diferente dos outros comandos de agrupamento do Analytics:

  • A clusterização não exige agrupamento por valores exatos ou categorias de dados já existentes como tipo de transação ou código de categoria de comerciante, ou por estratos predefinidos com limites numéricos fixos. Em vez disso, a clusterização agrupa os dados de acordo com valores numérico similares dentro dos próprios dados, ou seja, valores próximos ou semelhantes entre si.
  • A clusterização baseada em mais de um campo gera resultados que não são aninhados (não hierárquicos).

Escolha dos campos usados para a clusterização

A clusterização de dados permite descobrir agrupamentos orgânicos nos dados que de outra forma você desconhecia. Mais especificamente, os clusters baseados em vários campos numéricos (clusters multidimensionais) seriam de difícil identificação sem o auxílio do aprendizado de máquina. Nesse sentido, a clusterização é exploratória e um exemplo de aprendizado de máquina não supervisionado.

No entanto, para que os clusters gerados sejam significativos, deve existir uma relação significativa entre os campos escolhidos para a clusterização.

Clusterizar com base em um único campo

A clusterização com base em um único campo numérico é relativamente simples. Você se concentra em um único conjunto de valores e a clusterização agrupa os valores de acordo com a proximidade ou semelhança dos valores. Por exemplo, você pode clusterizar um campo de quantidade para descobrir onde as quantidades estão concentradas no intervalo de valores.

A vantagem da clusterização sobre uma abordagem tradicional, como estratificação, é que você não precisa supor previamente onde as concentrações podem existir, nem criar limites numéricos arbitrários. A clusterização descobre onde estão os limites de qualquer número de clusters específico.

Clusterizar com base em vários campos

Quando você clusteriza com base em dois ou mais campos, precisa se perguntar como os campos podem estar relacionados. Você pode usar a clusterização para testar uma hipótese. Por exemplo, uma empresa pode estar preocupada com a taxa de rotatividade dos funcionários que, segundo a gerência, está concentrada em funcionários jovens com menor salário.

Você pode usar a clusterização para descobrir se há uma relação forte entre:

  • duração da retenção de funcionários e idade dos funcionários (clusterização bidimensional)
  • duração da retenção de funcionários, idade dos funcionários e salário (clusterização tridimensional)

Nota

Para essa análise, você precisa evitar a inclusão de qualquer campo que não esteja claramente relacionado à hipótese, como o número de dias em licença médica.

Avaliação de clusters de saída

O algoritmo de clusterização geral sempre uma tabela com o número especificado de clusters. Cada registro na tabela de saída estará em um cluster.

Nesse ponto, você precisa avaliar se os clusters têm significado analítico. O agrupamento de registros em um cluster pelo algoritmo não significa necessariamente que o agrupamento tem significado. Você precisa se perguntar se os clusters formam um padrão significativo. Eles têm uma história para contar?

Dica

O uso de uma ferramenta de relatórios para gerar um gráfico de dispersão com base na tabela de saída de clusters, com cada cluster representado com uma cor diferente, é a forma mais fácil de avaliar rapidamente a natureza geral dos clusters de saída.

As seguintes características podem ajudar a avaliar o significado dos clusters de saída:

  • Coerência do cluster Os valores individuais em um cluster estão todos relativamente próximos ao centroide ou o cluster é algo difuso? Quanto mais coerente for um cluster, mais forte será a relação entre os valores que compõem o cluster.
  • Tamanho do cluster A maioria dos valores está contida em um ou dois clusters grandes? Se isso for verdade, o conjunto de dados está consideravelmente distorcido em comparação a um conjunto de dados em que os valores estão distribuídos de forma razoavelmente uniforme entre os clusters.
  • Valores discrepantes Considere os valores que resistem à inclusão em qualquer um dos clusters significativos. Esses valores discrepantes podem representar itens que merecem uma investigação adicional. Considere também os "valores discrepantes internos", ou seja, os valores incluídos em um cluster significativo, mas em sua extremidade externa.

Nota

Todas as características acima são métodos humanos ou subjetivos de avaliação de clusters. Existem vários métodos matemáticos de avaliação de clusters, mas eles estão além do escopo da ajuda do Analytics.

Como funciona o algoritmo de clusterização

A clusterização no Analytics usa o algoritmo de clusterização K-means, que é um algoritmo popular de aprendizado de máquina. Você pode encontrar descrições detalhadas de clusterização K-means na Internet.

Veja a seguir um resumo do algoritmo.

Escolha do número de clusters (valor de K)

A determinação do número ideal de clusters para a clusterização de dados pode exigir alguns testes e experimentos. Não existe uma resposta exata para qualquer conjunto de dados específico.

Posso clusterizar com base em campos de caracteres ou datahora?

De forma geral, não é possível clusterizar por campos de caracteres ou datahora. O algoritmo de clusterização aceita apenas números e executa os cálculos com os números (distância euclidiana, média).

Etapas

Nota

Se as opções do menu de aprendizado de máquina estiverem desativadas, é provável que o mecanismo do Python não esteja instalado. Para obter mais informações, consulte Instalar o ACL para Windows.

Especificar configurações para o algoritmo de clusterização

  1. Abra a tabela com a dados que deseja clusterizar.

  2. No menu principal do Analytics, selecione Aprendizado de máquina > Cluster.

  3. Em Número de clusters (valor de K), especifique o número de clusters a usar para agrupar os dados.

  4. Em Número máximo de iterações, especifique um limite superior para o número de iterações executadas pelo algoritmo de clusterização.

  5. Em Número de inicializações, especifique quantas vezes um conjunto inicial de centróides aleatórios será gerado.

  6. Opcional. Selecione Origem e insira um número.

Especificar um método de pré-processamento de dados

Se você clusterizar por mais de um campo-chave, deverá usar o recurso Pré-processamento para padronizar a escala dos campos antes de usá-los para clusterização.

A escala e as unidades dos diversos campos numéricos podem variar. Por exemplo, um campo de salário que contém dólares por ano pode variar entre 20.000 e 100.000 e um campo de idade em anos pode variar entre 18 e 70. Se você clusterizar usando os campos salário e idade, sem considerar a escala, os clusters de saída serão essencialmente clusters de salários, distorcidos pelo tamanho dos números de salário em comparação aos números de idade, em vez de clusters salário/idade.

O pré-processamento oferece os métodos explicados abaixo para considerar a escala de todos os valores em todos os campos-chave do cluster para que sejam ponderados igualmente durante o processo de clusterização.

Opção de pré-processamento Descrição
Padronizar

Os valores de campos-chave são centrados na média de 0 (zero) e sua escala é ajustada, um processo que converte os valores para seu equivalente em pontuação z (pontuação padrão).

A pontuação z é uma medida do número de desvios padrão que separam um valor bruto da média bruta de cada campo. No campo com escala ajustada, a média é representada por 0 (zero), e as pontuações z são positivas ou negativas, dependendo de os valores brutos que representam serem maiores ou menores que a média bruta do campo.

Nota

Use esta opção se os campos-chave tiverem principalmente valores diferentes de zero ("matrizes densas").

Variação da escala para a unidade

A escala dos valores do campo-chave é ajustada dividindo-os pelo seu desvio padrão, mas eles não estão centrados na média de 0 (zero).

Nota

Use esta opção se um ou mais campos-chave contêm um grande número de valores 0 (zero) ("matrizes esparsas").

Nenhum Os valores dos campos-chave não são centrados e sua escala não é ajustada. A clusterização usa os valores brutos, sem centralização e ajuste de escala, para calcular os clusters.

Selecionar campos

  1. Na lista Clusterizar por, selecione um ou mais campos-chave para usar na clusterização dos registros na tabela.

    Os campos-chave devem ser numéricos.

  2. Opcional. Na lista Outros campos, selecione um ou mais campos adicionais a incluir na tabela de saída.

Dica

Você pode usar Shift+clique para selecionar vários cabeçalhos de colunas adjacentes e Ctrl+clique para selecionar vários cabeçalhos de colunas adjacentes.

Finalizar entradas de comando

  1. Se existirem registros na exibição atual que você desejar excluir do processamento, insira uma condição na caixa de texto Se ou clique em Se para criar uma instrução IF usando o Construtor de expressões.

    Nota

    A condição Se é avaliada apenas em relação aos registros restantes em uma tabela depois da aplicação das opções de escopo (Primeiros, Próximos, Enquanto).

    A instrução IF considera todos os registros na exibição e filtra aqueles que não atendem à condição especificada.

  2. Na caixa de texto Para, especifique o nome da tabela de saída.

    Nota

    Os nomes de tabela do Analytics são limitados a 64 caracteres alfanuméricos, sem contar a extensão .FIL. O nome pode incluir o caractere de sublinhado ( _ ) mas nenhum outro caractere especial e nenhum espaço. O nome não pode começar com um número.

  3. Opcional. Na guia Mais:
    1. Para especificar o processamento de apenas um subconjunto de registros, selecione uma das opções no painel Escopo.
    2. Selecione Usar tabela de saída se você quiser que a tabela de saída seja aberta automaticamente.
  4. Clique em OK.