Skip to content

Pass lists of scalars to wandb聽#3809

Description

馃殌 Feature

When computing per class precision, F1-score, etc... it'd be very useful to have to possibility to put them all inside a list rather than flattened then sent to wandb.

When dealing with 10+ classes, summaries on wandb are extremely hard to read, especially when you keep adding more metrics.

Image

What would be nice is to expose the log call so that it could allow more flexibility in terms of format.

As for now, I'm considering switching temporarily to Lightning.ai until Ignite matures more as a framework.

P.S.: A little off-topic, but despite being able to customize loss functions transforms, I've had a hard time getting automated per-class metrics from ClassificationReport because lists dont have an attach() method. So instead of doing :

class_report = ClassificationReport(...)
prec_per_class = [class_report[str(i)]["precision"] for i in range(C)]

I had to do something rather tricky :

cm = ConfusionMatrix(...)
prec_per_class = (cm.diag() / (cm.sum(dim=1) + 1e-9)).tolist()

But even with tolist(), output is flattened before being sent to wandb.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions