Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Lidar corretamente com valores ausentes é uma parte importante da modelagem eficaz. Esta seção explica quais são os valores ausentes e descreve os recursos fornecidos no Analysis Services para trabalhar com valores ausentes ao criar estruturas de mineração de dados e modelos de mineração.
Definição de valores ausentes na mineração de dados
Um valor ausente pode significar várias coisas diferentes. Talvez o campo não fosse aplicável, o evento não ocorreu ou os dados não estavam disponíveis. Pode ser que a pessoa que inseriu os dados não sabia o valor certo ou não se importava se um campo não estava preenchido.
No entanto, há muitos cenários de mineração de dados nos quais valores ausentes fornecem informações importantes. O significado dos valores ausentes depende em grande parte do contexto. Por exemplo, um valor ausente para a data em uma lista de faturas tem um significado substancialmente diferente da falta de uma data na coluna que indica uma data de contratação do funcionário. Em geral, o Analysis Services trata valores ausentes como informativos e ajusta as probabilidades para incorporar os valores ausentes em seus cálculos. Ao fazer isso, você pode garantir que os modelos sejam equilibrados e não atribuam peso excessivo aos casos existentes.
Portanto, o Analysis Services fornece dois mecanismos distintamente diferentes para gerenciar e calcular valores ausentes. O primeiro método controla a manipulação de valores nulos no nível da estrutura de mineração. O segundo método difere na implementação de cada algoritmo, mas geralmente define como valores ausentes são processados e contados em modelos que permitem valores nulos.
Especificando o tratamento de nulos
Na fonte de dados, os valores ausentes podem ser representados de várias maneiras: como nulos, como células vazias em uma planilha, como o valor N/A ou algum outro código, ou como um valor artificial, como 9999. No entanto, para fins de mineração de dados, somente os nulos são considerados valores ausentes. Se seus dados contiverem valores de espaço reservado em vez de nulos, eles poderão afetar os resultados do modelo, portanto, você deve substituí-los por valores nulos ou inferir valores corretos, se possível. Há uma variedade de ferramentas que você pode usar para inferir e preencher valores apropriados, como a transformação Pesquisa ou a tarefa Data Profiler no SQL Server Integration Services ou a ferramenta Preenchimento por Exemplo fornecida no Add-Ins de Mineração de Dados para Excel.
Se a tarefa que você está modelando especificar que uma coluna nunca deve ter valores ausentes, você deve aplicar o NOT_NULL sinalizador de modelagem à coluna quando definir a estrutura de mineração. Esse sinalizador indica que o processamento deve falhar se um caso não tiver um valor apropriado. Se esse erro ocorrer ao processar um modelo, você poderá registrar o erro em log e executar etapas para corrigir os dados fornecidos para o modelo.
Cálculo do estado faltante
Para o algoritmo de mineração de dados, os valores ausentes são informativos. No caso de tabelas, Missing é um estado válido como qualquer outro. Além disso, um modelo de mineração de dados pode usar outros valores para prever se um valor está ausente. Em outras palavras, o fato de um valor estar ausente não é um erro.
Quando você cria um modelo de mineração, um Missing estado é adicionado automaticamente ao modelo para todas as colunas discretas. Por exemplo, se a coluna de entrada [Gênero] contiver dois valores possíveis, Masculino e Feminino, um terceiro valor será adicionado automaticamente para representar o Missing valor e o histograma que mostra a distribuição de todos os valores para a coluna sempre incluirá uma contagem dos casos com Missing valores. Se a coluna Gênero não tiver valores ausentes, o histograma mostrará que o estado de valores ausentes é encontrado em 0 casos.
A lógica para incluir o Missing estado por padrão fica clara quando você considera que seus dados podem não ter exemplos de todos os valores possíveis e você não deseja que o modelo exclua a possibilidade apenas porque não havia nenhum exemplo nos dados. Por exemplo, se os dados de vendas de uma loja mostrassem que todas as clientes que compraram um determinado produto eram mulheres, não seria ideal criar um modelo que sugerisse que somente mulheres poderiam comprar o produto. Em vez disso, o Analysis Services adiciona um espaço reservado para o valor extra desconhecido, chamado Missing, como uma forma de acomodar possíveis outros estados.
Por exemplo, a tabela a seguir mostra a distribuição de valores para o nó "Todos" no modelo de árvore de decisão criado para o tutorial denominado "Bike Buyer". No cenário de exemplo, a coluna [Bike Buyer] é o atributo previsível, em que 1 indica "Sim" e 0 indica "Não".
| Valor | Ocorrências |
|---|---|
| 0 | 9296 |
| 1 | 9098 |
| Em falta | 0 |
Essa distribuição mostra que cerca de metade dos clientes compraram uma bicicleta e metade não comprou. Esse conjunto de dados específico é muito limpo; portanto, cada caso tem um valor na coluna [Comprador de Bicicleta] e a contagem de Missing valores é 0. No entanto, se qualquer caso tivesse um valor nulo no campo [Bike Buyer], o Analysis Services contaria essa linha como um caso com um Missing valor.
Se a entrada for uma coluna contínua, o modelo tabula dois estados possíveis para o atributo: Existing e Missing. Em outras palavras, a coluna contém um valor de algum tipo de dados numérico ou não contém nenhum valor. Para casos que têm um valor, o modelo calcula média, desvio padrão e outras estatísticas significativas. Para casos que não têm valor, o modelo fornece uma contagem dos Missing valores e ajusta as previsões adequadamente. O método para ajustar a previsão difere dependendo do algoritmo e é descrito na seção a seguir.
Observação
Para atributos em uma tabela aninhada, os valores ausentes não são informativos. Por exemplo, se um cliente não comprou um produto, a tabela Produtos aninhada não teria uma linha correspondente a esse produto e o modelo de mineração não criaria um atributo para o produto ausente. No entanto, se você estiver interessado em clientes que não compraram determinados produtos, poderá criar um modelo que seja filtrado pela ausência desses produtos na tabela aninhada, utilizando uma instrução NOT EXISTS no filtro do modelo. Para obter mais informações, consulte Aplicar um filtro a um modelo de mineração.
Ajustando a probabilidade para estados ausentes
Além de contar valores, o Analysis Services calcula a probabilidade de qualquer valor no conjunto de dados. O mesmo é verdadeiro para o Missing valor. Por exemplo, a tabela a seguir mostra as probabilidades para os casos no exemplo anterior:
| Valor | Ocorrências | Probabilidade |
|---|---|---|
| 0 | 9296 | 50,55% |
| 1 | 9098 | 49.42% |
| Em falta | 0 | 0,03% |
Pode parecer estranho que a probabilidade do Missing valor seja calculada como 0,03%, quando o número de casos for 0. Na verdade, esse comportamento é por design e representa um ajuste que permite que o modelo manipule valores desconhecidos normalmente.
Em geral, a probabilidade é calculada como os casos favoráveis divididos por todos os casos possíveis. Neste exemplo, o algoritmo calcula a soma dos casos que atendem a uma condição específica ([Comprador de Bicicleta] = 1 ou [Comprador de Bicicleta] = 0) e divide esse número pela contagem total de linhas. No entanto, para considerar os Missing casos, 1 é adicionado ao número de todos os casos possíveis. Como resultado, a probabilidade para o caso desconhecido não é mais zero, mas um número muito pequeno, indicando que o estado é meramente improvável, não impossível.
A adição do valor pequeno Missing não altera o resultado do preditor; no entanto, ele permite uma melhor modelagem em cenários em que os dados históricos não incluem todos os resultados possíveis.
Observação
Os provedores de mineração de dados diferem na maneira como lidam com valores ausentes. Por exemplo, alguns provedores supõem que dados ausentes em uma coluna aninhada sejam uma representação esparsa, mas que dados faltantes em uma coluna não aninhada sejam ausentes de forma aleatória.
Se você tiver certeza de que todos os resultados são especificados em seus dados e deseja impedir que as probabilidades sejam ajustadas, defina o sinalizador de modelagem NOT_NULL na coluna na estrutura de mineração.
Observação
Cada algoritmo, incluindo algoritmos personalizados que você pode ter obtido de um plug-in de terceiros, pode lidar com valores ausentes de forma diferente.
Tratamento especial de valores ausentes em modelos de árvore de decisão
O algoritmo Árvores de Decisão da Microsoft calcula as probabilidades de valores ausentes de forma diferente da de outros algoritmos. Em vez de apenas adicionar 1 ao número total de casos, o algoritmo de árvores de decisão ajusta para o estado de Missing usando uma fórmula diferente.
Em um modelo de árvore de decisão, a probabilidade do Missing estado é calculada da seguinte maneira:
ProbabilidadeDoEstado = (ProbabilidadePréviaDoNodo)* (SuporteDoEstado + 1) / (SuporteDoNodo + TotalDeEstados)
Além disso, no SSAS (SQL Server 2014 Analysis Services), o algoritmo Árvores de Decisão fornece um ajuste adicional que ajuda o algoritmo a compensar a presença de filtros no modelo, o que pode resultar em muitos estados a serem excluídos durante o treinamento.
No SQL Server 2014, se um estado estiver presente durante o treinamento, mas simplesmente não tiver nenhum suporte em um determinado nó, o ajuste padrão é feito. No entanto, se um estado nunca for encontrado durante o treinamento, o algoritmo definirá a probabilidade como exatamente zero. Esse ajuste se aplica não apenas ao Missing estado, mas também a outros estados que existem nos dados de treinamento, mas não têm suporte como resultado da filtragem de modelo.
Esse ajuste adicional resulta na seguinte fórmula:
StateProbability = 0.0 se esse estado tiver 0 suporte no conjunto de treinamento
SENÃO ProbabilidadeEstado = (ProbabilidadePrioridaNodo)* (SuporteEstado + 1) / (SuporteNodo + TotalEstadosComSuporteNãoZero)
O ajuste visa garantir a estabilidade da árvore.
Tarefas Relacionadas
Os tópicos a seguir fornecem mais informações sobre como lidar com valores ausentes.
| Tarefas | Links |
|---|---|
| Adicionar sinalizadores a colunas de modelo individuais para controlar o tratamento de valores ausentes | Exibir ou alterar sinalizadores de modelagem (mineração de dados) |
| Definir propriedades em um modelo de mineração para controlar a manipulação de valores ausentes | Alterar as propriedades de um modelo de mineração |
| Saiba como especificar sinalizadores de modelagem no DMX | Sinalizadores de modelagem (DMX) |
| Altere a forma como a estrutura de mineração lida com valores ausentes | Alterar as propriedades de uma estrutura de mineração |
Consulte Também
Conteúdo do modelo de mineração (Analysis Services – Mineração de dados)
Sinalizadores de modelagem (mineração de dados)