Conceitos de mineração de dados (Analysis Services – Mineração de Dados)
A mineração de dados é o processo de descoberta de informações acionáveis em grandes conjuntos de dados. A mineração de dados usa análise matemática para derivar padrões e tendências que existem nos dados. Normalmente, esses padrões não podem ser descobertos com a exploração de dados tradicional pelo fato de as relações serem muito complexas ou por haver muitos dados.
Esses padrões e tendências podem ser coletados e definidos como um modelo de mineração de dados. Os modelos de mineração podem ser se aplicados a cenários de negócios específicos, como:
Previsão de vendas
Direcionamento de correspondências a clientes específicos
Determinação de quais produtos provavelmente serão vendidos juntos
Localização de seqüências na ordem em que os clientes adicionam os produtos a um carrinho de compras
A criação de um modelo de mineração representa apenas uma parte de um processo maior que inclui desde perguntas sobre dados e criação de um modelo até respostas para as perguntas feitas e implantação do modelo em um ambiente de trabalho. Esse processo pode ser definido usando as seis etapas básicas a seguir:
Definindo o problema
Preparando dados
Explorando dados
Criando modelos
Explorando e validando modelos
Implantando e atualizando modelos
O diagrama a seguir descreve as relações entre cada etapa do processo e as tecnologias no MicrosoftSQL Server 2008 que você pode usar para concluir cada etapa.
Apesar de o processo ilustrado no diagrama ser circular, cada etapa não o leva necessariamente para próxima. A criação de um modelo de mineração de dados é um processo dinâmico e interativo. Depois de explorar os dados, você pode descobrir que eles são insuficientes para criar modelos de mineração apropriados e que você terá, portanto, que obter mais dados. Ou você pode criar vários modelos e, depois, perceber que os modelos não respondem adequadamente o problema definido e que você deverá redefinir o problema. Talvez seja necessário atualizar os modelos depois de eles serem implantados, pois haverá mais dados disponíveis. Cada etapa do processo pode precisar ser repetida muitas vezes para criar um bom modelo.
O SQL Server 2008 fornece um ambiente integrado para a criação e manipulação dos modelos de mineração de dados, chamado Business Intelligence Development Studio. Esse ambiente inclui algoritmos de mineração de dados e ferramentas que facilitam a criação de uma solução abrangente para diversos projetos. Para obter mais informações sobre como usar o BI Development Studio, consulte Desenvolvendo e implementando com o Business Intelligence Development Studio.
Depois de criar uma solução de mineração de dados, poderá atualizá-la e pesquisá-la usando o SQL Server Management Studio. Para obter mais informações, consulte Gerenciando estruturas e modelos de mineração de dados.
Para obter um exemplo de como as ferramentas do SQL Server podem ser aplicadas a um cenário de negócios, consulte Tutorial de mineração de dados básico.
Definindo o problema
A primeira etapa do processo de mineração de dados, como destacado no diagrama a seguir, é definir claramente o problema nos negócios e considerar formas de fornecer respostas para ele.
Essa etapa inclui a análise dos requisitos de negócio, a definição do escopo do problema, a definição das métricas usadas para avaliar o modelo e, por fim, a definição de objetivos específicos para o projeto de mineração de dados. Essas tarefas podem ser traduzidas em perguntas, como:
O que você deseja? Quais tipos de relações está tentando localizar?
O problema que você está tentando solucionar se reflete nas diretivas e nos processos da empresa?
Você deseja fazer previsões com o modelo de mineração de dados ou apenas identificar padrões e associações interessantes?
Qual atributo do conjunto de dados você deseja prever?
Como as colunas são relacionadas? Se houver várias tabelas, como elas estão relacionadas?
Como os dados são distribuídos? Os dados são sazonais? Os dados representam de forma precisa os processos da empresa?
Para responder essas perguntas, talvez seja necessário realizar um estudo da disponibilidade de dados para investigar as necessidades dos usuários da empresa com relação aos dados disponíveis. Se os dados não forem suficientes para suprir as necessidades dos usuários, talvez você tenha que redefinir o projeto.
Também é necessário considerar a forma como os resultados do modelo podem ser incorporados em KPIs (indicadores chave de desempenho) usados para avaliar o progresso dos negócios.
Preparando dados
A segunda etapa do processo de mineração de dados, como destacado no diagrama a seguir, é consolidar e limpar os dados identificados na etapa Definindo o problema.
Os dados podem estar espalhados pela empresa e armazenados em diferentes formatos ou podem conter inconsistência, como entradas ausentes ou incorretas. Por exemplo, os dados podem mostrar que um cliente comprou um produto antes desse produto ser efetivamente colocado a venda no mercado ou que o cliente faz compras regularmente em uma loja localizada a 3.000 quilômetros da casa dele.
A limpeza de dados não envolve apenas a remoção de dados incorretos, mas também a localização de correlações ocultas nos dados, a identificação de fontes de dados mais precisas e a determinação de quais colunas são mais apropriadas para a análise. Por exemplo, você deveria usar a data de envio ou a data de pedido? O melhor influenciador de vendas é a quantidade, o preço total ou o preço com desconto? Dados incompletos, incorretos e entradas que parecem independentes, mas que são muito relacionadas, podem influenciar os resultados do modelo de formas inesperadas. Portanto, antes de iniciar a criação de modelos de mineração, você deve identificar esses problemas e determinar como solucioná-los.
Normalmente, você trabalha com conjuntos de dados muito grandes e não pode analisar cada transação. Portanto, é preciso usar alguma forma de automação, como no Integration Services, para explorar os dados e localizar inconsistências. O MicrosoftSQL Server 2008 Integration Services (SSIS) conta com todas as ferramentas necessárias para realizar essa etapa, incluindo recursos de transformação para automatizar a limpeza e a consolidação dos dados. Para obter mais informações, consulte Integration Services no Business Intelligence Development Studio.
É importante saber que os dados usados na mineração de dados não precisam estar armazenados em um cubo OLAP (processamento analítico online) nem mesmo em um banco de dados relacional, apesar de ambos poderem ser usados como fontes de dados. Você pode conduzir a mineração de dados usando qualquer fonte de dados definida como uma fonte de dados do Analysis Services. Isso inclui arquivos de texto, pasta de trabalho do Excel e dados de outros provedores externos. Para obter mais informações, consulte Definindo fontes de dados (Analysis Services).
Explorando dados
A terceira etapa do processo de mineração de dados, como destacado no diagrama a seguir, é explorar os dados preparados.
Você deve compreender os dados para tomar decisões apropriadas ao criar os modelos de mineração. As técnicas de exploração incluem cálculos dos valores máximos e mínimos, cálculos das médias e dos desvios padrões e análise da distribuição dos dados. Por exemplo, ao analisar os valores máximos, mínimos e médios, você pode determinar que os dados não são representativos para seus clientes ou processos de negócio e que você deve obter mais dados equilibrados ou revisar as suposições que determinam suas expectativas. Os desvios padrão e outros valores de distribuição podem fornecer informações útil sobre a estabilidade e precisão dos resultados. Um desvio padrão muito grande indica que incluir mais dados pode ser útil para melhorar o modelo. Os dados que desviam muito de uma distribuição padrão podem estar distorcidos ou representar uma imagem precisa do problema real, dificultando, porém, o ajuste de um modelo aos dados.
Ao explorar os dados levando em consideração o seu conhecimento do problema dos negócios, é possível decidir se o conjunto contém dados imperfeitos. Com isso, você poderá criar uma estratégia para solucionar os problemas ou compreender ainda mais os comportamentos típicos na sua empresa.
O Designer de Exibição da Fonte de Dados do BI Development Studio contém várias ferramentas que podem ser usadas para explorar dados. Para obter mais informações, consulte Projetando exibições da fonte de dados (Analysis Services) ou Explorando dados em uma exibição da fonte de dados (Analysis Services).
Além disso, ao criar um modelo, o Analysis Services cria automaticamente resumos estatísticos de dados do modelo, que podem ser consultados para uso em relatórios ou para análises detalhadas. Para obter mais informações, consulte Consultando modelos de mineração de dados (Analysis Services - Mineração de dados).
Criando modelos
A quarta etapa do processo de mineração de dados, como destacado no diagrama a seguir, é criar o modelo ou modelos de mineração. Você usará o conhecimento obtido na etapa Explorando dados para ajudá-lo a definir e criar os modelos.
Você define quais dados deseja usar ao criar uma estrutura de mineração. A estrutura de mineração define a origem dos dados, mas não contém nenhum dado até que seja processada. Ao processar a estrutura de mineração, o Analysis Services gera agregados e outras informações estatísticas que podem ser usadas para análise. Essas informações podem ser usadas por qualquer modelo de mineração com base na estrutura. Para obter mais informações sobre como as estruturas de mineração estão relacionadas aos modelos de mineração, consulte Arquitetura lógica (Analysis Services – Mineração de Dados).
Antes do processamento, o modelo de mineração de dados é apenas um contêiner que especifica as colunas usadas para entrada, o atributo que você está prevendo e os parâmetros que indicam ao algoritmo como os dados devem ser processados. O processamento de um modelo também é chamado de treinamento. Treinamento refere-se ao processo de aplicação de um algoritmo matemático específico aos dados na estrutura com a finalidade de extrair padrões. Os padrões encontrados no processo de treinamento dependem da seleção dos dados de treinamento, do algoritmo escolhido e de como você configurou o algoritmo. O SQL Server 2008 contém muitos algoritmos diferentes, cada um indicado para um tipo de tarefa e com a finalidade de criar um tipo diferente de modelo. Para obter uma lista dos algoritmos fornecidos no SQL Server 2008, consulte Algoritmos de mineração de dados (Analysis Services – Mineração de Dados).
Você também pode usar parâmetros para ajustar cada algoritmo e aplicar filtros aos dados de treinamento para usar apenas um subconjunto de dados, criando diferentes resultados. Depois de passar os dados pelo modelo, o objeto do modelo de mineração conterá resumos e padrões que poderão ser consultados ou usados para previsão.
É possível definir um novo modelo usando o Assistente de Mineração de Dados do BI Development Studio ou a linguagem DMX (Data Mining Extensions). Para obter mais informações sobre como usar o Assistente de Mineração de Dados, consulte Assistente de Mineração de Dados (Analysis Services - Mineração de dados). Para mais informações sobre como usar DMX, consulte Referência DMX (Data Mining Extensions).
É importante lembrar-se de que sempre que os dados mudarem, será necessário atualizar a estrutura e o modelo de mineração. Quando você atualiza uma estrutura de mineração reprocessando-a, o Analysis Services recupera dados da origem, incluindo quaisquer dados novos caso a origem seja atualizada dinamicamente, e repopula a estrutura de mineração. Se você tiver modelos com base na estrutura, poderá optar pela atualização dos modelos com base na estrutura, o que significa que eles serão retreinados nos novos dados, ou poderá manter o modelo como está. Para obter mais informações, consulte Processando objetos de mineração de dados.
Explorando e validando modelos
A quinta etapa do processo de mineração de dados, como destacado no diagrama a seguir, é explorar os modelos de mineração criados e testar a eficiência deles.
Antes de implantar um modelo em um ambiente de produção, você provavelmente o testará para avaliar o desempenho. Além disso, ao criar um modelo, você normalmente cria vários modelos com diferentes configurações e os testa para verificar qual deles gera os melhores resultados para seu problema e seus dados.
O Analysis Services fornece ferramentas que o ajudam a separar seus dados em conjuntos de dados de teste e de treinamento, de forma que você possa avaliar com precisão o desempenho de todos os modelos nos mesmos dados. Você usa o conjunto de dados de treinamento para criar um modelo e o conjunto de dados de teste para testar a precisão do modelo ao criar consultas de previsão. No SQL Server 2008 Analysis Services, esse particionamento pode ser feita automaticamente ao criar o modelo de mineração de dados. Para obter mais informações, consulte Validando modelos de mineração de dados [Analysis Services - Mineração de Dados].
É possível explorar as tendências e os padrões que os algoritmos descobrem usando os visualizações no Designer de Mineração de Dados do BI Development Studio. Para obter mais informações, consulte Exibindo um modelo de mineração de dados. Você também pode testar como os modelos criam previsões usando ferramentas do designer, como o gráfico de comparação de precisão e a matriz de classificação. Para verificar se o modelo é específico para seus dados ou se pode ser usado para fazer deduções na população geral, você pode usar a técnica estatística chamada validação cruzada para criar, automaticamente, subconjuntos de dados e testar modelos em cada subconjunto. Para obter mais informações, consulte Validando modelos de mineração de dados [Analysis Services - Mineração de Dados].
Se nenhum dos modelos criados na etapa Criando modelos tiver um bom desempenho, você poderá retornar a uma etapa anterior no processo e redefinir o problema ou investigar novamente os dados no conjunto de dados original.
Implantando e atualizando modelos
A última etapa do processo de mineração de dados, como destacado no diagrama a seguir, é implantar os modelos que tiveram o melhor desempenho em um ambiente de produção.
Depois que os modelos de mineração existirem em um ambiente de produção, será possível realizar várias tarefas de acordo com suas necessidades. Estas são algumas tarefas que você poderá realizar:
Use modelos para criar previsões. Depois, essas previsões poderão ser usadas para tomar decisões nos negócios. O SQL Server fornece a linguagem DMX, que pode ser usada para criar consultas de previsão, e o Construtor de Consultas de Previsão para ajudá-lo a criar as consultas. Para obter mais informações, consulte Referência DMX (Data Mining Extensions).
Crie consultas de conteúdo para recuperar estatísticas, regras ou fórmulas do modelo. Para obter mais informações, consulte Consultando modelos de mineração de dados (Analysis Services - Mineração de dados).
Incorpore funcionalidade de mineração de dados diretamente em um aplicativo. Você pode incluir Objetos de Gerenciamento de Análise (AMO) que contém um conjunto de objetos que seu aplicativo pode usar para criar, alterar, processar e excluir estruturas e modelos de mineração. Como alternativa, você pode enviar mensagens XMLA (XML for Analysis) diretamente para uma instância do Analysis Services. Para obter mais informações, consulte Desenvolvimento (Analysis Services – Mineração de dados).
Use o Integration Services para criar um pacote no qual um modelo de mineração é usado para separar dados recebidos, de forma inteligente, em diversas tabelas. Por exemplo, se um banco de dados for atualizado continuamente com clientes potenciais, será possível usar um modelo de mineração juntamente com o Integration Services para dividir os dados recebidos entre os clientes que têm probabilidade de adquirir um produto e os que têm probabilidade em não adquirir o produto. Para obter mais informações, consulte Usos típicos do Integration Services.
Crie um relatório que permita que os usuários consultem diretamente um modelo de mineração existente. Para obter mais informações, consulte Reporting Services no Business Intelligence Development Studio.
Atualize os modelos depois da revisão e análise. As atualizações exigirão o reprocessamento dos modelos. Para obter mais informações, consulte Processando estruturas e modelos (Analysis Services – Mineração de Dados).
A atualização dinâmica dos modelos, à medida que a organização gera mais dados, e as alterações constantes para melhorar a eficiência da solução devem fazer parte da sua estratégia de implantação. Para obter mais informações, consulte Gerenciando estruturas e modelos de mineração de dados.