[Code scan] Downstream aggregation drops domains instead of incomplete models

Abierto Apto para principiantes
#438 0 comentarios 0 reacciones 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
2/5
Tiempo estimado
1-3 horas
Aptitud para principiantes
74/100
Tipo de issue
Error
Claridad
Bastante claro
Estado de actividad
Tranquilo
Stack tecnológico
python
Área
data

Línea de trabajo

Comienza con lambench/metrics/vishelper/metrics_calculations.py en las líneas 152-164 y sigue cómo se agregan y filtran los domain_results. Añade la prueba de regresión descrita en el issue, utilizando un modelo al que le falte un único dominio; se considera terminado cuando los modelos incompletos se gestionan según la política documentada elegida sin eliminar ese dominio globalmente.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

This issue was found by a Codex global repository scan of tracked non-test files at commit 8c93925cb10b401b2b83c738bd9263fd74474468.

Relevant code

https://github.com/deepmodeling/LAMBench/blob/8c93925cb10b401b2b83c738bd9263fd74474468/lambench/metrics/vishelper/metrics_calculations.py#L152-L164

Impact

domain_results has models as rows and domains as columns, but dropna(axis=1) removes columns. If one model is missing a downstream domain, that domain is dropped for every model, and the incomplete model can still be ranked using the remaining domains.

This changes leaderboard scores by removing valid domains globally instead of excluding or penalizing the incomplete model.

Suggested fix

Make missing-domain policy explicit. For example, compute domain means with skipna=False and then dropna(axis=0) for incomplete models, or apply a documented penalty to missing domains. Add a regression test with one model missing a single domain.

Lenguaje dominante
Python
Estrellas
21
Forks
11
Merge medio
23 d 6 h
PR fusionados (30 d)
1

Preparar el entorno

Este proyecto no incluye contenedor de desarrollo, Dockerfile ni guía de contribución, así que la configuración corre por tu cuenta: empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de deepmodeling/LAMBench

Todos los issues de deepmodeling/LAMBench

Issues similares

Más issues de Python

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.