Data Mining com Excel 2007

 

Existem muitos mitos em torno de Data Mining. O principal deles diz que Data Mining é algo que está fora do alcance dos usuários comuns. Dizem que Data Mining requer treinamento específico e que as ferramentas que o fazem são, em geral, caixas pretas das quais não tiramos proveito nenhum. Para quebrar tais mitos, nada melhor do que demonstrar como utilizar os algoritmos de Data Mining do SQL Server a partir do Office Excel - fácil, simples, poderoso e todo mundo já conhece.

O que é Data Mining?

Data Mining é um processo de análise dos dados a fim de se identificar informações relevantes. Tais informações podem representar tendências, comportamentos, determinar perfis, agrupar registros em comum ou várias outras tarefas. Quando eu estava na escola, aos 7 ou 8 anos de idade, ficava perguntando para minha professora (e para os meus pais) por que eu precisava aprender História. Achava chato e desnecessário. A resposta que eu tinha, em geral, era: "-Precisamos estudar história para entender o presente e o futuro.". Nunca entendi isso muito bem. Eu ia bem em matemática, português, inglês... mas ia muito mal em história. Só fui me interessar por história mais tarde. Com Data Mining, é a mesma coisa. Os terabytes de dados presentes nos datawarehouses podem nos ensinar muito sobre o que fizemos e, principalmente, sobre onde podemos chegar. E é isso que o Data Mining nos permite: fazer uma análise do seu histórico, a fim de se interpretar os dados e tomar decisões melhores.

Algoritmos

O SQL Server 2005 Analysis Services já traz implementações dos principais algoritmos de Data Mining utilizados no mercado. A tabela abaixo indica alguns cenários e quais algoritmos se aplicam melhor:

 

Objetivo Algoritimo

Prever um atributo discreto. Por exemplo, prever quando o destinatário de uma campanha de mala direta vai comprar um produto.

Decision Trees

Naive Bayes

Clustering

Neural Network

Logistic Regression

Linear Regression

Prever um atributo contínuo. Por exemplo, fazer a previsão de vendas do próximo ano.

Decision Trees

Time Series

Prever uma seqüência. Por exemplo, realizar uma análise de seqüência de clicks em um site.

Sequence Clustering

Encontrar grupos de itens em comum em transações. Por exemplo, analisar uma cesta de compras e sugerir produtos relacionados.

Association Rules

Decision Trees

Encontrar grupos com itens similares. Por exemplo, segmentar dados demográficos em grupos para entender melhor o relacionamento entre os atributos.

Clustering

Sequence Clustering

 

O Analysis Services aceita plugins de terceiros para implementar outros algoritmos, caso sua necessidade não seja atendida pelos algoritmos que são oferecidos out-of-box. Você pode também desenvolver seu próprio algoritimo de Data Mining utilizando programação .NET.

Data Mining no Excel 2007

Os algoritmos citados acima são oferecidos pelo Analysis Services e podem ser utilizados em seus cubos, ou até em modelos de mining acessando dados em um banco de dados relacional. Isto todos já sabem. O que algumas pessoas não sabem ainda é que toda a inteligência do Analysis Services pode ser consumida através de APIs, ou a partir do Microsoft Office. Para esta segunda finalidade, foi desenvolvido um add-in de Data Mining para o Microsoft Excel que permite utilizar os recursos de análise de dados do Analysis Services em dados de tabelas do Excel. Isto mesmo, seus dados nem precisam estar em um SQL Server. Vamos ver como isto funciona.

O Add-in de Data Mining para o Microsoft Office Excel 2007 está disponível em https://www.microsoft.com/sql/technologies/dm/addins.mspx. Já de antemão, lhe convido a instalar o Add-In e navegar pelos webcasts presentes neste mesmo site. Ele dá exemplos da utilização e mostra como funciona esta ferramenta (que na verdade é composta de três add-ins: dois para o Excel e um para o Visio).

Tendo instalado o Add-In, você vai perceber que duas Ribons novas são adicionadas: uma delas chamada Data Mining, que permite trabalhar com modelos de mining presentes em um Analysis Server, e uma outra chamada Analyse, que só fica visível quando você seleciona uma tabela dentro do Excel.

image

Para utilizar os algoritmos de data mining em uma tabela de dados do Excel, basta selecionar a tabela e clicar no botão do algoritmo apropriado.

Um exemplo rápido

A planilha de exemplo utiliza dados no cenário do banco de dados AdventureWorks, que faz parte dos samples do SQL Server 2005. AdventureWorks é uma empresa fictícia de vendas de bicicletas e acessórios. A tab SourceData da planilha de exemplo descreve o perfil de potenciais clientes, com informações de renda anual, estado civil, idade e sexo entre outros, e no final diz se este cliente adquiriu uma bicicleta ou não (na coluna BikeBuyer). A idéia do exemplo é mapearmos o perfil de cliente que compra uma bicicleta, para que possamos fazer uma mala direta direcionada a clientes com o mesmo perfil. Para fazer esta análise utilizando a planilha de exemplo do Add-in, siga os seguintes passos:

1) Após ter aberto a planilha (presente em Iniciar-> Programas -> Microsoft SQL Server 2005 DM Add-ins), clique na Sheet SourceData

2) Selecione a tabela com dados de exemplo. Perceba que ao selecionar, o ribon "Analyze" fica disponível. Clique no botão "Analyze Key Influencers". Um assistente será iniciado

3) É iniciado um assistente. Este assistente coleta informações sobre as colunas que devem ser utilizadas por parte desta análise e qual é o atributo que devemos analisar.

4) Em Column Selection, selecione BikeBuyer. Este é o atributo sobre o qual será feita a análise de influência, ou seja, o que tem de comum os clientes que tem BikeBuyer = Yes e o que tem em comum os clientes que tem BikeBuyer = No.

image

5) Clique em Choose columns to be used for Analysis. Aqui você poderá escolher todos os atributos que serão utilizados na análise. O campo ID não é relevante para análise, assim como nosso RG ou CPF não determina se você tem o perfil de uma pessoa que compraria uma bicicleta ou não. Portanto, vamos remover este atributo e manter os demais

image

6) Clique em Ok e depois em Run.

Neste instante, o add-in passa os dados da tabela do Excel para o Analysis Services, que aplica o algoritmo de Data Mining mais apropriado aos dados. Após a conclusão, o add-in exibe já no Excel o resultado da análise. Perceba que pessoas que não tem carro tem maior chance de comprar uma bicicleta, ssim como as que tem entre 36 e 46 anos. Já uma pessoa que tem 2 carros e 64 anos ou mais, baseando-se nos dados de prospecto que temos, não compraria uma bicicleta.

image 

O add-in vai muito além disto, este é apenas um exemplo rápido e superficial. Lembre-se ainda que estes algoritmos podem ser consumidos a partir de uma aplicação .Net, o que significa que esta funcionalidade pode ser embutida dentro da sua aplicação. A partir daí, não existem mais limites. O principal desafio ao fazer Data Mining é o entendimento de negócio. É preciso saber qual a necessidade específica que se tem e como melhor utilizar seus dados para ter o resultado desejado.

Como sempre, fique a vontade para utilizar a área de comentários para postar suas dúvidas.