Conforme mencionado, na análise do impacto dos algoritmos de classificação para a im- plementação dos classificadores, utilizamos o ambiente da ferramenta WEKA (WITTEN et al., 2016), que permite a implementação de algoritmos de aprendizado de máquina, pré-processamento, classificação, predição e agrupamento. A biblioteca da WEKA, em sua versão 3.8, pré-define uma verificação de capacidades de cada algoritmo de classifi-
cação antes que o classificador que está sendo construído seja executado, para calcular a classificação do conjunto de dados. Em outras palavras, quando inserimos os dados de entrada no WEKA, ele verifica, de acordo com os atributos do conjunto de dados, quais classificadores são capazes de processar os dados inseridos. Então, com base nessa pré- seleção do WEKA, foram utilizados os classificadores: Zero R, LWL (K-NN), SDGText (SVM) e Navie Bayes (WITTEN et al., 2016).
O objetivo do processo de classificação é prever as classes existentes em determinado atributo (coluna) do conjunto de dados, utilizando uma parte do conjunto de dados para treinamento e outra parte para testes. Os dados, então, são submetidos ao processo de classificação, e ao final é possível verificar a acurácia (taxa de acertos) do classificador para os dados testados. Com isso, podemos verificar se o processo de anonimização impactou ou não os resultados da classificação. Foram aplicadas diferentes técnicas de anonimização, em diferentes estágios, determinando a acurácia e o desempenho para os atributos Veículo, Cor, Agente de Usuário do Navegador e Tipo de Cartão de Crédito. Selecionamos esses atributos porque eles são os que melhor representam as escolhas de cada usuário contido nos registros do conjunto de dados e podem indicar suas preferências (por exemplo, os dados do agente do navegador web utilizado podem indicar as preferências do sistema operacional; os dados do veículo podem indicar a preferência de marcas, modelos, características específicas do carro, e até mesmo determinar as classes do atributo socio- econômico). Assim, esses Atributos são os mais interessantes para identificar padrões usando mineração de dados.
Para melhor avaliar o impacto das diferentes técnicas de anonimização separadamente, definimos quatro estágios para os experimentos, conforme a seguir:
No primeiro estágio, foi realizada a classificação da tabela original sem qualquer anoni- mização, a fim de determinar os parâmetros iniciais de comparação. No segundo estágio, foi anonimizada a tabela original usando a técnica de supressão. Todos os atributos iden- tificadores e atributos sensíveis (tais como nomes, identidade nacional, número de cartão de crédito, nome de usuário e senhas) foram suprimidos. Em seguida, foram aplicados os classificadores nos dados anonimizados e coletados os resultados.
No terceiro estágio, foram utilizadas as técnica de generalização e supressão, aplicadas aos campos de semi-identificadores (tais como estado, data de nascimento, idade, empresa
e veículo). Novamente, os dados anonimizados foram submetidos aos classificadores para avaliação de desempenho e acurácia.
No quarto e último estágio, foi aplicado o modelo κ-anonymity, com um valor paraκ= 2 (menor valor possível para essa configuração). Ao final, os resultados de cada um dos quatro estágios foram comparados em relação ao desempenho e a acurácia.
Resultados do impacto da anonimização
Nesta seção são apresentados os resultados dos classificadores para cada estágio de ano- nimização. Para melhor entendimento, em primeiro lugar, discutimos os resultados da avaliação da acurácia e, em seguida, os resultados da avaliação de desempenho do pro- cesso de classificação executados pelo WEKA. Em ambas as subseções os resultados são apresentados por atributos: Tipo de Cartão de Crédito, Cor, Agente do Usuário do Na- vegador e Veículo, respectivamente. Para todas as figuras apresentadas a abreviação “T0” representa o primeiro estágio, ou seja, os dados brutos, sem a aplicação de qualquer técnica de anonimização; “T1” representa o segundo estágio, onde todos os campos identificadores e sensíveis foram anonimizados; “T2” representa a terceira etapa, onde os dados foram ge- neralizados de acordo com a política de anonimato proposta por Matsunaga et al. (2017); “Tk2” representa os dados anônimos usando o modelo κ-anonymity, considerando κ = 2. A seguir, com exceção do último estágio, “Tk2” (que seria inviável a visualização devido o tamanho da tabela), apresenta algumas imagens com exemplos do conjunto de dados utilizado para etapa de classificação com a ferramenta Weka. A Figura 5.4 apresenta uma amostra dos dados brutos, enquanto a amostra de dados anonimizados no primeiro estágio é apresentada na Figura 5.5; a Figura 5.6 apresenta a amostra de dados anonimizados no segundo estágio.
Análise da acurácia
Em todos os experimentos, a acurácia dos classificadores foi testada pela ferramenta WEKA, ou seja, o processo de cálculo executado foi o mesmo para os atributos, inde- pendentemente da sua frequência (número de classificações possíveis) ou quantidade de registros no conjunto de dados. Em cada atributo escolhido para a predição das classes, a acurácia foi calculada por meio da construção de uma matriz de confusão, provida pela ferramenta WEKA, onde foi possível constatar a acurácia dos classificadores.
Figura 5.4: Amostra de dados brutos
Figura 5.5: Amostra de dados anonimizados no primeiro estágio
Figura 5.6: Amostra de anonimização executada no segundo estágio
A Figura 5.7 mostra os resultados da acurácia para a predição das classes do atributo Tipo de Cartão de Crédito. Para esta classe, a frequência (número de classes possíveis) é de apenas duas classes,Mastercard ou Visa, ou seja, o classificador deve ter a capacidade de avaliar, no mínimo, dados booleanos (por exemplo 0 ou 1, verdadeiro ou falso).
Figura 5.7: Acurácia para o tipo do cartão de crédito
Analisando a tabela na Figura 5.7, podemos observar que para o classificador Zero R, SDG e Navie Bayes, a precisão dos classificadores foi similar em todos os estágios, com pequenas variações (menores do que 1 ponto percentual). O ponto que chama atenção é a redução da acurácia do classificador LWL (K-NN) combinado com Zero R, com uma diminuição na acurácia de 18 pontos percentuais (variando de 69% para aproximadamente 51%). Isso aconteceu devido à supressão das informações do número do cartão de crédito. Os primeiros quatro dígitos do número do cartão de crédito representam a emissora do cartão; removê-los torna mais difícil realizar a predição das marcas. O classificador LWL combinado com Zero R apresentou maior impacto ao anonimizar esse atributo. Essa redução pode ser corrigida com a aplicação da supressão das partes finais dos dígitos do cartão, ao invés da supressão total. Embora esses quatro dígitos sejam determinantes para os classificadores, eles não são tão relevantes do ponto de vista de qualidade da mineração de dados, uma vez que não revelam informações sobre as preferências dos clientes (por exemplo, determinar o perfil de usuários de cada emissora do cartão ou revelar as razões de escolha por uma das emissoras de cartão de crédito). É importante mencionar que o classificador SDG (SVM) processa apenas classes binárias, ou seja, com apenas dois atributos, ele não apresentou resultados para os demais atributos testados na predição de classe, isto é, não foi possível utilizá-lo para classificar os atributos Veículo, Cor, Navegador de internet.
Ao classificar as classes do atributo Veículo, cuja variedade de classes era superior a dois mil tipos diferentes de veículos (mais precisamente, 2641), obtivemos os resultados apresentados na Figura 5.8. Observa-se que a precisão em T0 não alcançou nem 1% e T1
Figura 5.8: Acurácia para o tipo de veículo
teve acurácia igual a 0 para todos os classificadores. A razão para esta baixa precisão é a alta frequência de classes, isto é, a variação de veículos é tão grande que o classificador não consegue definir um padrão para a escolha do veículo.
Ao executar o estágio T2, a acurácia subiu de 0 para 6%, em todos os classificadores testados. Neste caso, ao observarmos os dados, verificamos que a classe foi anonimizada pela técnica de generalização, reduzindo a frequência de classe de 2641 para 23 classes de veículos possíveis. Considerando esta redução, entende-se que o classificador conseguiu determinar uma correlação nos dados quando a classe objetivo veiculo foi anonimizada pela técnica de generalização.
No estágio “TK2”, a acurácia aumentou significativamente para todos os classificadores (aproximadamente, entre 15% e 18%). É importante mencionar que retiramos do conjunto de dados as amostras que não possuíam pelo menos κ = 2, reduzindo a amostra de 3000 para 167 registros. Essa remoção foi necessária devido a uma particularidade do modelo κ-anonymity, que suprime os registros que são exclusivos (únicos no conjunto de dados), substituindo alguns dados pelo símbolo asterisco “*”. Como no conjunto de dados existiam vários registros únicos, essa supressão comprometeu os resultados dos classificadores, que construíram sua matriz de confusão considerando todos os “*“ como pertencentes à mesma classe. Assim sendo, o classificador classificou a maior parte dos registros como asterisco, apontando como correto na matriz de confusão. Para contornar essa situação, o conjunto de dados foi reduzido com a finalidade de avaliar o real impacto
na qualidade da predição da classe veiculo. Conjuntos de dados menores podem ter um impacto negativo em relação às habilidades de aprendizagem de máquina. Entretanto, nos experimentos, pudemos observar que os padrões foram descobertos pelo processo de mineração apesar dessa redução do número de registros, uma vez que o conjunto de dados completo não representava bons padrões para se validar a tarefa de classificação.
Figura 5.9: Acurácia para o tipo de cor
A Figura 5.9 mostra os resultados da acurácia para a classe cor. Essa classe possuía uma frequência de 10 atributos em todos os estágios, ou seja, o classificador deveria clas- sificar as amostras como Preto, Roxo, Verde, Azul, Marrom, Vermelho, Laranja, Branco, Amarelo ou Prata. Observando a tabela da Figura 5.9, podemos observar que para os classificadores Zero R e LWL combinado com Zero R, a acurácia foi similar em todos os estágios, com um pequeno aumento para T2. Ao observar os resultados para o clas- sificador Naive Bayes, verificamos uma alta variabilidade nos resultados. Uma vez que o classificador é baseado em probabilidades, entende-se que esse tenha sido mais afetado pela remoção dos atributos identificadores. A perda de informação alterou os pesos dentro dos cálculos de probabilidade, fazendo com que esse classificador seja mais impactado. O mesmo comportamento é observado também na Figura 5.10, quando verifica-se a acurácia para o navegador de internet utilizado.
A frequência de possibilidades para a classe do navegador de internet utilizado é de 76, pois combina a versão do navegador com a versão do sistema operacional do com- putador utilizado pelo usuário, por exemplo, Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv: 11.0); Gecko, Mozilla/5.0 (Macintosh; Intel Mac OS X 10.10; rv: 50.0
Figura 5.10: Acurácia para o navegador de internet utilizado
); Gecko/20100101 Firefox/50.0, etc. Novamente, a variação de acurácia entre Zero R e LWL combinado com Zero R foi muito pequena. Para os Naive Bayes, embora a variação da precisão seja maior que os demais classificadores, a diferença não chega a 3%.
Análise do desempenho
Da mesma forma que foi apresentada a acurácia, nesta subseção apresentamos o desempe- nho dos classificadores para cada classe. A medida de desempenho é da ordem de minutos e segundos. Em alguns casos, o classificador não foi capaz de classificar ao menos um re- gistro. Mesmo nesses casos, entende-se que é importante registrar o tempo da tentativa de classificação, pois os parâmetros experimentados podem ajudar na redução do tempo gasto, mesmo em casos de insucesso na mineração de dados. As Figuras 5.11, 5.12, 5.13 e 5.14 mostram o tempo gasto para concluir o processo de classificação. Considerando o tempo como a variável para mensurar o desempenho, quanto maior o tempo gasto, pior é o desempenho do classificador.
Na Figura 5.11, o tempo de execução do Zero R e do Naive Bayes foi da ordem de milissegundos. O tempo do classificador LWL combinado com Zero R, foi na ordem de apenas um segundo. A variação do SDG (SVM) foi de 3 segundos, 4 segundos e 6 segundos, respectivamente, em cada estágio. Nesse caso, a anonimização impactou o desempenho apenas do classificador SDG, porém a diferença máxima de 3 segundos precisa ser melhor explorada nos demais experimentos, para verificar se este foi apenas
Figura 5.11: Desempenho para o tipo de cartão de crédito
um caso isolado ou foi uma tendência. Esse aumento do tempo também pode ser explicado pela necessidade do classificador recalcular seu modelo baseado em vetor de máquina. A remoção dos atributos nos estágios pode ter exigido o recálculo do modelo de classificação, aumentando, portanto, o tempo na tarefa de classificação.
Figura 5.12: Desempenho para o tipo de veículo
A Figura 5.12 mostra o resultado do desempenho dos classificadores, para a classe veículo. Para essa classe, no estágio T0, gastou em média 13 segundos para execução de todos os classificadores (Zero R, LWL combinado com Zero R e Naive Bayes). O estágio
“T1”, foi o que consumiu mais tempo, em média 4 minutos e 22 segundos. Esse consumo do tempo pode ser explicado porque os classificadores não conseguiram classificar nenhuma informação, como já pode ser observado na Figura 5.8 (acurácia do veículo). Isso aconteceu devida à alta variedade de classes possíveis para o atributo veículo, que apesar da supressão dos dados identificadores e sensíveis ainda apresentou 2641 tipos diferentes de veículos. O classificador que mais consumiu tempo foi o Naive Bayes, pouco mais de 8 minutos. Como esse classificador é baseado em probabilidade, a alta frequência de possíveis classes dentro do atributo veículo, impactam na quantidade de cálculos necessários para verificação da probabilidade de um registro ser classificado em uma das 2641 classes, e que ao final não resultaram em nenhuma predição correta. No segundo estágio o desempenho foi melhorado, reduzindo para uma média de menos de 1 segundo. Isso se deve a generalização aplicada ao atributo veículo, que diminuiu a frequência dentro da classe (de 2641 para 23 possibilidades para veículos). O mesmo aconteceu no estágio Tk2, onde o tempo de execução foi zero, exceto para o classificador Zero R.
Figura 5.13: Desempenho para o tipo de cor
Conforme é apresentado na Figura 5.13, para a classe cor a execução de Zero R e Naive Bayes foi instantânea e LWL combinado com Zero R apresentou variações de 1 segundo. Podemos observar que o tempo gasto para o classificador LWL combinado com Zero R foi melhor em TK2 quando comparado ao T0. O mesmo acontece para o classificador de Navie Bayes, nos estágios T1 e TK=2 em relação ao T0. Esse comportamento era
esperado porque, embora as diferenças sejam pequenas, os dados foram suprimidos ou generalizados, facilitando a tarefa do classificador.
Figura 5.14: Desempenho para o tipo de navegador de internet
Similarment, ao desempenho do tipo de cor (Figura 5.13), o desempenho para o tipo de navegador, mostrado na Figura 5.14, apresenta um baixo impacto no desempenho quando executados os estágios de anonimização. Podemos observar que o maior tempo gasto na classificação foi de 4 segundos, para o estágio T1, utilizando o classificador LWL combinado com Zero R. Entretanto, esse classificador teve seu melhor desempenho no estágio Tk2, quando comparado com T0. O mesmo acontece para o classificador Navie Bayes no estágio T1 e Tk=2 comparado com T0. Esse comportamento era esperado pois as diferenças são pequenas e os dados foram suprimidos ou generalizados, facilitando a tarefa dos classificadores.
5.3.2
Avaliação do risco de reidentificação
O risco de reidentificação que é apresentado na Figura 5.15 foi calculado pela ferramenta ARX (ARX, 2018). O objetivo do cálculo do risco é verificar o número de registros da amostra que são únicos dentro da tabela. A média do risco representa a porcentagem do valor médio, considerando todos os registros do conjunto de dados. O maior risco encontrado no conjunto de dados é apresentado na segunda linha da tabela (Maior Risco). A porcentagem de registros afetados pelo maior risco é apresentada na terceira linha da tabela (Registros Afetados).
Figura 5.15: Risco de reidentificação para os dados integrados
Como pode-se verificar, no estágio “T0”, o risco médio, o risco mais alto, e a quantidade de registros afetados é igual a 100% (Figura 5.15). Esse valor é o mais alto, justamente porque neste estágio o conjunto de dados não foi anonimizado. O mesmo resultado é apresentado no estágio “T1”, entretanto, no estágio “T1”os atributos identificadores e sensíveis foram suprimidos. O problema é que a supressão é somente dessas informações (identificadores e sensíveis), mas não protegem contra a reidentificação dos indivíduos, uma vez que os semi-identificadores, não foram suprimidos. Esses dados são críticos, pois podem ser combinados com outros semi-identificadores para reidentificar os indivíduos. No estágio “T2”, a média do risco diminuiu para 59%, mas o risco mais alto ainda permaneceu em 100% , sendo que 31% dos registros apresentam esse risco, apresentando uma redução significativa. Isso ocorreu porque nesse estágio a técnica de generalização foi aplicada para os semi-identificadores.
O risco de reidentificação mais baixo foi obtido no estágio TK2, com 0,03% para ambas as métricas (highest and average risk ). A porcentagem de registros afetadas nesse estágio foi de 100%, isto significa que o conjunto de dados como um todo tem o risco de 0.03% de ser reidentificado. Essa forte diminuição, em relação ao estágio T2, se deve a aplicação
do modelo κ-anonymity, alcançando o objetivo deste trabalho, em remover os registros únicos de um conjunto de dados e, consequentemente reduzindo o risco de reidentificação.