AutoML MulticlassClassificationExperiment minimizes LogLossReduction — MultiClassMetricManager.IsMaximize returns false for it
Los mantenedores suelen responder en 2 días
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 1/5
- Tiempo estimado
- Menos de una hora
- Aptitud para principiantes
- 90/100
- Tipo de issue
- Error
- Claridad
- Bien especificado
- Estado de actividad
- Activo
- Stack tecnológico
- csharp, machine-learning
- Área
- machine-learning
Línea de trabajo
Abre src/Microsoft.ML.AutoML/AutoMLExperiment/IMetricManager.cs y lee MultiClassMetricManager.IsMaximize. Confirma cómo se convierte LogLossReduction en la pérdida del trial y cómo se selecciona la mejor ejecución; la reproducción del issue muestra las puntuaciones resultantes del modelo. El trabajo estará terminado cuando LogLossReduction se trate como una métrica que se debe maximizar y el experimento seleccione una ejecución con una reducción de log-loss mayor.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Defect
src/Microsoft.ML.AutoML/AutoMLExperiment/IMetricManager.cs, MultiClassMetricManager.IsMaximize:
MulticlassClassificationMetric.LogLoss => false,
MulticlassClassificationMetric.LogLossReduction => false, // should be true
Log-loss reduction is 1 - LogLoss / LogLoss(prior) — higher is better (1 = perfect, 0 = no better than the class prior, negative = worse). With IsMaximize == false the trial loss is the metric itself and the experiment's best run is the minimum, so an experiment optimizing it returns the model that learned least.
Reproduction (Microsoft.ML 5.0.1 / Microsoft.ML.AutoML 0.23.1, osx-arm64)
150 rows, 3 classes, one feature that separates them almost perfectly (a = class + U(0,1)), MulticlassExperimentSettings.OptimizingMetric = LogLossReduction, 10 s budget:
- trials: FastTreeOva 0.0016 → 0.4176, FastForestOva 0.9606, LbfgsMaximumEntropy 0.6961, … then the tuner settles on SdcaMaximumEntropy at −0.599 for the rest of the budget
- returned best: macro accuracy 0.333, log loss 1.0986 (= ln 3), log-loss reduction 0.0
- same data with
OptimizingMetric = LogLoss: macro accuracy 1.0, log-loss reduction 1.0
Expected
LogLossReduction => true.
Related observation (not a defect claim)
TopKAccuracy as an optimizing metric: the experiment evaluates with the default topKPredictionCount = 0, for which MulticlassClassificationMetrics.TopKAccuracy is 0 for every model (measured: micro accuracy 1, top-k accuracy 0). MulticlassExperimentSettings has no setting to pass K, so optimizing it compares constants.
- Lenguaje dominante
- C#
- Estrellas
- 9.4k
- Forks
- 2k
- Merge medio
- 2 d 14 h
- PR fusionados (30 d)
- 50
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Tiene una plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de dotnet/machinelearning
-
area-Native untriaged
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
dotnet/machinelearning#7837 ·
Los mantenedores suelen responder en 2 días
-
area-TensorFlow untriaged
Dificultad 2/5 1-3 horas Aptitud para principiantes 62/100
dotnet/machinelearning#7836 ·
Los mantenedores suelen responder en 2 días
-
ToArrowRecordBatches accumulates arrays from previous batches, producing invalid record batchesAbiertoarea-DataFrame bug untriaged
Dificultad 2/5 1-3 horas Aptitud para principiantes 62/100
dotnet/machinelearning#7799 ·
Los mantenedores suelen responder en 2 días
-
LlamaTokenizer encodes some runs of repeated characters differently from SentencePiecePosiblemente ocupada @Laurianti la tomó hace 21 días. Abiertountriaged
Dificultad 2/5 1-3 horas Aptitud para principiantes 88/100
dotnet/machinelearning#7751 · 1 comentario ·
Los mantenedores suelen responder en 2 días
-
BertTokenizer merges words separated only by `\n`, `\t` or `\r`Posiblemente ocupada @rosebyte la tomó hace 30 días. Abiertoarea-Tokenizers green
Dificultad 2/5 1-3 horas Aptitud para principiantes 85/100
dotnet/machinelearning#7724 · 3 comentarios · 1 asignado ·
Los mantenedores suelen responder en 2 días
Todos los issues de dotnet/machinelearning
Issues similares
-
feature-request
Dificultad 2/5 1-3 horas Aptitud para principiantes 77/100
stripe/stripe-dotnet#3484 ·
Los mantenedores suelen responder en 2 días
-
bug mcp misleading small
Dificultad 2/5 1-3 horas Aptitud para principiantes 77/100
Los mantenedores suelen responder en 1 día
-
accessibility help wanted macos
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
dorlugasigal/annotator#42 ·
Los mantenedores suelen responder en 1 día
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
AvaloniaUI/Avalonia#22568 ·
Los mantenedores suelen responder en 2 días
-
[bug] 截图失败日志冲爆硬盘Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 63/100
babalae/better-genshin-impact#3846 · 2 comentarios ·
Los mantenedores suelen responder en 2 días