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. Nessa tarefa, você usará o assistente para criar uma estrutura de mineração e, ao mesmo tempo, 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 testar várias maneiras de processar os dados para obter os melhores resultados. Por exemplo, você pode desejar personalizar a maneira como os dados são guardados ou agrupados para destinar 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.
Finalmente, quando você souber, com base no modelo de rede neural, quais fatores têm impacto maior para sua questão comercial, construirá um modelo separado para previsão e marcação. Você usará o algoritmo de Regressão Logística Microsoft que é baseado no modelo de redes neurais, mas é otimizado para localizar uma solução baseada em entradas específicas.
Criando a estrutura de call center padrão
Para criar a estrutura e o modelo de mineração de rede neural padrão
No Gerenciador de Soluções do Business Intelligence Development Studio, clique com o botão direito do mouse em Estruturas de Mineração e selecione Nova Estrutura de Mineração.
Na página Bem-vindo ao Assistente de Mineração de Dados, clique em Avançar.
Na página Selecionar Método de Definição, verifique se No banco de dados ou no data warehouse relacional existente está selecionado e clique em Avançar.
Na página Criar a Estrutura de Mineração de Dados, verifique se a opção Criar estrutura de mineração com um modelo de mineração está selecionada.
Clique na lista suspensa da opção Qual técnica de mineração de dados você quer usar? e selecione Redes Neurais da Microsoft.
Como os modelos de regressão logística se baseiam em redes neurais, você pode reutilizar a mesma estrutura e adicionar um novo modelo de mineração.
Clique em Avançar.
A página Selecionar Exibição da Fonte de Dados é exibida.
Selecione Exibições da fonte de dados disponíveis, Call Center e clique em Avançar.
Na página Especificar Tipos de Tabela , marque a caixa de seleção Caso próximo à tabela FactCallCenter. Clique em Avançar.
Na página Especificar os Dados de Treinamento, selecione Chave ao lado da coluna FactCallCenterID.
Marque as caixas de seleção Prever e Entrada.
Marque as caixas de seleção Chave, Entrada e Prever como mostrado na tabela seguinte:
Tabelas/Colunas
Chave/Entrada/Prever
AutomaticResponses
Entrada
AverageTimePerIssue
Entrada/Prever
Chamadas
Entrada
DateKey
Não usar
DayOfWeek
Entrada
FactCallCenterID
Key
IssuesRaised
Entrada
LevelOneOperators
Entrada/Prever
LevelTwoOperators
Entrada
Orders
Entrada/Prever
ServiceGrade
Entrada/Prever
Deslocamento
Entrada
TotalOperators
Não usar
WageType
Entrada
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 mostrados na tabela a seguir e clique em Avançar.
Colunas
Tipo de conteúdo
Tipos de dados
AutomaticResponses
Continuous
Long
AverageTimePerIssue
Contínuo
Long
Chamadas
Contínuo
Long
DayOfWeek
Distintos
Texto
FactCallCenterID
Key
Longo
IssuesRaised
Contínuo
Longo
LevelOneOperators
Continuous
Long
LevelTwoOperators
Continuous
Long
Orders
Contínuo
Long
ServiceGrade
Contínuo
Duplo
Deslocamento
Discreto
Text
WageType
Discreto
Texto
Na página Criar conjunto de teste, desmarque a caixa de texto da opção Percentual de dados para teste. Clique em Avançar.
Na página Concluindo o Assistente, como o Nome da estrutura de mineração, digite Call Center.
Em Nome do modelo de mineração, digite MN Padrão do Call Center e clique em Concluir.
A caixa Permitir detalhamento está desabilitada porque você não pode detalhar para dados com modelos de rede neural.
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 Processar.
Entendendo a diferenciação
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:
Em virtude disso, quando você processa o modelo, as saídas podem ser agrupadas de modo diferente do esperado. Por exemplo, o modelo padrão, que usa clustering para localizar grupos de valores, divide ServiceGrade em intervalos como este: 0.0748051948 - 0.09716216215. Embora esse agrupamento seja matematicamente preciso, esse tipo de intervalo pode não ser significativo para usuários empresariais. Para agrupar os valores numéricos de maneira diferente, você pode criar uma cópia ou várias cópias da coluna de dados numéricos e especificar como o algoritmo de mineração de dados deve processar os valores. Por exemplo, você pode especificar que o algoritmo divida os valores em não mais do que cinco compartimentos.
O Analysis Services fornece vários métodos para guardar 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
Fazendo com que o algoritmo discretize o valor pelo melhor método possível, o clustering
Especificando que os números sejam guardados pelo método Áreas Iguais
Modelo padrão (contínuo) |
Guardado por clustering |
Guardado por áreas iguais |
---|---|---|
VALUESUPPORT
Ausente0
0.09875120
|
VALUESUPPORT
< 0.074805194834
0.0748051948 - 0.0971621621527
0.09716216215 - 0.1329729729539
0.13297297295 - 0.16749999997510
>= 0.16749999997510
|
VALUESUPPORT
< 0.0726
0.07 - 0.0022
0.09 - 0.1136
>= 0.1236
|
Nessa tabela, a coluna VALUE mostra como o número contínuo foi tratado, e a coluna SUPPORT mostra quantas linhas foram encontradas com cada valor, intervalo ou tipo de valor. Para obter mais informações sobre as opções de guardar, consulte Métodos de discretização (mineração de dados).
Observação |
---|
É possível obter essas estatísticas do nó de estatísticas marginais do modelo, depois do processamento de todos os dados. 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). |
Alternativamente, em vez de usar os valores numéricos, você pode adicionar uma coluna derivada separada que classifica os níveis de serviço em intervalos de destino predefinidos, como Melhor (ServiceGrade <= 0,05), Aceitável (0,10 > ServiceGrade > 0,05) e Ruim (ServiceGrade >= 0,10).
Criando uma cópia de uma coluna e alterando o método de diferenciação
Na mineração de dados do Analysis Services, você pode alterar facilmente a maneira como os dados numéricos são guardados dentro de uma estrutura de mineração adicionando uma cópia da coluna que contém os dados de destino e alterando o método de diferenciação.
O procedimento a seguir descreve como fazer uma cópia da coluna de mineração que contém o atributo de destino, ServiceGrade. É possível criar várias cópias de qualquer coluna em uma estrutura de mineração, inclusive do atributo previsível.
Em seguida, você personaliza o agrupamento dos valores numéricos na coluna copiada para reduzir a complexidade dos agrupamentos. Para este tutorial, você usará o método de Áreas Iguais de diferenciação e especificará quatro buckets. Os agrupamentos resultantes desse método são razoavelmente próximos dos valores de destino de interesse de seus usuários empresariais.
Observação |
---|
Durante a exploração inicial de dados, você também pode fazer experiências com vários métodos de diferenciação ou tentar agrupar os dados primeiro. |
Para criar uma cópia personalizada de uma coluna na estrutura de mineração
No Gerenciador de Soluções, clique duas vezes na estrutura de mineração que você acabou de criar.
Na guia Estrutura de Mineração, clique em Adicionar uma coluna de estrutura de mineração.
Na caixa de diálogo Selecionar coluna, selecione ServiceGrade na lista em Coluna de origem e clique em OK.
Uma nova coluna é adicionada à lista de colunas da estrutura de mineração. Por padrão, a nova coluna de mineração tem o mesmo nome que a coluna existente, com uma pós-fixação numérica: por exemplo, ServiceGrade 1. É possível alterar o nome dessa coluna para que seja mais descritivo.
Você também especificará o método de diferenciação.
Clique com o botão direito do mouse em ServiceGrade 1 e selecione Propriedades.
Na janela Propriedades, localize a propriedade Nome e altere o nome para NN Guardado do Call Center.
Uma caixa de diálogo é exibida perguntando se você deseja fazer a mesma alteração no nome de todas as colunas do modelo de mineração relacionado. Clique em Não.
Na janela Propriedades, localize a seção Tipo de Dados e expanda-a se necessário.
Altere o valor da propriedade Content de Continuous para Discretized.
As propriedades a seguir estão disponíveis agora: Altere os valores das propriedades como mostrado na tabela seguinte:
Propriedade
Valor padrão
Novo valor
DiscretizationMethod
Continuous
EqualAreas
DiscretizationBucketCount
Sem valor
4
Observação O valor padrão de DiscretizationBucketCount é de fato 0, o que significa que o algoritmo determina o número ideal de buckets automaticamente. Portanto, se você quiser redefinir o valor dessa propriedade como seu padrão, digite 0.
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 da estrutura de mineração, o sinalizador de uso da cópia é definido automaticamente como Ignore. Normalmente, quando você adiciona uma cópia de uma coluna a uma estrutura de mineração, você não usa a cópia para análise junto com a coluna original ou o algoritmo localizará uma correlação forte entre as duas colunas que pode obscurecer outras relações.
Adicionando um novo modelo de mineração à estrutura de mineração
Agora que criou um novo agrupamento para o atributo de destino, você precisa adicionar um novo modelo de mineração que use a coluna de dados discretos. Ao concluir, a estrutura de mineração de CallCenter terá dois modelos de mineração:
O modelo de mineração MN Padrão do Call Center trata os valores de ServiceGrade valores como um intervalo contínuo.
O modelo de mineração MN Guardado do Call Center diferencia os valores de ServiceGrade em quatro buckets distintos.
Para adicionar um modelo de mineração baseado na nova coluna de dados discretos
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.
Clique na guia Modelos de Mineração.
Clique em Criar um modelo de mineração relacionado.
Na caixa de diálogo Novo Modelo de Mineração, em Nome do modelo, digite NM Guardado do Call Center. Na lista suspensa Nome do Algoritmo, selecione Rede Neural da Microsoft.
Na lista de colunas contidas no novo modelo de mineração, localize ServiceGrade e altere o uso de Predict para Ignore.
De maneira semelhante, localize ServiceGrade Guardado e altere o uso de Ignore para Predict.
Ordinariamente você não pode comparar modelos de mineração que usam atributos previsíveis diferentes. No entanto, no SQL Server 2008, é possível criar um alias para uma coluna do modelo de mineração. Isto é, é possível renomear a coluna ServiceGrade Guardado dentro do modelo de mineração de forma ela tenha o mesmo nome que a coluna original. Em seguida, é possível comparar diretamente esses dois modelos em um gráfico de exatidão, embora os dados sejam diferenciados de maneira diferente.
Para adicionar um alias para uma coluna da estrutura de mineração em um modelo de mineração
Na guia Modelos de Mineração, em Estrutura, selecione ServiceGrade Guardado.
Observe que a janela Propriedades exibe as propriedades do objeto, coluna de ScalarMiningStructure.
Na coluna do modelo de mineração, NM Guardado do ServiceGrade, clique na célula que corresponde à coluna ServiceGrade Guardado.
Observe que agora a janela Propriedades exibe as propriedades do objeto, MiningModelColumn.
Localize a propriedade Nome e altere o valor para ServiceGrade.
Localize a propriedade Descrição e digite Alias temporário da coluna.
A janela Propriedades deve conter as seguintes informações:
Propriedade
Valor
Descrição
Alias temporário da coluna
ID
ServiceGrade Guardado
Sinalizadores de modelagem
Nome
Nível de serviço
ID da SourceColumn
Nível de serviço 1
Uso
Prever
Clique em qualquer lugar na guia Modelo de Mineração.
A grade é atualizada para mostrar o novo alias temporário da coluna, ServiceGrade, ao lado do uso de coluna. A grade que contém a estrutura de mineração e dois modelos de mineração devem ser parecidas com o seguinte:
Estrutura
NM Padrão do Center
NM Guardado do Call Center
Rede Neural da Microsoft
Rede Neural da Microsoft
AutomaticResponses
Entrada
Entrada
AverageTimePerIssue
Prever
Prever
Chamadas
Entrada
Entrada
DayOfWeek
Entrada
Entrada
FactCallCenterID
Chave
Chave
IssuesRaised
Entrada
Entrada
LevelOneOperators
Entrada
Entrada
LevelTwoOperators
Entrada
Entrada
Pedidos
Entrada
Entrada
ServiceGrade Guardado
Ignore
Prever (ServiceGrade)
ServiceGrade
Prever
Ignore
Deslocamento
Entrada
Entrada
Total de Operadores
Entrada
Entrada
WageType
Entrada
Entrada
Processando o modelo
Finalmente, para garantir que os modelos criados são comparáveis, você define o parâmetro de semente para os dois modelos padrão e guardado. A definição de um valor de semente garante que cada modelo inicia o processamento dos dados no 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 o modelo de rede neural e o modelo de regressão logística têm nomes diferentes, defina um valor de semente para garantir que eles processem os dados na mesma ordem. |
Para especificar a semente e processar os modelos
Na guia Modelo de Mineração, clique com o botão direito do mouse na coluna para o modelo denominado Call Center - LR e selecione Definir Parâmetros de Algoritmo.
Na linha do parâmetro HOLDOUT_SEED, clique na célula vazia em Valor e digite 1. Clique em OK. Repita essa etapa para cada modelo associado à estrutura.
Observação O valor escolhido como semente não importa, desde que você use a mesma semente para todos os modelos relacionados.
No menu Modelos de Mineração, selecione Processar Estrutura de Mineração e Todos os Modelos. Clique em Sim para implantar o projeto de mineração de dados atualizado no servidor.
Na caixa de diálogo Processar Modelo de Mineração, clique em Executar.
Clique em Fechar para fechar a caixa de diálogo Progresso do Processo e clique em Fechar novamente na caixa de diálogo Processar Modelo de Mineração.
Agora que criou os dois modelos de mineração relacionados, você explorará os dados para descobrir relações nos dados.
Próxima tarefa na lição
Explorando o modelo de call center (Tutorial de mineração de dados intermediário)