Medindo a precisão do modelo de mineração (Analysis Services - Mineração de dados)
O SQL Server Analysis Services fornece diversas maneiras de se determinar se seus modelos de mineração são precisos.
Você pode usar gráficos para representar visualmente a precisão de um modelo de mineração de dados: um gráfico de comparação de precisão compara a precisão das previsões de cada modelo. Um gráfico de ganho exibe o aumento teórico no ganho que é associado ao uso de cada modelo. Uma dispersão compara valores reais e valores previstos e é usada para modelos de regressão e outros modelos para prever atributos contínuos usando entradas contínuas.
Você pode usar uma matriz de classificação para tabular previsões precisas e imprecisas.
Você pode usar a validação cruzada para validar a confiança de seu modelo de mineração estatisticamente.
Para obter mais informações, consulte Ferramentas para criar gráficos de precisão de modelos (Analysis Services - Mineração de dados). Todos os tipos de gráfico descritos neste tópico também podem ser criados programaticamente usando XML/A ou AMO. Para obter mais informações sobre programação de soluções do Analysis Services, consulte Guia do desenvolvedor (Analysis Services – Data Mining).
Observação |
---|
Depois de determinar que o modelo é razoavelmente preciso, você pode avaliar os resultados do modelo no contexto dos problemas empresariais para os quais ele foi projetado. |
Este tópico explica o fluxo de trabalho geral no Business Intelligence Development Studio ou SQL Server Management Studio para medir a precisão de um modelo de mineração. Dependendo do tipo de modelo de mineração usado e do gráfico escolhido, algumas opções podem ser um pouco diferentes, não estar disponíveis ou estar configuradas por padrão, mas o processo geral é o seguinte:
Escolha um modelo ou estrutura para testar.
Escolha os dados de teste.
Opcionalmente, filtre os dados de teste.
Escolha um tipo de gráfico e abra-o no visualizador apropriado.
Opcionalmente, personalize o gráfico.
Para verificar um procedimento passo a passo, consulte Como criar um gráfico de precisão para um modelo de mineração.
Escolhendo um modelo ou estrutura
É comum criar vários modelos de mineração de dados para cada estrutura de mineração de dados e usar um algoritmo ou conjunto de parâmetros diferente para cada modelo. O Analysis Services facilita o teste de vários modelos de mineração relacionados no mesmo gráfico. Porém, você também pode selecionar apenas um modelo de mineração para saída em um gráfico de precisão.
No Business Intelligence Development Studio, você seleciona uma estrutura de mineração e depois clica na guia Gráfico de Precisão de Mineração para abrir a área de criação de gráficos de precisão. No SQL Server Management Studio, você clica com o botão direito do mouse na estrutura de mineração e depois seleciona Exibir Gráfico de Comparação de Precisão para abrir a mesma área de criação e criar qualquer tipo de gráfico de precisão.
Se você adicionar vários modelos de mineração a um gráfico, deverá escolher modelos que tenham o mesmo atributo previsível. Se você criar um gráfico de comparação de precisão, gráfico de ganho, dispersão ou matriz de classificação, poderá escolher quais modelos serão usados no gráfico na guia Seleção de Entrada. Porém, se você criar um relatório de validação cruzada, o Analysis Services analisará todos os modelos que têm o mesmo atributo previsível.
Escolhendo dados de teste
Antes de criar um gráfico de comparação de precisão, gráfico de ganho ou dispersão, você deve especificar os dados que serão usados para avaliar o modelo. Como os dados usados para avaliação afetam significativamente os resultados, o SQL Server 2008 Analysis Services fornece as seguintes opções para a especificação dos dados de teste:
Usar uma partição de validação definida como conjunto de teste quando você criou a estrutura de mineração de dados. Ao usar uma parte dos dados da estrutura de mineração, é possível medir todos os modelos da estrutura consistentemente.
Definir uma fonte de dados externa para usar como dados de teste.
Definir uma fonte de dados externa e aplicar filtros para restringir os dados a um subconjunto pertinente de casos. Ao definir um filtro, é possível selecionar dados de teste que atendam condições específicas ou contenham casos que sejam de interesse específico.
Usar um filtro aplicado aos casos de treinamento usados pelo modelo. Ao definir um filtro de modelo, é possível restringir os casos a um subconjunto de dados e também assegurar que um modelo específico sempre será avaliado usando dados similares.
Se você cria um relatório de validação cruzada no Business Intelligence Development Studio ou SQL Server Management Studio, por padrão, o Analysis Services usará a partição de validação definida para o modelo, se houver. Se nenhuma partição de validação foi definida, o Analysis Services usará o conjunto inteiro de casos de treinamento.
Se você cria um gráfico de comparação de precisão, gráfico de ganho, dispersão ou matriz de classificação no Business Intelligence Development Studio ou SQL Server Management Studio, usará a guia Seleção de Entrada na exibição Gráfico de Precisão de Mineração do Designer de Mineração de Dados para especificar os dados usados para testar os modelos de mineração. As opções são as seguintes:
Usar casos de teste do modelo de mineração
Casos de teste do modelo de mineração são obtidos dos mesmos dados existentes na estrutura de mineração, mas um filtro é aplicado ao modelo para restringir os casos usados para teste. Um filtro de modelo é um conjunto de condições que você cria e armazena junto com o modelo de mineração. Devido a condição do filtro ser salva junto com o modelo, ela é aplicada por padrão quando você treina o modelo. Quando você testa o modelo, é possível usar o filtro como ele está ou um conjunto de dados diferente para o teste e assim ignorar o filtro do modelo. Se você quiser modificar o filtro que é aplicado a um modelo de mineração, é possível modificar o filtro do modelo e então reprocessar o modelo. Como alternativa, é possível criar uma cópia do modelo e construir um filtro diferente na cópia.
Para obter mais informações sobre filtros de modelo, consulte Criando filtros para modelos de mineração (Analysis Services - Mineração de dados).
Para uma descrição de como criar um filtro em um modelo de mineração, veja Como aplicar um filtro a um modelo de mineração.
Usar casos de teste da estrutura de mineração
É possível usar esta opção para medir precisão se você definiu um conjunto de dados de teste quando criou a estrutura de mineração definindo uma porcentagem de validação ou um numero máximo de casos a serem usados para validação. A definição do conjunto de teste é armazenada junto com a estrutura. Então, o conjunto de teste pode ser usado com qualquer modelo que é baseado na estrutura.
Observação |
---|
Não é possível criar um filtro diretamente nos dados de validação da estrutura de mineração. Entretanto, se você quiser filtrar estes dados, como uma solução alternativa, é possível reutilizar a exibição original da fonte de dados como uma fonte de dados externa e aplicar um filtro à fonte de dados externa. |
Para obter mais informações, consulte Particionando dados em conjuntos de treinamento e teste (Analysis Services - Mineração de dados).
Especificar um conjunto de dados diferente
No SQL Server 2005, a única maneira de testar a precisão de um modelo de mineração era usando um conjunto de dados externo. Esta opção ainda é fornecida no SQL Server 2008, mas agora você também pode definir um filtro nos dados externos.
Para usar uma fonte de dados externa, quaisquer colunas dos dados externos que você queira utilizar como entrada devem estar mapeadas para as colunas do modelo de mineração. Você pode ignorar algumas colunas, mas o conjunto de dados externos deve conter, pelo menos, uma coluna que possa ser mapeada para uma coluna previsível no modelo de mineração. Dependendo do modelo, pode ser necessário também mapear coluna ou colunas nos dados externos que possuem os atributos requeridos para previsão.
No Designer de Mineração de Dados, utilize a guia Seleção de Entrada e a caixa de diálogo Especificar Mapeamento de Coluna para selecionar a tabela de entrada na qual os modelos serão validados. Quando você seleciona uma tabela de entrada, as colunas nas tabelas Estrutura de Mineração e Selecione Tabela(s) de Entrada são mapeadas em conjunto automaticamente. É possível modificar os mapeamentos conforme necessário clicando em uma coluna na tabela Estrutura de Mineração e arrastando-a para a tabela Selecionar Tabela(s) de Entrada. Se os dados de entrada contêm uma tabela aninhada, é possível também incluir essa tabela usando o link Selecionar tabela aninhada.
Observação |
---|
A coluna previsível sempre deve ser mapeada. Colunas que não são mapeadas são preenchidas com valores NULL para o modelo de mineração. |
Depois que você mapear as colunas correspondentes, é possível especificar opcionalmente um estado de destino para a coluna previsível. Se você deixar o estado da coluna previsível em branco, o gráfico de elevação prevê o melhor desempenho do modelo sem considerar o estado da coluna previsível. Para obter mais informações sobre as diferenças entre criar gráficos de comparação de precisão com ou sem a especificação do estado da coluna previsível, consulte Gráfico de comparação de precisão (Analysis Services - Mineração de Dados).
Você também tem a opção de criar um filtro nos dados externos. Para verificar uma descrição de como criar um filtro, consulte Como filtrar as entradas de linhas para um gráfico de precisão.
A opção Sincronizar Valores e Colunas Previsíveis coordena os atributos previsíveis na fonte externa de dados e no modelo de mineração de forma que mesmo que eles tenham um nome diferente são derivados da mesma coluna previsível durante o treino do modelo. Isto é útil quando existem duas colunas da estrutura de mineração que apontam para os mesmos dados subjacentes, mas que talvez sejam rotuladas de maneira diferente.
Se você desmarcar a caixa de verificação Sincronizar Valores e Colunas Previsíveis, poderá selecionar qualquer valor e coluna previsível validos e os resultados são plotados junto, mesmo que não façam sentido. Você pode desmarcar esta opção se estiver tentando comparar dois atributos previsíveis que não mapeiam explicitamente o mesmo conjunto de valores. Porém, você deve saber que os dois atributos podem não ser comparáveis no que se refere à precisão. Por exemplo, um modelo que diferencia segmentos de renda como Alta, Média e Baixa pode ser comparável a um modelo que agrupa renda em intervalos de 150.000 ou +, 50.000-100.000 e 10.000-50.000. Porém, antes de você desmarcar a caixa de seleção, deve verificar se os atributos são comparáveis.
Para obter mais informações:Como selecionar uma coluna previsível para um gráfico de precisão, Usando as ferramentas de mineração de dados
Filtrando dados
É possível filtrar os dados que são usados para treinar e testar um modelo de mineração de dados das seguintes maneiras:
Crie um filtro que é armazenado com o modelo.
Aplique um filtro a uma fonte de dados externa.
Ao definir um filtro, você está essencialmente criando uma cláusula WHERE nos dados de entrada. Se você estiver filtrando um conjunto de dados de entrada usado para avaliação de um modelo, a expressão do filtro será traduzida para um comando Transact-SQL e aplicada na tabela de entrada quando o gráfico for criado. Como resultado, o número de casos de teste pode ser reduzido consideravelmente.
Por outro lado, quando você aplica um filtro para um modelo de mineração, a expressão de filtro que você cria é traduzida para um comando DMX e aplicado para o modelo individual. Quando você aplica um filtro para um modelo, somente um subconjunto dos dados originais é utilizado para treinar o modelo. Se você definiu um conjunto de dados de teste quando criou a estrutura, os casos de modelo usados para treinamento incluem somente aqueles casos existentes no conjunto de treinamento da estrutura de mineração que atendem as condições do filtro. Além disso, quando você seleciona a opção Usar casos de teste de modelo de mineração, os casos de teste incluem somente aqueles existentes no conjunto de testes de estrutura de mineração que atendem as condições do filtro. As condições do filtro também se aplicam às consultas de extração de detalhes nos casos de modelo.
Porém, se você não definiu um conjunto de dados de controle, os casos de modelo usados para testar incluem todos os casos no conjunto de dados que atendem as condições do filtro.
Portanto, vários modelos, mesmo se baseados na mesma estrutura de mineração, podem ter filtros diferentes e como resultado podem usar dados de treinamento e teste diferentes. Se você selecionar a opção Usar casos de teste de modelo de mineração quando criar o gráfico de precisão, você irá perceber que o numero total de casos nos conjuntos de teste e treinamento pode variar significativamente entre os modelos sendo testados.
Observação |
---|
Ao adicionar um filtro a um modelo de mineração existente, ou alterar as condições do filtro, você deve reprocessar o modelo de mineração para ver os efeitos do filtro. |
Para rever os casos reais de treinamento que foram usados, você pode criar um consulta de conteúdo DMX, como a seguinte:
SELECT * from <model>.CASES WHERE IsTrainingCase()
ou:
SELECT * from <model>.CASES WHERE IsTestCase()
Para comparar estes casos com os casos na estrutura, crie a seguinte consulta de conteúdo DMX:
SELECT * FROM <structure>.CASES WHERE IsTestCase()
Observação |
---|
Para executar uma consulta de conteúdo nos casos de modelo, você deve ativar o Drillthrough no modelo. |
Para obter informações sobre os tipos de filtros que você pode aplicar e como são avaliadas as expressões de filtro, consulte Sintaxe de filtro de modelo e exemplos (Analysis Services - Mineração de dados).
Escolhendo um tipo de gráfico e exibindo-o
Dependendo do tipo de gráfico escolhido, você tem a possibilidade de configurar mais as opções, navegar pelo gráfico, copiar o gráfico na área de transferência e trabalhar com os dados no Excel.
Observação: os gráficos e suas definição não são salvas. Se você fechar a janela que contém um gráfico, terá que criá-lo novamente.
Gráfico de comparação de precisão
Depois de configurar as opções para os modelos e os dados de teste, clique na guia Gráfico de Comparação de Precisão para exibir os resultados. Você também pode copiar o gráfico na área de transferência ou exibir os detalhes das linhas de tendência individuais ou pontos de dados na Legenda de Mineração.
Para obter mais informações, consulte Gráfico de comparação de precisão (Analysis Services - Mineração de Dados) e Guia do gráfico de comparação de precisão (Exibição de gráfico de precisão de mineração).
Gráfico de ganho
Depois de configurar as opções para os modelos e os dados de teste, clique na guia Gráfico de Comparação de Precisão, selecione Gráfico de Ganho na lista Tipo de Gráfico para definir as opções do gráfico de ganho e, em seguida, clique em OK para exibir os resultados. Você pode usar a caixa de diálogo Configurações do Gráfico de Ganho quantas vezes desejar para testar diferentes opções de custo e exibir novamente o gráfico. O Legenda de Mineração contém informações detalhadas sobre o ganho estimado para cada modelo. Você também pode copiar o gráfico e seus conteúdo da Legenda de Mineração para a área de transferência para trabalhar com eles no Excel.
Para obter mais informações, consulte Gráfico de ganho (Analysis Services - Mineração de dados) e Caixa de diálogo Configurações do Gráfico de Ganho (Exibição do Gráfico de Precisão de Mineração).
Dispersão
Se tiver selecionado o tipo de modelo apropriado, ao clicar na guia Gráfico de Comparação de Precisão, o tipo do gráfico será definido automaticamente como Dispersão e uma dispersão será exibida. Não é possível fazer nenhuma configuração adicional. Você também pode copiar o gráfico para a área de transferência e colar o gráfico no Excel ou em outro aplicativo.
Para obter mais informações, consulte Dispersão (Analysis Services - Mineração de dados).
Matriz de classificação
Para obter uma matriz de classificação, use a guia Seleção de Entrada para selecionar os modelos e os dados de teste. Depois, clique na guia Matriz de Classificação para exibir os resultados. Os conteúdos de uma matriz de classificação são os mesmos para todos os tipos de modelo e não podem ser configurados. Você também pode copiar os dados no gráfico para a área de transferência e então trabalhar com eles no Excel.
Para obter mais informações, consulte Matriz de classificação (Analysis Services - Mineração de dados) ou Guia Matriz de Classificação (Exibição do Gráfico de Precisão de Mineração).
Relatório de Validação Cruzada
Para obter um relatório de validação cruzada, depois de selecionar uma estrutura ou modelo de mineração no Gerenciador de Soluções, clique na guia Validação Cruzada, configure as opções relevantes e depois clique em Obter Resultados para gerar o relatório. Não é possível fazer nenhuma configuração adicional. O formato do relatório de validação cruzada é o mesmo para todos os tipos de modelo e não pode ser configurado. Entretanto, o conteúdo do relatório difere dependendo do tipo de modelo que você está analisando e do tipo de dados do atributo previsível. Também é possível copiar os resultados do relatório para a área de transferência e trabalhar com os dados no Excel.
Para obter mais informações, consulte Validação cruzada (Analysis Services - Mineração de dados) ou Relatório de validação cruzada (Analysis Services - Mineração de dados).