Unsupervised Machine Learning Análise de Correspondência Simples e Múltipla

A ANACOR (Análise de Correspondência).

  • Variáveis Qualitativas.
  • Simples 2 variáveis categóricas.
  • Múltipla > que 2 variáveis categóricas.

OBS: um ponto interessante é que com a Anacor e suas coordenadas, podemos transformar variáveis categóricas em métricas.

Associações estátisticamente significantes, verifica as categorias das associações, análise dessas categorias.

Podemos transformar uma variável métrica em categórica. Exemplo faixas de idade.

Objetivo é analisar pela proximidade a associação entre as variáveis.

Fonte: https://rpubs.com/rcleoni/265601, acesso 11 maio de 2026.

  1. Verificar se existe associação e estatisticamente significantes: teste Qui-Quadrado.

Criando a tabela contingência, para verificar a contagem por variável.

Abaixo será explicado detalhadamente cada item:

Função de cada etapa da ANACOR

EtapaFunção na análise
1. Tabela de contingênciaÉ o ponto de partida. Mostra as frequências observadas entre duas variáveis categóricas, por exemplo, Perfil do Cliente × Canal de Atendimento.
2. Frequências esperadasMostram quais valores seriam esperados se as duas variáveis fossem independentes, ou seja, se não houvesse associação entre elas.
3. Resíduos padronizadosMedem a diferença entre o observado e o esperado em cada célula. Indicam quais combinações ocorreram mais ou menos do que o esperado.
4. Matriz AÉ construída a partir dos resíduos padronizados divididos por n\sqrt{n}n​. Ela organiza os desvios padronizados em uma matriz preparada para a decomposição matemática.
5. Matriz /W=ATAResume a estrutura de associação das categorias das colunas. É a matriz usada para encontrar os autovalores e autovetores.
6. Autovalores λIndicam quanta informação, ou inércia, cada dimensão explica. Quanto maior o autovalor, mais importante é aquela dimensão.
7. AutovetoresIndicam a direção dos eixos fatoriais. Eles ajudam a determinar como as categorias serão posicionadas no espaço.
8. Coordenadas das categoriasTransformam as categorias em pontos no plano. Cada categoria recebe uma coordenada XX e YY, correspondentes às dimensões 1 e 2.
9. Gráfico perceptualRepresenta visualmente as categorias. Categorias próximas no gráfico tendem a estar mais associadas.

Frequências absolutas observadas

Eij=ni+n+jnE_{ij} = \frac{n_{i+} \cdot n_{+j}}{n}

Onde:

EijE_{ij}

representa a frequência esperada da célula da linha iii e coluna jjj;

ni+n_{i+}

representa o total da linha;

n+jn_{+j}

representa o total da coluna;

nn

representa o total geral da tabela.

Exemplo de Frequências Absolutas:

Perfil do ClienteAppSiteTelefoneLoja FísicaTotal
Jovem352051070
Adulto2530152090
Idoso510253070
Total65604560230

Duas variáveis categóricas:

Perfil do Cliente
Canal de Atendimento

Frequência esperada

Para Jovem × App:

EJovem, App=7065230E_{\text{Jovem, App}} = \frac{70 \cdot 65}{230}
EJovem, App=4550230E_{\text{Jovem, App}} = \frac{4550}{230}
EJovem, App19,78E_{\text{Jovem, App}} \approx 19{,}78

Exemplo de Frequências esperadas

Perfil do ClienteAppSiteTelefoneLoja Física
Jovem19,7818,2613,7018,26
Adulto25,4323,4817,6123,48
Idoso19,7818,2613,7018,26

Tabela de resíduos simples

O resíduo simples é calculado por:

rij=OijEijr_{ij} = O_{ij} – E_{ij}

Onde:

OijO_{ij}

é a frequência observada;

EijE_{ij}

é a frequência esperada.

Exemplo do cálculo do resíduo simples

Para Jovem × App:

rJovem, App=3519,78r_{\text{Jovem, App}} = 35 – 19{,}78
rJovem, App=15,22r_{\text{Jovem, App}} = 15{,}22

Resíduos simples

Perfil do ClienteAppSiteTelefoneLoja Física
Jovem15,221,74-8,70-8,26
Adulto-0,436,52-2,61-3,48
Idoso-14,78-8,2611,3011,74

Resíduos padronizados

O resíduo padronizado é calculado por:

zij=OijEijEijz_{ij} = \frac{O_{ij} – E_{ij}}{\sqrt{E_{ij}}}

Ele é mais útil do que o resíduo simples porque coloca os valores em uma escala comparável.

Exemplo do cálculo do resíduo padronizado

Para Jovem × App:

zJovem, App=3519,7819,78z_{\text{Jovem, App}} = \frac{35 – 19{,}78}{\sqrt{19{,}78}}
zJovem, App=15,224,45z_{\text{Jovem, App}} = \frac{15{,}22}{4{,}45}
zJovem, App3,42z_{\text{Jovem, App}} \approx 3{,}42

Exemplo da Tabela de resíduos padronizados

Perfil do ClienteAppSiteTelefoneLoja Física
Jovem3,420,41-2,35-1,93
Adulto-0,091,35-0,62-0,72
Idoso-3,32-1,933,052,75

Os maiores resíduos positivos indicam as associações mais fortes entre categorias.

Neste exemplo, os principais destaques são:

AssociaçãoResíduo padronizadoInterpretação
Jovem × App3,42Jovens usam App mais do que o esperado
Idoso × Telefone3,05Idosos usam Telefone mais do que o esperado
Idoso × Loja Física2,75Idosos usam Loja Física mais do que o esperado
Jovem × Telefone-2,35Jovens usam Telefone menos do que o esperado
Idoso × App-3,32Idosos usam App menos do que o esperado

Teste Qui-quadrado

Ele verifica se existe associação estatística entre as duas variáveis categóricas:

H0:Perfil do cliente e canal de atendimento são independentesH_0: \text{Perfil do cliente e canal de atendimento são independentes}
H1:Perfil do cliente e canal de atendimento não são independentesH_1: \text{Perfil do cliente e canal de atendimento não são independentes}
χ2=(OijEij)2Eij\chi^2 = \sum \frac{(O_{ij} – E_{ij})^2}{E_{ij}}

Onde:

OijO_{ij}

é a frequência observada.

EijE_{ij}

é a frequência esperada.

Exemplo do cálculo de uma célula

Para Jovem × App:

χJovem, App2=(3519,78)219,78\chi^2_{\text{Jovem, App}} = \frac{(35 – 19{,}78)^2}{19{,}78}
χJovem, App2=(15,22)219,78\chi^2_{\text{Jovem, App}} = \frac{(15{,}22)^2}{19{,}78}
χJovem, App211,71\chi^2_{\text{Jovem, App}} \approx 11{,}71

Esse valor representa a contribuição da célula Jovem × App para o Qui-quadrado total.

Contribuições para o Qui-quadrado

Perfil do ClienteAppSiteTelefoneLoja Física
Jovem11,710,175,523,74
Adulto0,011,810,390,52
Idoso11,053,749,337,55

Somando todas as contribuições:

χ255,51\chi^2 \approx 55{,}51

A fórmula dos graus de liberdade é:

gl=(l1)(c1)gl = (l – 1)(c – 1)

Onde:

l=número de linhasl = \text{número de linhas}
c=número de colunasc = \text{número de colunas}

Neste Exemplo:

gl=(31)(41)gl = (3 – 1)(4 – 1)
gl=2×3=6gl = 2 \times 3 = 6

Resultado do teste

EstatísticaValor
Qui-quadrado calculado55,51
Graus de liberdade6
p-valor0,00000000037
Nível de significância0,05

Como o p-valor é muito menor que 0,05:

p<0,05p < 0{,}05

rejeitamos a hipótese nula de independência.

O resultado indica que existe associação estatisticamente significativa entre perfil do cliente e canal de atendimento.

Na prática, isso significa que a escolha do canal de atendimento não parece ocorrer de forma aleatória em relação ao perfil do cliente.

Os maiores responsáveis pelo valor do Qui-quadrado foram:

AssociaçãoContribuição
Jovem × App11,71
Idoso × App11,05
Idoso × Telefone9,33
Idoso × Loja Física7,55
Jovem × Telefone5,52

Essas células mostram onde estão as maiores diferenças entre o observado e o esperado.

Resíduos padronizados ajustados (utilizar esse)

Após o cálculo dos resíduos padronizados, é possível aprofundar a análise utilizando os resíduos padronizados ajustados. Esses resíduos corrigem o efeito dos totais marginais das linhas e colunas, permitindo uma interpretação mais adequada da associação entre cada par de categorias.

A fórmula do resíduo padronizado ajustado é:

zijajustado=zij(1ni+n)(1n+jn)z_{ij}^{ajustado} = \frac{z_{ij}} {\sqrt{ \left(1 – \frac{n_{i+}}{n}\right) \left(1 – \frac{n_{+j}}{n}\right) }}

Como os resíduos padronizados ajustados se aproximam de uma distribuição normal padrão, podemos interpretar assim:

Valor do resíduo ajustadoInterpretação
Maior que 1,96Associação positiva significativa
Menor que -1,96Associação negativa significativa
Entre -1,96 e 1,96Sem associação estatisticamente forte

Considerando nível de significância de 5%

|zijajustado|>1,96|z_{ij}^{ajustado}| > 1{,}96

indica que aquela célula contribui de forma relevante para a associação entre as variáveis.

No Exemplo:

No exemplo analisado, o perfil Jovem apresentou forte associação positiva com o canal App, enquanto o perfil Idoso apresentou associação positiva com Telefone e Loja Física. Por outro lado, clientes idosos apresentaram associação negativa com o uso de App, indicando que esse canal aparece menos do que seria esperado para esse perfil.

Resíduos padronizados ajustados

Perfil do ClienteAppSiteTelefoneLoja Física
Jovem4,840,59-3,38-2,75
Adulto-0,132,10-0,90-1,11
Idoso-4,70-2,754,393,91

Principais associações do exemplo

AssociaçãoResíduo ajustadoInterpretação
Jovem × App5,12Associação positiva forte
Idoso × Telefone4,32Associação positiva forte
Idoso × Loja Física4,01Associação positiva forte
Idoso × App-4,96Associação negativa forte
Jovem × Telefone-3,32Associação negativa forte
Jovem × Loja Física-2,82Associação negativa
Idoso × Site-2,82Associação negativa
Adulto × Site2,08Associação positiva

Exemplo do cálculo: Jovem × App

Primeiro, usamos o resíduo padronizado da célula:

zJovem, App=3,42z_{\text{Jovem, App}} = 3{,}42

Agora calculamos o ajuste da linha e da coluna.

Total da linha Jovem:

ni+=70n_{i+} = 70

Total da coluna App:

n+j=65n_{+j} = 65

Total geral:

n=230n = 230

Então:

zJovem, Appajustado=3,42(170230)(165230)z_{\text{Jovem, App}}^{ajustado} = \frac{3{,}42} {\sqrt{ \left(1 – \frac{70}{230}\right) \left(1 – \frac{65}{230}\right) }}
zJovem, Appajustado=3,42(10,3043)(10,2826)z_{\text{Jovem, App}}^{ajustado} = \frac{3{,}42} {\sqrt{ (1 – 0{,}3043) (1 – 0{,}2826) }}
zJovem, Appajustado=3,420,6957×0,7174z_{\text{Jovem, App}}^{ajustado} = \frac{3{,}42} {\sqrt{ 0{,}6957 \times 0{,}7174 }}
zJovem, Appajustado=3,420,7064z_{\text{Jovem, App}}^{ajustado} = \frac{3{,}42}{0{,}7064}
zJovem, Appajustado4,84z_{\text{Jovem, App}}^{ajustado} \approx 4{,}84

Conclusões: Células com associação positiva.

As células com resíduo ajustado maior que 1,96 são:

AssociaçãoResíduo ajustadoInterpretação
Jovem × App4,84Jovens tendem a utilizar mais o App
Adulto × Site2,10Adultos tendem a utilizar mais o Site
Idoso × Telefone4,39Idosos tendem a utilizar mais o Telefone
Idoso × Loja Física3,91Idosos tendem a utilizar mais a Loja Física

Elaboração do mapa perceptual

Passo a passo em calculo para chegar nos eixos do mapa perceptual.

Tabela observadaResíduos padronizadosMatriz AMatriz WAutovaloresCoordenadasMapa perceptual\text{Tabela observada} \rightarrow \text{Resíduos padronizados} \rightarrow \text{Matriz A} \rightarrow \text{Matriz W} \rightarrow \text{Autovalores} \rightarrow \text{Coordenadas} \rightarrow \text{Mapa perceptual}

Para a elaboração do mapa perceptual da Análise de Correspondência, inicialmente constrói-se a matriz AAA, formada pelos resíduos padronizados divididos pela raiz quadrada do total geral da tabela. Essa matriz representa os desvios padronizados entre as frequências observadas e esperadas.

Em seguida, calcula-se a matriz WWW, definida por:

W=ATAW = A^T A

A partir dessa matriz, os autovalores são obtidos pela solução da equação característica:

det(WλI)=0\det(W – \lambda I) = 0

As raízes dessa equação correspondem aos autovalores, que indicam a quantidade de inércia (variância) explicada por cada dimensão. No exemplo analisado, a primeira dimensão apresentou autovalor igual a 0,2283, explicando 94,60% da inércia total. A segunda dimensão apresentou autovalor igual a 0,0130, explicando 5,40%.

Como a quantidade máxima de dimensões é dada por m=min(I1,J1)m = \min(I – 1, J – 1)m=min(I−1,J−1), e a tabela possui três categorias nas linhas e quatro categorias nas colunas, tem-se:

m=min(31, 41)=2m = \min(3 – 1,\ 4 – 1) = 2

Assim, o mapa perceptual pode ser representado em duas dimensões, correspondentes aos eixos XX e YY. Cada categoria recebe uma coordenada no plano, permitindo visualizar graficamente as associações entre perfis de clientes e canais de atendimento.

Autovalor:

Na Análise de Correspondência, os autovalores indicam a quantidade de inércia explicada por cada dimensão do mapa perceptual. Essa inércia pode ser interpretada como a quantidade de informação associativa representada em cada eixo.

Exemplo:

No exemplo, observa-se proximidade entre Jovem e App, indicando associação entre clientes jovens e uso do aplicativo. O perfil Adulto aparece mais próximo de Site, enquanto o perfil Idoso aparece próximo de Telefone e Loja Física. Portanto, o mapa perceptual confirma visualmente a associação entre Perfil do Cliente e Canal de Atendimento.

1. Construção da matriz A

Primeiro, parte-se da tabela de resíduos padronizados simples, calculados por:

zij=OijEijEijz_{ij} = \frac{O_{ij} – E_{ij}}{\sqrt{E_{ij}}}

Depois, cada resíduo padronizado é dividido pela raiz quadrada do total geral da tabela:

Aij=zijnA_{ij} = \frac{z_{ij}}{\sqrt{n}}

No exemplo Perfil do Cliente × Canal de Atendimento, temos:

n=230n = 230

Logo:

23015,17\sqrt{230} \approx 15{,}17

A matriz AA fica aproximadamente:

Perfil do ClienteAppSiteTelefoneLoja Física
Jovem0,22560,0268-0,1549-0,1275
Adulto-0,00570,0887-0,0410-0,0473
Idoso-0,2192-0,12750,20140,1811

Essa matriz representa os desvios padronizados entre as frequências observadas e esperadas.

2. Construção da matriz W

Após montar a matriz AA, calcula-se sua transposta:

ATA^T

Em seguida, calcula-se a matriz WW:

W=ATAW = A^T A

Como AA tem dimensão 3×43 \times 43×4, então:

AT=4×3A^T = 4 \times 3

e

W=4×4W = 4 \times 4

A matriz WWW fica:

AppSiteTelefoneLoja Física
App0,09900,0335-0,0789-0,0682
Site0,03350,0248-0,0335-0,0307
Telefone-0,0789-0,03350,06630,0582
Loja Física-0,0682-0,03070,05820,0513

3. Determinação dos autovalores

Com base na matriz WW, os autovalores são obtidos por:

det(WλI)=0\det(W – \lambda I) = 0

Onde:

W

é a matriz obtida por ATAA^T A;

λ\lambda

representa os autovalores;

II

é a matriz identidade.

As raízes dessa equação são os autovalores.

No exemplo, os autovalores principais são:

DimensãoAutovalor λ\lambdaλ% da inércia
10,228394,60%
20,01305,40%
Total0,2413100,00%

4. Cálculo dos valores singulares

Os valores singulares são calculados pela raiz quadrada dos autovalores:

σk=λk\sigma_k = \sqrt{\lambda_k}

Assim:

σ1=0,22830,4778\sigma_1 = \sqrt{0{,}2283} \approx 0{,}4778
σ2=0,01300,1141\sigma_2 = \sqrt{0{,}0130} \approx 0{,}1141

A tabela fica:

DimensãoAutovalor λ\lambdaλ% InérciaValor Singular σ\sigmaσ
10,228394,60%0,4778
20,01305,40%0,1141
Total0,2413100,00%

5. Quantidade máxima de dimensões

A quantidade máxima de dimensões é dada por:

m=min(I1, J1)m = \min(I – 1,\ J – 1)

No exemplo:

I = 3

porque existem 3 perfis:

Jovem, Adulto, Idoso\text{Jovem, Adulto, Idoso}

e

J = 4

porque existem 4 canais:

App, Site, Telefone, Loja Física\text{App, Site, Telefone, Loja Física}

Portanto:

m=min(31, 41)m = \min(3 – 1,\ 4 – 1)
m=min(2, 3)m = \min(2,\ 3)

m = 2

Logo, o mapa perceptual terá no máximo duas dimensões, que serão representadas pelos eixos XX e YY.

6. Coordenadas das categorias

Depois dos autovalores e autovetores, são calculadas as coordenadas das categorias no mapa perceptual.

Cada categoria recebe uma posição:

(x, y)

Onde:

x=Dimensão 1x = \text{Dimensão 1}
y=Dimensão 2y = \text{Dimensão 2}

Coordenadas dos perfis

Perfil do ClienteDimensão 1 / XDimensão 2 / Y
Jovem0,53720,1154
Adulto0,1028-0,1402
Idoso-0,66940,0649

Coordenadas dos canais

Canal de AtendimentoDimensão 1 / XDimensão 2 / Y
App0,58030,1156
Site0,2489-0,1825
Telefone-0,58160,0187
Loja Física-0,44130,0433

7. Interpretação do mapa perceptual

No mapa perceptual, categorias próximas indicam associação.

Neste exemplo:

Proximidade no mapaInterpretação
Jovem próximo de AppJovens estão mais associados ao uso do aplicativo
Adulto próximo de SiteAdultos estão mais associados ao uso do site
Idoso próximo de Telefone e Loja FísicaIdosos estão mais associados a canais tradicionais

A Dimensão 1 explica 94,60% da inércia. Portanto, o eixo horizontal é o mais importante. Ele separa principalmente:

Jovem e App\text{Jovem e App}

de:

Idoso, Telefone e Loja Física\text{Idoso, Telefone e Loja Física}

A Dimensão 2 explica apenas 5,40%, ajudando no ajuste visual das categorias, mas com importância menor.

1. Autovalores do nosso exemplo

Para o exemplo Perfil do Cliente × Canal de Atendimento, os autovalores foram:

DimensãoAutovalor λ\lambdaλ% InérciaValor Singular σ\sigmaσ
10,228394,60%0,4778
20,01305,40%0,1141
Total0,2413100,00%

2. Como calcular a % de inércia

Na ANACOR, a ideia é parecida com PCA: cada dimensão explica uma parte da informação total. Mas, em vez de “variância”, usamos o termo inércia, porque estamos analisando a associação entre categorias.

A fórmula é:

%Inércia da dimensão k=λkλ×100\% \text{Inércia da dimensão } k = \frac{\lambda_k}{\sum \lambda} \times 100

Onde:

λk\lambda_k

é o autovalor da dimensão analisada.

E:

λ\sum \lambda

é a soma de todos os autovalores não nulos.

Aplicando no nosso exemplo

A soma dos autovalores é:

λ=0,2283+0,0130=0,2413\sum \lambda = 0{,}2283 + 0{,}0130 = 0{,}2413

Para a Dimensão 1:

%Inércia1=0,22830,2413×100\% \text{Inércia}_1 = \frac{0{,}2283}{0{,}2413} \times 100
%Inércia194,60%\% \text{Inércia}_1 \approx 94{,}60\%

Para a Dimensão 2:

%Inércia2=0,01300,2413×100\% \text{Inércia}_2 = \frac{0{,}0130}{0{,}2413} \times 100
%Inércia25,40%\% \text{Inércia}_2 \approx 5{,}40\%

Somando:

94,60%+5,40%=100%94{,}60\% + 5{,}40\% = 100\%

Ou seja:

A Dimensão 1, representada pelo eixo XX, explica aproximadamente 94,60% da inércia total. Isso significa que quase toda a associação entre Perfil do Cliente e Canal de Atendimento está concentrada nesse primeiro eixo.

A Dimensão 2, representada pelo eixo YY, explica aproximadamente 5,40% da inércia total. Ela ainda participa do mapa perceptual, mas tem peso muito menor na explicação da associação.

Portanto, no nosso exemplo, o eixo XXé muito mais importante para a interpretação do gráfico do que o eixo YY.

Qual categoria é mais representativa? Calcular as massas:

Na ANACOR, as massas mostram o peso relativo de cada categoria na tabela. Em termos simples, elas indicam quais categorias têm maior participação no total da amostra.

A massa é calculada dividindo o total da linha ou da coluna pelo total geral.


1. Tabela observada

Perfil do ClienteAppSiteTelefoneLoja FísicaTotal
Jovem352051070
Adulto2530152090
Idoso510253070
Total65604560230

O total geral é:

n = 230

2. Massas das linhas

A massa da linha é calculada por:

mi=ni+nm_i = \frac{n_{i+}}{n}

Onde:

ni+n_{i+}

é o total da linha, e:

n

é o total geral da tabela.

Tabela de massas das linhas

Perfil do ClienteTotal da linhaMassa
Jovem700,3043
Adulto900,3913
Idoso700,3043
Total2301,0000

A categoria de linha mais representativa é:

Adulto\text{Adulto}

porque possui a maior massa:

0,39130{,}3913

Ou seja, os adultos representam aproximadamente:

39,13%39{,}13\%

do total da amostra.

Tabela de massas das colunas

Canal de AtendimentoTotal da colunaMassa
App650,2826
Site600,2609
Telefone450,1957
Loja Física600,2609
Total2301,0000

A categoria de coluna mais representativa é:

App\text{App}

porque possui a maior massa:

0,28260{,}2826

Ou seja, o canal App representa aproximadamente:

28,26%28{,}26\%

do total de atendimentos.

As massas indicam quais categorias têm maior peso no conjunto de dados.

No exemplo:

Tipo de categoriaCategoria mais representativaMassaPercentual
LinhaAdulto0,391339,13%
ColunaApp0,282628,26%

Portanto, a categoria mais representativa entre os perfis é Adulto, enquanto a categoria mais representativa entre os canais é App.

Mas atenção: massa alta não significa necessariamente maior associação.
A massa mostra o peso da categoria na amostra. Já a associação é analisada pelos resíduos padronizados ajustados e pela posição no mapa perceptual.

AutoVetores:

Indicam a direção dos eixos fatoriais. Eles ajudam a determinar como as categorias serão posicionadas no espaço.

Mapa Perceptual da Anacor:

Deixe um comentário