Regressão de Poisson

Cria um modelo de regressão que assume que os dados têm uma distribuição Poisson

Categoria: Machine Learning / Initialize Model / Regression

Nota

Aplica-se a: Machine Learning Studio (clássico)

Este conteúdo diz respeito apenas ao Studio (clássico). Módulos semelhantes de arrasto e queda foram adicionados ao designer de Aprendizagem automática Azure. Saiba mais neste artigo comparando as duas versões.

Visão geral do módulo

Este artigo descreve como usar o módulo de Regressão poisson no Azure Machine Learning Studio (clássico) para criar um modelo de regressão de Poisson.

A regressão de Poisson destina-se a ser utilizada em modelos de regressão que são utilizados para prever valores numéricos, normalmente conta. Portanto, deve utilizar este módulo para criar o seu modelo de regressão apenas se os valores que está a tentar prever se encaixarem nas seguintes condições:

  • A variável de resposta tem uma distribuição Poisson.

  • Os condes não podem ser negativos. O método falhará completamente se tentar usá-lo com etiquetas negativas.

  • Uma distribuição Poisson é uma distribuição discreta; portanto, não faz sentido utilizar este método com números não inteiros.

Dica

Se o seu alvo não é uma contagem, a regressão de Poisson provavelmente não é um método apropriado. Experimente um dos outros módulos desta categoria. Para ajudar a escolher um método de regressão, consulte a folha de batota do algoritmo de aprendizagem do algoritmo Azure Learning.

Depois de configurar o método de regressão, deve treinar o modelo usando um conjunto de dados que contenha exemplos do valor que pretende prever. O modelo treinado pode então ser usado para fazer previsões.

Mais sobre a regressão de Poisson

A regressão de Poisson é um tipo especial de análise de regressão que é normalmente usada para a contagem de modelos. Por exemplo, a regressão de Poisson seria útil nestes cenários:

  • Modelar o número de constipações associadas a voos de avião

  • Estimando o número de chamadas de serviço de emergência durante um evento

  • Projetar o número de inquéritos aos clientes após uma promoção

  • Criação de mesas de contingência

Como a variável de resposta tem uma distribuição poisson, o modelo faz pressupostos diferentes sobre os dados e a sua distribuição de probabilidade do que, digamos, a regressão de quadrados mínimos. Por isso, os modelos Poisson devem ser interpretados de forma diferente de outros modelos de regressão.

Como configurar a Regressão de Poisson

  1. Adicione o módulo de Regressão Poisson à sua experiência no Studio (clássico).

    Pode encontrar este módulo na categoria Machine Learning - Initialize, na categoria Regression.

  2. Adicione um conjunto de dados que contenha dados de treino do tipo correto.

    Recomendamos que utilize dados de normalização para normalizar o conjunto de dados de entrada antes de o utilizar para treinar o regressor.

  3. No painel de propriedades do módulo de regressão Poisson, especifique como pretende que o modelo seja treinado, definindo a opção modo de formação Create.

    • Parâmetro único: Se souber como pretende configurar o modelo, forneça um conjunto específico de valores como argumentos.

    • Intervalo de parâmetros. Se não tiver a certeza dos melhores parâmetros, faça uma varredura de parâmetros utilizando o módulo Tune Model Hyperparameters. O treinador itera sobre vários valores que especifica para encontrar a configuração ideal.

  4. Tolerância à otimização: Digite um valor que defina o intervalo de tolerância durante a otimização. Quanto mais baixo o valor, mais lento e preciso o encaixe.

  5. Peso de regularização L1 e peso de regularização L2: Valores de tipo a utilizar para regularização L1 e L2. A regularização adiciona constrangimentos ao algoritmo em relação a aspetos do modelo que são independentes dos dados de formação. A regularização é comumente usada para evitar a sobremontagem.

    • A regularização L1 é útil se o objetivo é ter um modelo o mais escasso possível.

      A regularização L1 é feita subtraindo o peso L1 do vetor de peso da expressão de perda que o aluno está tentando minimizar. A norma L1 é uma boa aproximação à norma L0, que é o número de coordenadas não-zero.

    • A regularização L2 impede que qualquer coordenada única no vetor de peso cresça demasiado em magnitude. A regularização L2 é útil se o objetivo é ter um modelo com pequenos pesos globais.

    Neste módulo, pode aplicar uma combinação de regularizações L1 e L2. Ao combinar a regularização L1 e L2, pode impor uma penalização à magnitude dos valores dos parâmetros. O aluno tenta minimizar o penálti, numa troca com a minimização da perda.

    Para uma boa discussão sobre a regularização L1 e L2, consulte a Regularização L1 e L2 para machine learning.

  6. Tamanho da memória para L-BFGS: Especifique a quantidade de memória para reservar para a montagem e otimização do modelo.

    L-BFGS é um método específico de otimização, baseado no algoritmo Broyden-Fletcher-Goldfarb-Shanno (BFGS). O método utiliza uma quantidade limitada de memória (L) para calcular a direção do passo seguinte.

    Ao alterar este parâmetro, pode afetar o número de posições e gradientes passados que são armazenados para calcular o passo seguinte.

  7. Ligue o conjunto de dados de treino e o modelo não treinado a um dos módulos de treino:

    Aviso

    • Se passar uma gama de parâmetros para o Modelo de Comboio,utiliza apenas o primeiro valor na lista de parâmetros.

    • Se passar um único conjunto de valores de parâmetros para o módulo Tune Model Hyperparameters, quando espera uma gama de definições para cada parâmetro, ignora os valores e utiliza os valores predefinidos para o aluno.

    • Se selecionar a opção De Alcance de Parâmetros e introduzir um único valor para qualquer parâmetro, esse valor único especificado é utilizado ao longo da varredura, mesmo que outros parâmetros se alterem numa gama de valores.

  8. Executar a experiência para treinar o modelo.

Exemplos

Por exemplo, como a regressão de Poisson é usada na aprendizagem automática, consulte a Galeria Azure AI.

Notas técnicas

A regressão de Poisson é usada para modelar dados de contagem, assumindo que a etiqueta tem uma distribuição Poisson. Por exemplo, pode usá-lo para prever o número de chamadas para um centro de apoio ao cliente num determinado dia.

Para este algoritmo, presume-se que uma função desconhecida, denotada Y, tem uma distribuição poisson. A distribuição poisson é definida da seguinte forma:

Dado o exemplo x = (x0, ..., xd-1), para cada k=0,1, ...o módulo calcula a probabilidade de que o valor da instância é k.

Dado o conjunto de exemplos de treino, o algoritmo tenta encontrar os valores ideais para φ0, ...,φD-1 tentando maximizar a probabilidade de log dos parâmetros. A probabilidade dos parâmetros 30, ...,φD-1 é a probabilidade de os dados de formação serem recolhidos a partir de uma distribuição com estes parâmetros.

A probabilidade de log pode ser vista como logp(y = yi)

A função de previsão produz o valor esperado dessa distribuição poisson parametrizada, especificamente: fw,b(x) = E[Y|x] = ewTx+b.

Para mais informações, consulte a entrada para a regressão de Poisson na Wikipédia.

Parâmetros do módulo

Nome Intervalo Tipo Predefinição Descrição
Tolerância à otimização >=duplo. Epsilon Float 0.0000001 Especifique um valor de tolerância para a convergência de otimização. Quanto mais baixo o valor, mais lento e preciso o encaixe.
Peso de regularização L1 >=0.0 Float 1,0 Especifique o peso da regularização L1. Utilize um valor não zero para evitar a sobremontagem do modelo.
Peso de regularização L2 >=0.0 Float 1,0 Especifique o peso da regularização L2. Utilize um valor não zero para evitar a sobremontagem do modelo.
Tamanho da memória para L-BFGS >=1 Número inteiro 20 Indique a quantidade de memória (em MB) a utilizar para o optimizador L-BFGS. Com menos memória, o treino é mais rápido, mas menos preciso no treino.
Semente de número aleatório qualquer Número inteiro Digite um valor para semear o gerador de números aleatórios utilizado pelo modelo. Deixe em branco por defeito.
Permitir níveis categóricos desconhecidos qualquer Booleano true Indicar se deve ser criado um nível adicional para cada coluna categórica. Quaisquer níveis no conjunto de dados de teste não disponíveis no conjunto de dados de treino são mapeados para este nível adicional.

Saídas

Nome Tipo Descrição
Modelo destreinado Interface ILearner Um modelo de regressão destreinado

Ver também

Regressão
Lista de Módulos A-Z