Partilhar via


Criando uma estrutura e um modelo de rede neural (Tutorial de mineração de dados intermediário)

Para criar um modelo de mineração de dados, primeiro você deve usar o Assistente de Mineração de Dados para criar uma nova estrutura de mineração com base na nova exibição da fonte de dados. Nesta tarefa, você usará o assistente para criar uma estrutura de mineração e, ao mesmo tempo, criar um modelo de mineração associado baseado no algoritmo rede neural da Microsoft.

Como as redes neurais são extremamente flexíveis e podem analisar muitas combinações de entradas e saídas, você deve experimentar várias maneiras de processar os dados para obter os melhores resultados. Por exemplo, talvez você queira personalizar a maneira como o destino numérico para a qualidade do serviço é binado ou agrupado para atender a requisitos de negócios específicos. Para fazer isso, você adicionará uma nova coluna à estrutura de mineração que agrupa dados numéricos de uma maneira diferente e, em seguida, criará um modelo que usa a nova coluna. Você usará esses modelos de mineração para fazer alguma exploração.

Por fim, quando você tiver aprendido com o modelo de rede neural quais fatores têm o maior impacto para sua questão de negócios, você criará um modelo separado para previsão e pontuação. Você usará o algoritmo regressão logística da Microsoft, que é baseado no modelo de redes neurais, mas é otimizado para encontrar uma solução com base em entradas específicas.

Etapas

Criar a estrutura e o modelo de mineração padrão

Usar a discretização para armazenar a coluna previsível

Copie a coluna e altere o método de discretização para um modelo diferente

Criar um alias para a coluna previsível para que você possa comparar modelos

Processar todos os modelos

Criar a estrutura padrão do Call Center

  1. No Gerenciador de Soluções no SSDT (SQL Server Data Tools), clique com o botão direito do mouse em Estruturas de Mineração e selecione Nova Estrutura de Mineração.

  2. Na página Bem-vindo ao Assistente de Mineração de Dados , clique em Avançar.

  3. Na página Selecionar o Método de Definição, verifique se De banco de dados relacional ou data warehouse existente está selecionado e clique em Avançar.

  4. Na página Criar estrutura de mineração de dados , verifique se a opção Criar estrutura de mineração com um modelo de mineração está selecionada.

  5. Clique na lista suspensa para a opção Qual técnica de mineração de dados você deseja usar?, em seguida, selecione Redes Neurais da Microsoft.

    Como os modelos de regressão logística são baseados nas redes neurais, você pode reutilizar a mesma estrutura e adicionar um novo modelo de mineração.

  6. Clique em Próximo.

    A página Selecionar Exibição da Fonte de Dados é exibida.

  7. Em exibições de fonte de dados disponíveis, selecione Call Centere clique em Avançar.

  8. Na página Especificar Tipos de Tabela , marque a caixa de seleção Case ao lado da tabela FactCallCenter . Não selecione nada para DimDate. Clique em Próximo.

  9. Na página Especificar Dados de Treinamento , selecione Chave ao lado da coluna FactCallCenterID.

  10. Marque as caixas de seleção Predict e entrada.

  11. Selecione as caixas de seleção chave, entrada e Predict, conforme mostrado na tabela a seguir.

    Tabelas/colunas Chave/Entrada/Previsão
    AutomaticResponses Entrada
    Tempo Médio por Questão Entrada/previsão
    Chamadas Entrada
    DateKey Não usar
    DiaDaSemana Entrada
    FactCallCenterID Chave
    IssuesRaised Entrada
    LevelOneOperators Entrada/previsão
    Operadores de Nível Dois Entrada
    Pedidos Entrada/previsão
    ServiceGrade Entrada/previsão
    Turno Entrada
    Operadores Totais Não usar
    WageType Entrada

    Observe que várias colunas previsíveis foram selecionadas. Um dos pontos fortes do algoritmo de rede neural é que ele pode analisar todas as combinações possíveis de atributos de entrada e saída. Você não gostaria de fazer isso para um conjunto de dados grande, pois isso poderia aumentar exponencialmente o tempo de processamento.

  12. Na página Especificar Conteúdo e Tipo de Dados das Colunas , verifique se a grade contém as colunas, os tipos de conteúdo e os tipos de dados, conforme mostrado na tabela a seguir, e clique em Avançar.

    Colunas Tipo de conteúdo Tipos de dados
    AutomaticResponses Contínuo Longo
    TempoMédioPorProblema Contínuo Longo
    Chamadas Contínuo Longo
    DiaDaSemana Discreto Texto
    FactCallCenterID Chave Longo
    Questões Levantadas Contínuo Longo
    LevelOneOperators Contínuo Longo
    Operadores de Nível Dois Contínuo Longa
    Pedidos Contínuo Longa
    ServiceGrade Contínuo Duplo
    Turno Discreto Texto
    Tipo de Salário Discreto Texto
  13. Na página Criar conjunto de testes , desmarque a caixa de texto para a opção Porcentagem de dados para teste. Clique em Próximo.

  14. Na página Concluindo o Assistente , para o nome da estrutura de mineração, digite Call Center.

  15. Para o nome do modelo de mineração, digite Call Center Default NNe clique em Concluir.

    A caixa Permitir detalhamento está desabilitada porque você não pode analisar dados com modelos de rede neural.

  16. No Gerenciador de Soluções, clique com o botão direito do mouse no nome da estrutura de mineração de dados que você acabou de criar e selecione Processo.

Usar discretização para categorizar a coluna alvo

Por padrão, quando você cria um modelo de rede neural que tem um atributo previsível numérico, o algoritmo rede neural da Microsoft trata o atributo como um número contínuo. Por exemplo, o atributo ServiceGrade é um número que teoricamente varia de 0,00 (todas as chamadas são atendidas) a 1,00 (todos os chamadores desligam). Neste conjunto de dados, os valores têm a seguinte distribuição:

distribuição de distribuição de valores

Como resultado, quando você processa o modelo, as saídas podem ser agrupadas de forma diferente do esperado. Por exemplo, se você usar o clustering para identificar os melhores grupos de valores, o algoritmo dividirá os valores no ServiceGrade em intervalos como este: 0,0748051948 - 0,09716216215. Embora esse agrupamento seja matematicamente preciso, esses intervalos podem não ser tão significativos para os usuários empresariais.

Nesta etapa, para tornar o resultado mais intuitivo, você agrupará os valores numéricos de forma diferente, criando cópias da coluna de dados numéricas.

Como funciona a discretização

O Analysis Services fornece uma variedade de métodos para armazenar ou processar dados numéricos. A tabela a seguir ilustra as diferenças entre os resultados quando o atributo de saída ServiceGrade foi processado de três maneiras diferentes:

  • Tratando-o como um número contínuo.

  • Fazer com que o algoritmo use agrupamento para identificar o melhor arranjo de valores.

  • Especificando que os números sejam agrupados pelo método Áreas Iguais.

Modelo padrão (contínuo)

VALOR APOIO
Em falta 0
0.09875 120

Organizado em grupos por agrupamento

VALOR APOIO
< 0.0748051948 34
0.0748051948 - 0.09716216215 27
0.09716216215 - 0.13297297295 39
0.13297297295 - 0.167499999975 10
>= 0,1674999999975 10

Binado por áreas iguais

VALOR APOIO
< 0.07 26
0.07 - 0.00 22
0.09 - 0.11 36
>= 0,12 36

Observação

Você pode obter essas estatísticas do nó de estatísticas marginais do modelo, depois que todos os dados tiverem sido processados. Para obter mais informações sobre o nó de estatísticas marginais, consulte Conteúdo do Modelo de Mineração para Modelos de Rede Neural (Analysis Services – Mineração de Dados).

Nesta tabela, a coluna VALUE mostra como o número de ServiceGrade foi tratado. A coluna SUPPORT mostra quantos casos tinham esse valor ou que caíram nesse intervalo.

  • Usar números contínuos (padrão)

    Se você usou o método padrão, o algoritmo computaria resultados para 120 valores distintos, sendo o valor médio 0,09875. Você também pode ver o número de valores ausentes.

  • Agrupar por agrupamento

    Quando você permite que o algoritmo de Clustering da Microsoft determine o agrupamento opcional de valores, o algoritmo agruparia os valores de ServiceGrade em cinco (5) intervalos. O número de casos em cada intervalo não é distribuído uniformemente, como você pode ver na coluna de suporte.

  • Agrupar por áreas iguais

    Quando você escolhe esse método, o algoritmo força os valores em buckets de tamanho igual, o que, por sua vez, altera os limites superior e inferior de cada intervalo. Você pode especificar o número de buckets, mas deseja evitar ter dois poucos valores em qualquer bucket.

Para obter mais informações sobre opções de binning, consulte Métodos de Discretização (Mineração de Dados).

Como alternativa, em vez de usar os valores numéricos, você pode adicionar uma coluna derivada separada que classifica as notas de serviço em intervalos de destino predefinidos, como Best (ServiceGrade <= 0,05), Aceitável (0,10 > ServiceGrade > 0,05) e Poor (ServiceGrade >= 0,10).

Criar uma cópia de uma coluna e alterar o método de discretização

Você fará uma cópia da coluna de mineração que contém o atributo de destino — ServiceGrade — e alterará a maneira como os números são agrupados. Você pode criar várias cópias de qualquer coluna em uma estrutura de mineração, incluindo o atributo previsível.

Para este tutorial, você usará o método de Áreas Iguais de discretização e especificará quatro buckets. Os agrupamentos resultantes desse método são bastante próximos dos valores alvo do interesse dos seus usuários empresariais.

Para criar uma cópia personalizada de uma coluna na estrutura de mineração

  1. No Gerenciador de Soluções, clique duas vezes na estrutura de mineração que você acabou de criar.

  2. Na guia Estrutura de Mineração, clique em Adicionar uma coluna de estrutura de mineração.

  3. Na caixa de diálogo Selecionar coluna , selecione ServiceGrade na lista na coluna Origem e clique em OK.

    Uma nova coluna é adicionada à lista de colunas de estrutura de mineração. Por padrão, a nova coluna de mineração tem o mesmo nome da coluna existente, com um postfix numérico: por exemplo, ServiceGrade 1. Você pode alterar o nome desta coluna para ser mais descritivo.

    Você também especificará o método de discretização.

  4. Clique com o botão direito do mouse em ServiceGrade 1 e selecione Propriedades.

  5. Na janela Propriedades , localize a propriedade Name e altere o nome para Service Grade Binned .

  6. Uma caixa de diálogo é exibida perguntando se você deseja fazer a mesma alteração no nome de todas as colunas de modelo de mineração relacionadas. Clique em Não.

  7. Na janela Propriedades , localize a seção Tipo de Dados e expanda-a, se necessário.

  8. Altere o valor da propriedade Content de Continuous para Discretized.

    As propriedades a seguir agora estão disponíveis. Altere os valores das propriedades, conforme mostrado na tabela a seguir:

    Propriedade Valor padrão Novo valor
    DiscretizationMethod Continuous EqualAreas
    DiscretizationBucketCount Sem valor 4

    Observação

    O valor DiscretizationBucketCount padrão é, na verdade, 0, o que significa que o algoritmo determina automaticamente o número ideal de buckets. Portanto, se você quiser redefinir o valor dessa propriedade para seu padrão, digite 0.

  9. No Designer de Mineração de Dados, clique na guia Modelos de Mineração .

    Observe que quando você adiciona uma cópia de uma coluna de estrutura de mineração, o sinalizador de uso da cópia é automaticamente definido como Ignore. Normalmente, ao adicionar uma cópia de uma coluna a uma estrutura de mineração, você não usaria a cópia para análise junto com a coluna original ou o algoritmo encontrará uma correlação forte entre as duas colunas que podem obscurecer outras relações.

Adicionar um novo modelo de mineração à estrutura de mineração

Agora que você criou um novo agrupamento para o atributo de destino, precisará adicionar um novo modelo de mineração que use a coluna discreta. Quando terminar, a estrutura de mineração do CallCenter terá dois modelos de mineração:

  • O modelo de mineração, Call Center Default NN, manipula os valores de ServiceGrade como um intervalo contínuo.

  • Você criará um novo modelo de mineração, Call Center Binned NN, que usa como seus resultados de destino os valores da coluna ServiceGrade, distribuídos em quatro buckets de tamanho igual.

Para adicionar um modelo de mineração com base na nova coluna discreta

  1. No Gerenciador de Soluções, clique com o botão direito do mouse na estrutura de mineração que você acabou de criar e selecione Abrir.

  2. Clique na guia Modelos de Mineração .

  3. Clique em Criar um modelo de mineração relacionado.

  4. Na caixa de diálogo Novo Modelo de Mineração , para o nome do modelo, digite Call Center Binned NN. Na lista suspensa Nome do algoritmo , selecione Rede Neural da Microsoft.

  5. Na lista de colunas contidas no novo modelo de mineração, localize ServiceGrade e altere o uso de Predict para Ignore.

  6. Da mesma forma, localize ServiceGrade Binned e altere o uso de Ignore para Predict.

Criar um Alias para a coluna de destino

Normalmente, você não pode comparar modelos de mineração que usam atributos previsíveis diferentes. No entanto, você pode criar um alias para uma coluna de modelo de mineração. Ou seja, você pode renomear a coluna, ServiceGrade Binned, dentro do modelo de mineração para que ela tenha o mesmo nome da coluna original. Em seguida, você pode comparar diretamente esses dois modelos em um gráfico de precisão, mesmo que os dados sejam discretos de forma diferente.

Para adicionar um nome alternativo para uma coluna de estrutura de mineração em um modelo de mineração

  1. Na guia Modelos de Mineração , em Estrutura, selecione ServiceGrade Binned.

    Observe que a janela Propriedades exibe as propriedades do objeto, coluna ScalarMiningStructure.

  2. Na coluna do modelo de mineração, ServiceGrade Binned NN, clique na célula correspondente à coluna ServiceGrade Binned.

    Observe que agora a janela Propriedades exibe as propriedades do objeto, MiningModelColumn.

  3. Localize a propriedade Name e altere o valor para ServiceGrade.

  4. Localize a propriedade Description e digite alias de coluna temporária.

    A janela Propriedades deve conter as seguintes informações:

    Propriedade Valor
    Descrição Alias de coluna temporária
    ID ServiceGrade Binned
    Indicadores de modelagem
    Nome Grau de Serviço
    SourceColumn ID Nível de Serviço 1
    Uso Predizer
  5. Clique em qualquer lugar na guia Modelo de Mineração .

    A grade é atualizada para mostrar o novo alias de coluna temporária, ServiceGrade ao lado da utilização da coluna. A grade que contém a estrutura de mineração e dois modelos de mineração deve ser semelhante à seguinte:

    Estrutura Call Center Padrão NN Call Center Agrupado NN
    Rede Neural da Microsoft Rede Neural da Microsoft
    AutomaticResponses Entrada Entrada
    TempoMédioPorProblema Predizer Predizer
    Chamadas Entrada Entrada
    DiaDaSemana Entrada Entrada
    FactCallCenterID Chave Chave
    ProblemasLevantados Entrada Entrada
    LevelOneOperators Entrada Entrada
    LevelTwoOperators Entrada Entrada
    Pedidos Entrada Entrada
    ServceGrade Binned Ignorar Predict (ServiceGrade)
    ServiceGrade Predizer Ignorar
    Turno Entrada Entrada
    Total de operadores Entrada Entrada
    Tipo de Salário Entrada Entrada

Processar todos os modelos

Por fim, para garantir que os modelos criados possam ser facilmente comparados, você definirá o parâmetro de semente para os modelos padrão e binados. Definir um valor de semente garante que cada modelo comece a processar os dados do mesmo ponto.

Observação

Se você não especificar um valor numérico para o parâmetro de semente, o SQL Server Analysis Services gerará uma semente com base no nome do modelo. Como os modelos sempre têm nomes diferentes, você deve definir um valor de semente para garantir que eles processem dados na mesma ordem.

Para especificar a semente e processar os modelos

  1. Na guia Modelo de Mineração , clique com o botão direito do mouse na coluna do modelo chamado Call Center – LR e selecione Definir Parâmetros de Algoritmo.

  2. Na linha do parâmetro HOLDOUT_SEED, clique na célula vazia em Valor e digite 1. Clique em OK. Repita este passo para cada modelo associado à estrutura.

    Observação

    O valor que você escolher como semente não importa, desde que você utilize o mesmo valor para todos os modelos relacionados.

  3. No menu Modelos de Mineração , selecione Estrutura de Mineração de Processos e Todos os Modelos. Clique em Sim para implantar o projeto de mineração de dados atualizado no servidor.

  4. Na caixa de diálogo Modelo de Mineração do Processo , clique em Executar.

  5. Clique em Fechar para fechar a caixa de diálogo Progresso do Processo e clique em Fechar novamente na caixa de diálogo Modelo de Mineração de Processo .

Agora que você criou os dois modelos de mineração relacionados, explorará os dados para descobrir relações nos dados.

Próxima tarefa da lição

Explorando o modelo de call center (Tutorial de mineração de dados intermediário)

Consulte Também

Estruturas de mineração (Analysis Services – Mineração de dados)