Por que eu devo ler este artigo:A utilização de tarefas de mineração de dados está cada vez mais comum em sistemas comerciais, sendo elas cada vez mais necessárias em ambientes corporativos nos quais é preciso tomar decisões rápidas e inteligentes baseadas nos dados históricos e comportamentais das empresas. Sistemas de informação transacionais apresentam esquemas de bases de dados que nem sempre são adequados para esses propósitos, dessa forma, faz-se necessário o entendimento de como transformar uma base de dados transacional em um formato específico no qual as tarefas de mineração de dados possam ser executadas.
Autores: Jones Granatyr, Bruno Mateus Casali, Rafael Sousa da Silva, José Adair Fabricio, Alan Diego Darold, Fábio Alexandre Taffe

As bases de dados transacionais são aquelas que armazenam os dados diários de uma determinada empresa, sendo alimentadas pela utilização dos sistemas de informação transacionais. Nesse tipo de sistema o objetivo é realizar as operações do dia a dia em um setor específico, ou seja, o esquema da base de dados está preparado para suprir essa necessidade. Por exemplo, em um cenário de mercado são necessárias estruturas de tabelas para possibilitar o controle dos principais processos desse setor, tais como controle de estoque, venda dos produtos e emissão de cupom fiscal. Em outras palavras, esses sistemas estão preocupados com as operações básicas realizadas sobre os dados, tais como inclusão, alteração, exclusão e consulta.

Porém, quando é necessário aplicar técnicas de mineração de dados objetivando a tomada de decisão no nível gerencial da empresa, na maioria das vezes os esquemas transacionais não são adequados para a aplicação dos algoritmos correspondentes. Isso ocorre porque esses algoritmos necessitam que os dados estejam em um padrão pré-determinado, ou seja, a base de dados transacional necessita ser convertida para um formato no qual eles possam ser aplicados.

Dentro desse contexto, a mineração de dados objetiva aplicar tais algoritmos em bases de dados com o intuito de encontrar automaticamente algum tipo de padrão ou auxiliar em processos de tomada de decisão. Existem diversas tarefas de mineração de dados e as principais são: classificação, regressão, detecção de desvios, descoberta de regras de associação, agrupamento e descoberta de padrões sequenciais. Cada uma delas objetiva encontrar relações distintas nos dados e são aplicadas a cenários específicos. A classificação, como o próprio nome sugere, tem o intuito de classificar os registros em classes: por exemplo, bancos utilizam essa técnica para indicar se o risco de conceder um empréstimo para um cliente é alto, médio ou baixo. Desse modo, o cliente é categorizado em uma dessas três classes para que o banco possa tomar a decisão se deve ou não liberar o empréstimo.

A regressão, por sua vez, trabalha com atributos numéricos e uma aplicação prática é prever o limite do cartão de crédito de um cliente com base em seus gastos mensais. Já a detecção de desvios é utilizada para encontrar outliers, ou seja, registros que estão muito fora de um padrão que vem ocorrendo há um certo tempo. Essa técnica é comumente aplicada para detectar fraudes em cartão de crédito tomando como base o padrão de compra do cliente, dessa forma, caso o sistema detecte alguma compra fora do padrão o cartão pode ser bloqueado. Por outro lado, a descoberta de regras de associação visa encontrar relacionamentos entre os dados, e o exemplo clássico é o do cenário do supermercado, no qual se objetiva encontrar quais são os produtos que são vendidos em conjunto para planejar a disposição e organização das prateleiras.

A tarefa de agrupamento, por sua vez, tem o intuito de analisar os dados e formar grupos semelhantes. Por exemplo, em um cenário de uma loja de departamentos um grupo pode ser composto pelos clientes interessados em acessórios de beleza, enquanto que outro grupo pode ser formado por pessoas interessadas em eletrônicos. Com isso, é possível segmentar o mercado e enviar propagandas somente para os clientes que possuem maiores chances de comprarem os produtos. Por fim, a última tarefa de mineração de dados diz respeito à descoberta de padrões sequenciais, ou seja, objetiva-se prever o que acontecerá no futuro com base em um comportamento atual. Por exemplo, se um leitor comprar o livro “SQL Básico”, a loja saberá que no futuro ele comprará o livro “SQL Avançado” e enviará um e-mail com uma promoção, por exemplo.

Neste artigo serão abordadas com mais detalhes somente as tarefas de classificação e descoberta de regras de associação, pois a transformação das duas bases de dados deste exemplo está relacionada a essas tarefas. A próxima seção explana melhor sobre as duas técnicas.

Classificação e descoberta de regras de associação

A tarefa de classificação tem o intuito de associar cada registro da base de dados a uma classe pré-definida. Para que isso seja possível são necessários dois pré-requisitos: um conjunto de atributos previsores e um atributo meta. A Figura 1 apresenta um exemplo e pode-se observar que existem três atributos previsores (sexo, idade e número de dependentes) e um atributo meta (gasta muito). Dessa forma, a tarefa de classificação busca encontrar uma relação entre os atributos previsores com o atributo meta, ou seja, objetiva-se responder a seguinte questão: será que o sexo, a idade e o número de dependentes influencia no valor que o cliente irá gastar na loja? Com isso, é possível construir um sistema inteligente no qual se possa prever se o cliente irá gastar muito ou gastar pouco com base em suas características. A base de dados da Figura 1 já está com o atributo meta definido, porém, quando um sistema desse tipo for construído do zero, uma análise deve ser realizada na base de dados transacional com o intuito de encontrar e/ou definir o atributo para o qual as previsões serão realizadas. Em suma, recomenda-se que o objetivo da classificação (atributo meta) esteja definido antes de iniciar os pré-processamentos para a transformação da base de dados transacional.

Os algoritmos de classificação possuem uma métrica comumente utilizada para avaliar sua acuidade, geralmente dada pelo percentual de acerto e de erro. Para realizar essa avaliação, a base de dados é dividida em duas porções distintas: a de treinamento e a de teste. A base de treinamento é utilizada para que o algoritmo aprenda com os dados, enquanto que a base de t ...

Quer ler esse conteúdo completo? Tenha acesso completo