v\:* {behavior:url(#default#VML);} o\:* {behavior:url(#default#VML);} w\:* {behavior:url(#default#VML);} .shape {behavior:url(#default#VML);}

Neste artigo iremos explorar os conceitos básicos de um projeto de Data Mining, incluindo um exemplo prático utilizando o Microsoft SQL Server 2005 Analysis Services.

 

O que é Data Mining?

 

Data Mining é o conceito de “mineração de dados”, ou seja, a análise de uma massa de dados originada de um banco de dados relacional ou até mesmo de um Data Warehouse, utilizando algoritmos especiais com o objetivo de extrair o padrão dos dados, gerando informações para os tomadores de decisões de uma companhia. Este conhecimento pode ser apresentado de várias maneiras: agrupamentos, árvores de decisão, regras, entre outros.

Por exemplo, imagine uma empresa de varejo que necessita identificar o perfil de compradores de um determinado produto, para realizar uma campanha de Marketing. Com base no histórico de compra e no cadastro detalhado (com informações relevantes) dos seus clientes, estes algoritmos analisam a massa de dados e identificam padrões  e variáveis que possam pré-definir perfis de compradores. Estas variáveis podem ser: sexo, faixa etária, renda, hobby, profissão, idade, enfim, isto irá depender de cada cenário.

Este é apenas um exemplo, mas atualmente está é uma técnica que diversas empresas utilizam para gerar informações que possam auxiliar a direcionar seus negócios.

Para entender melhor sobre Data Mining, você pode recorrer a diversas literaturas disponíveis que abordam de forma mais detalhada esta metodologia, e também artigos específicos na Internet.

 

Analysis Services

 

O Analysis Services (AS) é a ferramenta de Data Warehouse da Microsoft, que utiliza a tecnologia OLAP (Online Analytical Processing), específica para operações de análise de grande volume de dados, onde o seu engine é preparado para organizar os metadados de forma a otimizar consultas e não transações, como é o casos dos bancos de dados relacionais, que usam o tecnologia OLTP (Online Transaction Prossecing). Além da criação de cubos, o Analysis Services também permite a criação de projetos de Data Mining.

 

Criando o seu primeiro projeto de Data Mining

 

Para criar seu primeiro projeto de Data Mining você utilizará o Business Intelligence Development Studio, referenciado neste artigo e em outras literaturas como BIDS.

 

Como base de dados de exemplo, iremos utilizar o AdventureWorksDW, que é instalado opcionalmente com o SQL Server 2005. Se você não instalou os bancos de exemplo, você pode realizar o download e instalar na sua instância. Consulte o módulo de Dicas do meu blog.

 

Cenário do projeto: AdventureWorks é uma empresa que vende artigos esportivos. AdventureWorksDW é a base de Data Warehouse da empresa e a view vTargetMail possui informações sobre os clientes cadastrados que já realizaram ou não alguma compra na empresa. Neste caso iremos identificar qual o perfil do publico alvo da empresa, ou seja, quais as características dos compradores, para que, por exemplo, a área de Marketing possa realizar uma ação especifica.

 

Você pode utilizar o mesmo padrão de nomenclatura aqui proposto para facilitar o entendimento e acompanhamento do projeto.

 

Para criar um novo projeto, siga os passos seguir:

 

  • Abra o BIDS.
  • Clique no menu FileNewProject.
  • Na janela New Project, selecione o template Analysis Services Project na janela do lado direito.
  • Defina um nome para o projeto, no campo Name: ProjMining.  Clicando em Browse, no campo Location, você pode definir uma pasta onde serão armazenados os arquivos do seu projeto.
  • Clique em OK para confirmar a criação do seu projeto.


Figura 1 – Janela New Project


Em seguira será carregada a Janela Principal do BIDS, onde iremos utilizar os recursos de criação do Data Mining.

 


Figura 2 – Janela Principal do BIDS

 

O primeiro passo, é a criação do Data Source, que é responsável por realizar a conexão com a fonte de dados, para acesso às informações que serão analisadas.

 

  • Na janela Solution Explorer, clique com o botão direito em Data SourcesNew Data Source.
  • Na janela de boas vindas do Data Source Wizard, clique em Next para continuar.
  • No passo Select how to define the connection, clique em New para criar uma nova conexão.
  • Na janela Connection Manager, no campo Provider você deve informar qual o Driver da sua conexão. Mantenha o padrão: Native OLE DB\SQL Native Client.
  • Em Server name selecione o nome da instância de SQL Server instalado no seu computador.
  • No campo Select or enter a database name, selecione AdventureWorksDW.
  • Clique em OK para confirmar.

 


Figura 3 – Janela Connection Manager

 

  • De volta ao Data Source Wizard, sua conexão aparecerá em Data Connections. Clique em Next.

 


Figura 4 – Janela Data Source Wizard

 

  • No passo Impersonation Information, clique em Next.
  • No passo Completing the Wizard, no campo Data Source name digite DS_AdventureWorksDW e clique em Finish.

 

O próximo passo é criar um Data Source View, que nada mais é do que uma visualização da sua estrutura de dados, onde você pode incluir apenas as tabelas e relacionamentos que você necessita para o seu projeto. Um Data Source View possui outros recursos, que podemos explorar em artigos futuros. Por enquanto, vamos focar em nosso objetivo que é criar uma estrutura de Mining.

 

  • Na janela Solution Explorer clique com o botão direito em Data Source ViewsNew Data Source View...
  • Na janela de boas vindas do Data Source View Wizard, clique em Next.
  • No passo Select a Data Source, você irá selecionar o DS_AdventureWorksDW que criamos no anteriormente. Clique em Next.
  • No passo Select Tables and Views, você deve selecionar a view  vTargetMail e clicar no botão “>”, transferindo a view de Available objects para Included objects como apresentado abaixo:


Figura 5 – Passo Select Tables and Views

 

 

  • Clique em Next para prosseguir.
  • Defina o nome do Data Source View: DSV_TargetMail.
  • Clique em Finish.

 

Você visualizará o Data Source View com o objeto vTargetMail no detalhe. Você poderia adicionar outros objetos e definir seus relacionamentos, caso necessário.

 

 

Agora vamos ao ponto central do nosso projeto, a criação da estrutura de Mineração.

 

  • Clique com o botão direito em Mining StructuresNew Mining Structure.
  • No passo de boas vindas do Data Mining Wizard, clique em Next.
  • No passo Select the Definition Method, selecione a opção From existing relational database or data warehouse. Clique em Next.
  • Em Select the Data Mining Technique, você pode escolher qual será o algoritmo utilizado para analisar a massa de dados. Você pode pesquisar melhor e testar outros métodos futuramente. Para o nosso exemplo, selecione a opção Microsoft Naive Bayes. Clique em Next.
  • Selecione o Data Source View que criamos anteriormente (DSV_TargetMail) e clique em Next.
  • No passo Specify Table Types, teremos apenas a view vTargetMail. Deixe marcada a opção Case, e mantenha desmarcada a opção Nested. Clique em Next.
  • Em Specify the Training Data você definirá quais as métricas para a análise da massa de dados:
    • Marque o campo CustumerKey como campo chave, selecionando a coluna Key.
    • Predictable é a informação que indica qual o objetivo da análise, ou seja, será o dado que define se o cliente é um comprador ou não. Neste caso, selecione o campo BikeBuyer na coluna Predictable. Na view vTargetMail, o valor para clientes que já realizaram uma compra é 1. Caso deseje analisar as informações na view, você pode consultar através do Management Studio ou abrir o seu Data Source View no BIDS. Para isso clique com o botão direito na View vTargetMail, e clique em Explore Data.
    • Input são os dados que serão analisados para identificar os padrões que determinam o objetivo esperado. Em nosso exemplo, selecione como na coluna Input os campos BikeBuyer (comprador s/n), CommuteDistance (distância entre a casa e o trabalho), NumberCarsOwned (número de carros) e NumberChildrenAtHome (quantidade de crianças em casa). Clique em Next.


Figura 6 – Janela Specify the Training Data

 

 

  • No passo Specify Columns’ Content and Data Type será definido qual o tipo de conteúdo e o tipo de dado dos campos, para que o engine do Analysis possa analisar adequadamente as informações. Basicamente você pode distinguir entre listas pré-definidas (estado, sexo, status), dados seqüenciais (idade, salário), campos chaves, enfim, em uma próxima oportunidade podemos nos aprofundar mais neste assunto. Em caso de dúvidas, você pode clicar no botão Detect para que o AS identifique automaticamente os tipos. Para o sucesso do nosso exemplo, mantenha o Content Type da coluna Customer Key como Key e defina o Content Type dos outros campos como Discrete (indicado para listas pré-definidas), como na figura abaixo.
  • Na coluna Data Type, mantenha o padrão.
  • Clique em Next.

 


Figura 7 – Janela Specify Columns’ Content and Data Type

 

 

  • Por fim, defina o nome da estrutura e do seu modelo de Mining. Para mantermos o padrão, digite MS_BikeBuyer em Mining structure name e MM_BikeBuyer em Mining model name. Clique em Finish para concluir.

 

Para que possamos testar nosso projeto, será necessário realizar o processamento da estrutura e modelo de Mining:

 

  • Na janela Solution Explorer, clique com o botão direito em MS_BikeBuyer.dmm que está em Mining Structures, e clique na opção Process...
  • O BIDS irá confirmar se você deseja realizar o rebuild e deploy do projeto, para que todos os metadados possam ser criados e a estrutura do Mining preparada para a análise da massa. Clique em Yes para prosseguir.
  • Na janela de Process Mining Structure, mantenha as configurações padrões e clique em Run.


Figura 8 – Process Mining Structure

  

 

  • Na sequência será apresentada a janela de progresso do processamento. Ao final será apresentada uma mensagem de sucesso, como na figura abaixo. Clique em Close.

 


Figura 9 – Janela Process Progress

 

 

  • Na janela Process Mining Structure clique novamente em Close.

 

Com isso concluímos a criação do nosso projeto de Data Mining. Agora vamos testar e visualizar o resultado da análise. Visualmente seu projeto deve estar similar a figura abaixo.

 


Figura 10 – Dependency Network

 

 

Se aparecer apenas o balão Bike Buyer, é porque houve algum problema durante o processo de criação, então remova a Mining Structure MS_BikeBuyer.dmm e repita novamente todos os passos.

 

O Analysis Services identificou os padrões na massa de dados com base nos campos informados, ressaltando os fatores que apontam o perfil dos compradores de Bicicletas da AdventureWorks.

Para entendermos melhor essa análise, vamos entrar nos detalhes das informações. Observando a aba Mining Model Viewer você pode identificar outras abas que permitem a navegação entre os detalhes.

 

Você já está posicionado na aba Dependency Network, onde o AS demonstra que encontrou relação nos campos indicados para análise, ou seja, todos os clientes que já realizaram alguma compra possuem um padrão. Por exemplo, grande parte dos compradores mora próximo ao trabalho, ou possuem apenas um filho, enfim, dados que são comuns entre os compradores podendo definir um perfil.

 

Clique na aba Attribute Profiles e observe as informações.

 


Figura 11 – Attribute Profiles

 

Aqui podemos observar algumas informações relevantes. A terceira coluna representa toda a massa de dados. A quarta coluna representa as características de clientes cadastrados que ainda não são compradores. E a quinta coluna representa as características dos compradores. Assim concluímos que:

 

  • Grande parte dos compradores mora próximo do trabalho: Commute Distance = 0-1 Miles.
  • Geralmente os compradores não tem carro ou possuem até dois carros. Acima desse número existem poucas ocorrências.
  • Grande parte dos compradores não tem filhos.
  • Também são possíveis compradores pais que possuem até dois filhos. Acima desse número existem poucas ocorrências.

 

As abas seguintes demonstram a mesma análise através de outras visões. Clique em Attribute Characteristics. Você pode modificar o parâmetro Value para 0 (não compradores) e 1 (compradores).

 


Figura 12 – Attribute Characteristics

 

 

Agora clique em Attribute Discrimination. Nesta visão você pode realizar uma análise comparativa. Mude o parâmetro Value para 1 e o parâmetro Value 2 para 0.

 


Figura 13 – Attribute Discrimination

 

 

 

Pronto. Este é um projeto simples, apenas para estudo, mas que envolve todos os conceitos necessários para trabalhar com Data Mining utilizando o BIDS e Analysis Services. Você pode criar variações a partir desse modelo, onde o nível de detalhe e dificuldade irá aumentar de acordo com a necessidade do seu projeto.

 

Este projeto está disponível para download no meu SkyDrive, em Publica\Analysis\ProjMining.zip. Acesse: http://ivandba.spaces.live.com.

 

 

Ivan Candido

ivandba@hotmail.com

Site: http://www.ivancandido.com
Blog: http://ivandba.spaces.live.com


Condições de uso desse material

 

Este documento pode ser utilizado individualmente por estudantes e profissionais que desejam desenvolver habilidades e adquirir conhecimento técnico em ferramentas Microsoft, não podendo ser publicado, distribuído ou comercializado sem autorização formal do autor.