Regresión logística multiclase

Crea un modelo de clasificación de regresión logística multiclase

Categoría: machine learning/inicializar modelo/clasificació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 logística multiclase en Azure machine learning Studio (clásico) para crear un modelo de regresión logística que puede usarse para predecir varios valores.

La clasificación con la regresión logística es un método de aprendizaje supervisado y, por lo tanto, requiere un conjunto de datos con etiquetas. Para entrenar el modelo, proporcione el modelo y el conjunto de datos con etiqueta como una entrada a un módulo como entrenar modelo o ajustar los hiperparámetros del modelo. Después, el modelo entrenado puede usarse para predecir valores para los nuevos ejemplos de entrada.

Azure Machine Learning Studio (clásico) también proporciona un módulo de regresión logística de dos clases , que es adecuado para la clasificación de variables binarias o dicotómicas.

Más información sobre la regresión logística multiclase

La regresión logística es un método conocido en las estadísticas que se usa para predecir la probabilidad de un resultado y es especialmente popular para las tareas de clasificación. El algoritmo predice la probabilidad de aparición de un evento ajustando los datos a una función logística. Para ver detalles sobre esta implementación, consulte la sección Notas técnicas.

En la regresión logística multiclase, el clasificador puede usarse para predecir varios resultados.

Configuración de una regresión logística multiclase

  1. Agregue el módulo Multiclass Logistic Regression al experimento.

  2. Especifique cómo quiere que se entrene el modelo, estableciendo la opción Create trainer mode (Crear modo entrenador).

    • Single Parameter (Parámetro único): Use esta opción si sabe cómo quiere configurar el modelo y proporcione un conjunto específico de valores como argumentos.

    • Intervalo de parámetros: Utilice esta opción si no está seguro de cuáles son los mejores parámetros y desea usar un barrido de parámetros.

  3. Optimization tolerance (Tolerancia de optimización), especifique el valor de umbral de convergencia del optimizador. Si la mejora entre las iteraciones es menor que el umbral, el algoritmo se detiene y devuelve el modelo actual.

  4. L1 regularization weight (Ponderación de regularización L1), L2 regularization weight (Ponderación de regularización L2): Escriba un valor que se usará para los parámetros de regularización L1 y L2. Se recomienda un valor distinto de cero para ambos.

    La regularización es un método para evitar el sobreajuste mediante la penalización de modelos con valores de coeficiente extremos. La regularización funciona agregando la penalización asociada a los valores de coeficiente al error de la hipótesis. Un modelo preciso con valores de coeficiente extremos se penalizaría más, y un modelo menos preciso con valores más conservadores se penalizaría menos.

    Las regularizaciones L1 y L2 tienen efectos y usos diferentes. L1 puede aplicarse a modelos dispersos, lo que resulta útil cuando se trabaja con datos muy dimensionales. En cambio, la regularización L2 es preferible para los datos que no están dispersos. Este algoritmo es compatible con una combinación lineal de los valores de regularización L1 y L2: es decir, si x = L1 y y = L2, ax + by = c define el intervalo lineal de los términos de regularización.

    Se han diseñado diferentes combinaciones lineales de los términos de L1 y L2 para los modelos de regresión logística: por ejemplo, regularización elástica neta.

  5. Tamaño de memoria para l-BFGS: especifique la cantidad de memoria que se va a usar para la optimización de l-BFGS . Este parámetro indica el número de gradientes y posiciones anteriores que se deben almacenar para el cálculo del siguiente paso.

    L-BFGS significa “Broyden-Fletcher-Goldfarb-Shanno” de memoria limitada y es un algoritmo de optimización popular para la estimación de parámetros. Este parámetro de optimización limita la cantidad de memoria que se usa para calcular el siguiente paso y la dirección. Cuando especifica menos memoria, el entrenamiento es más rápido, pero menos preciso.

  6. Número de iniciación aleatorio: Escriba un valor entero para usar como valor de inicialización para el algoritmo si quiere que los resultados se puedan repetir entre ejecuciones. En caso contrario, como inicialización se usa un valor de reloj del sistema, lo que puede producir resultados ligeramente diferentes cada vez que ejecute el mismo experimento.

  7. Permitir niveles de categorías desconocidos: Seleccione esta opción para crear un nivel "desconocido" adicional en cada columna de categorías. Los valores (niveles) del conjunto de pruebas de prueba que no están presentes en el conjunto de los entrenamiento se asignan a este nivel "desconocido".

  8. Conecte un conjunto de datos etiquetados y 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. Con esta opción, puede especificar varios valores, y el instructor recorre en iteración varias combinaciones de la configuración para determinar la combinación de valores que genera el mejor modelo.

    Nota

    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.

  9. Ejecute el experimento.

Results

Una vez completado el entrenamiento:

  • Para ver un resumen de los parámetros del modelo, junto con los pesos de las características aprendidos en el entrenamiento, haga clic con el botón derecho en la salida del módulo entrenar modelo o ajuste los hiperparámetros del modeloy seleccione visualizar.

Ejemplos

Para obtener ejemplos de cómo se utiliza este algoritmo de aprendizaje, vea la Azure AI Gallery:

Notas técnicas

Esta sección contiene detalles de implementación, sugerencias y respuestas a las preguntas más frecuentes.

¿Desea obtener más información sobre las regularizaciones L1 y L2? En el siguiente artículo se explica cómo los regularizacións L1 y L2 son diferentes y cómo afectan a la instalación de modelos, con ejemplos de código para la regresión logística y los modelos de red neuronal.

Para obtener más información sobre la implementación de este algoritmo, vea:

Detalles de la implementación

La regresión logística requiere variables numéricas. Por consiguiente, al intentar usar columnas de categorías como una variable, Azure Machine Learning convierte los valores en una matriz de indicador internamente.

Para las fechas y horas, se usa una representación numérica. Para obtener más información sobre los valores de fecha y hora, vea DateTime Structure .NET Framework. Si desea administrar fechas y horas de manera diferente, se recomienda crear una columna derivada.

La regresión logística estándar es binomial y presupone dos clases de salida. La regresión logística multiclase o multinomial presupone tres o más clases de salida.

La regresión logística binomial presupone una distribución logística de los datos, donde la probabilidad de que un ejemplo pertenezca a la clase 1 es la fórmula:

p(x;β0,…, βD-1)

Donde:

  • x es un vector de dimensión D que contiene los valores de todas las características de la instancia.

  • p es la función de distribución logística.

  • β{0},..., β {D-1} son los parámetros desconocidos de la distribución logística.

El algoritmo intenta encontrar los valores óptimos para β{0},..., β {D-1} maximizando la probabilidad de registro de los parámetros dadas las entradas. La maximización se realiza mediante un método conocido para la estimación de parámetros, denominado BFGS de memoria limitada.

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 el optimizador BFGS L
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 sobreajuste.
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 sobreajuste.
Tamaño de memoria para L-BFGS >=1 Entero 20 Especificar la cantidad de memoria (en MB) para usar el optimizador L-BFGS. Cuando se usa menos memoria, el entrenamiento es más rápido pero menos preciso.
Valor de inicialización de números aleatorios Any 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 Any Boolean True Indicar si se debe crear un nivel adicional para cada columna de categorías. Los niveles del conjunto de datos de prueba que no están 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 clasificación no entrenado

Vea también

Nomenclatura
Regresión logística de dos clases
Lista de módulos A-Z