Regresión de Poisson

Crea un modelo de regresión que asume que los datos tienen una distribución de Poisson.

Categoría: machine learning/inicializar modelo/regresión

Nota

Se aplica a: machine learning Studio (clásico)

Este contenido solo pertenece a Studio (clásico). Se han agregado módulos similares de arrastrar y colocar al diseñador de Azure Machine Learning. Obtenga más información en este artículo comparativa de las dos versiones.

Información general sobre el módulo

En este artículo se describe cómo usar el módulo de regresión de Poisson en Azure machine learning Studio (clásico) para crear un modelo de regresión de Poisson.

La regresión de Poisson está pensada para su uso en modelos de regresión que se usan para predecir valores numéricos, normalmente recuentos. Por lo tanto, debe usar este módulo para crear el modelo de regresión solo si los valores que está intentando predecir se ajustan a las siguientes condiciones:

  • La variable de respuesta tiene una distribución de Poisson.

  • Los recuentos no pueden ser negativos. El método fallará por completo si intenta utilizarlo con etiquetas negativas.

  • Una distribución de Poisson es una distribución discreta; por lo tanto, no tiene sentido usar este método con números no enteros.

Sugerencia

Si el destino no es un recuento, la regresión de Poisson probablemente no sea un método adecuado. Pruebe uno de los otros módulos de esta categoría. Para obtener ayuda para seleccionar un método de regresión, vea la hoja de referencia rápida de algoritmos de Azure machine learning.

Después de haber configurado el método de regresión, debe entrenar el modelo mediante un conjunto de datos que contenga ejemplos del valor que desea predecir. A continuación, el modelo entrenado podrá usarse para realizar predicciones.

Más información sobre la regresión de Poisson

La regresión de Poisson es un tipo especial de análisis de regresión que se utiliza normalmente para modelar recuentos. Por ejemplo, la regresión de Poisson sería útil para:

  • Modelar el número de resfriados asociados con vuelos en avión

  • Calcular el número de llamadas al servicio de emergencia durante un evento

  • Proyectar el número de consultas de clientes posteriores a una promoción

  • Creación de tablas de contingencia

Dado que la variable de respuesta tiene una distribución de Poisson, el modelo hace diferentes suposiciones sobre los datos y su distribución de probabilidad que, por ejemplo, la regresión de mínimos cuadrados. Por lo tanto, los modelos de Poisson deben interpretarse de manera diferente a otros modelos de regresión.

Configuración de la regresión de Poisson

  1. Agregue el módulo de regresión de Poisson al experimento en Studio (clásico).

    Puede encontrar este módulo en machine learning-Initialize, en la categoría regresión .

  2. Agregue un conjunto de datos que contenga datos de entrenamiento del tipo correcto.

    Se recomienda usar Normalize Data (Normalizar datos) para normalizar el conjunto de datos de entrada antes de usarlo para entrenar el regresor.

  3. En el panel de propiedades del módulo de regresión de Poisson , especifique cómo desea entrenar el modelo mediante el establecimiento de la opción crear modo de profesor .

    • Single Parameter (Parámetro único): Si sabe cómo quiere configurar el modelo, proporcione un conjunto específico de valores como argumentos.

    • Intervalo de parámetros. Si no está seguro de los mejores parámetros, realice un barrido de parámetros mediante el módulo ajustar los hiperparámetros del modelo . El instructor recorre en iteración varios valores que usted especifica para encontrar la configuración óptima.

  4. Tolerancia de optimización: Escriba un valor que defina el intervalo de tolerancia durante la optimización. Cuanto menor sea el valor, más lento y más preciso será el ajuste.

  5. L1 regularization weight (Ponderación de regularización L1), L2 regularization weight (Ponderación de regularización L2): Escriba valores para la regularización L1 y L2. La regularización agrega restricciones al algoritmo sobre aspectos del modelo que son independientes de los datos de entrenamiento. La regularización se utiliza habitualmente para evitar el sobreajuste.

    • La regularización L1 es útil si el objetivo es tener un modelo que sea tan disperso como sea posible.

      La regularización L1 se realiza restando el peso L1 del vector de peso de la expresión de pérdida que el aprendiz está intentando minimizar. La norma L1 es una buena aproximación a la norma L0, que es el número de coordenadas distintas de cero.

    • La regularización L2 impide que una única coordenada del vector de peso crezca demasiado en magnitud. La regularización L2 es útil si el objetivo es tener un modelo con pesos generales pequeños.

    En este módulo, puede aplicar una combinación de regularizaciones L1 y L2. Si combina regularizaciones L1 y L2, puede imponer una penalización en la magnitud de los valores de parámetro. El aprendiz intenta minimizar la penalización, buscando el equilibrio con la minimización de la pérdida.

    Para obtener una buena explicación de las regularizaciones L1 y L2, consulte Regularización L1 y L2 para Machine Learning.

  6. Tamaño de memoria para L-BFGS: Especifique la cantidad de memoria que se reservará para la optimización y el ajuste del modelo.

    L-BFGS es un método específico para la optimización, basado en el algoritmo Broyden-Fletcher-Goldfarb-Shanno (BFGS). El método utiliza una cantidad limitada de memoria (L) para calcular la dirección del siguiente paso.

    Al cambiar este parámetro, puede afectar el número de posiciones y gradientes pasados que se almacenan para el cálculo del siguiente paso.

  7. Conecte el conjunto de datos de entrenamiento y el modelo sin entrenar a uno de los módulos de entrenamiento:

    • Si establece Create trainer mode (Crear modo entrenador) en Single Parameter (Parámetro único), use el módulo Entrenar modelo.

    • Si establece Create trainer mode (Crear modo entrenador) para Parameter Range (Intervalo de parámetros), use el módulo Optimizar los hiperparámetros del modelo.

    Advertencia

    • Si pasa un intervalo de parámetros a Entrenar modelo, solo utiliza el primer valor en la lista del intervalo de parámetros.

    • Si pasa un único conjunto de valores de parámetro al módulo Optimizar los hiperparámetros del modelo, cuando espera un intervalo de valores para cada parámetro, omite los valores y usa los valores predeterminados para el aprendiz.

    • Si selecciona la opción Parameter Range (Intervalo de parámetros) y especifica un valor único para algún parámetro, ese valor único que haya especificado se utilizará en todo el barrido, incluso si otros parámetros cambian en un intervalo de valores.

  8. Ejecute el experimento para entrenar el modelo.

Ejemplos

Para ver ejemplos de cómo se usa la regresión de Poisson en el aprendizaje automático, consulte la Azure AI Gallery.

Notas técnicas

La regresión de Poisson se usa para modelar los datos de recuento, suponiendo que la etiqueta tiene una distribución de Poisson. Por ejemplo, puede usarlo para predecir el número de llamadas a un centro de atención al cliente en un día determinado.

Para este algoritmo, se supone que una función desconocida, indicada Y, tiene una distribución de Poisson. La distribución de Poisson se define de la siguiente manera:

Dada la instancia x = (x0,..., xD-1), para cada k = 0, 1,..., el módulo calcula la probabilidad de que el valor de la instancia sea k.

Dado el conjunto de ejemplos de entrenamiento, el algoritmo intenta encontrar los valores óptimos para θ0,..., θD-1 al intentar maximizar la probabilidad de registro de los parámetros. La probabilidad de los parámetros θ0,..., θD-1 es la probabilidad de que se muestrean los datos de entrenamiento de una distribución con estos parámetros.

La probabilidad de registro se puede ver como log p(y = Yi)

La función de predicción genera el valor esperado de esa distribución de Poisson parametrizada, en concreto: f w, b (x) = e [Y|x] = e wTx + b.

Para obtener más información, consulte la entrada para la regresión de Poisson en Wikipedia.

Parámetros del módulo

Nombre Intervalo Tipo Valor predeterminado Descripción
Tolerancia de optimización >=double.Epsilon Float 0,0000001 Especificar un valor de tolerancia para convergencia de optimización. Cuanto menor sea el valor, más lento y más preciso será el ajuste.
Peso de regularización L1 >= 0,0 Float 1.0 Especificar el peso de regularización L1. Usar un valor distinto de cero para evitar sobreajustar el modelo.
Peso de regularización L2 >= 0,0 Float 1.0 Especifique el peso de regularización L2. Usar un valor distinto de cero para evitar sobreajustar el modelo.
Tamaño de memoria para L-BFGS >=1 Entero 20 Indicar la cantidad de memoria (en MB) para usar para el optimizador L-BFGS. Con menos memoria, el entrenamiento es más rápido pero menos preciso.
Valor de inicialización de números aleatorios cualquiera Entero Escribir un valor para inicializar el generador de números aleatorios usado por el modelo. Déjelo en blanco para usar el valor predeterminado.
Permitir niveles de categorías desconocidos cualquiera Boolean true Indicar si se debe crear un nivel adicional para cada columna de categorías. Los niveles del conjunto de datos de prueba no disponibles en el conjunto de datos de entrenamiento se asignan a este nivel adicional.

Salidas

Nombre Tipo Descripción
Modelo no entrenado Interfaz ILearner Un modelo de regresión no entrenado

Vea también

Regresión
Lista de módulos A-Z