Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Design] Setting Rework #256

Open
lebrice opened this issue Nov 29, 2021 · 0 comments
Open

[Design] Setting Rework #256

lebrice opened this issue Nov 29, 2021 · 0 comments
Assignees
Labels
design problem help wanted Extra attention is needed
Projects

Comments

@lebrice
Copy link
Owner

lebrice commented Nov 29, 2021

Leaving this as a note for now, will update with more info shortly.

Todo:

  • Have settings/assumptions as "wrappers" around other settings: transition from a "is-a" (inheritance) to a "has-a" (composition) approach.

For example:

my_setting = TaskIncremental(
    SemiSupervised(
        Cifar10(data_dir="/data"),
        labeled_fraction=0.5,
    ),
    num_tasks=5,
)
# Ideally, have a custom __instancecheck__ for these wrappers, so that we can have this:
isinstance(my_setting, TaskIncremental) # True
isinstance(my_setting, SemiSupervised) # True
isinstance(my_setting, Cifar10) # True
  • The ordering of these "wrapper functions" shouldn't have any effect.
  • They would also be singledispatch callables, so that we can register handlers for different environments or for SL / RL.
  • Ideally directly accept:
    • a Scenario from Continuum
    • a DataModule of some sort from pytorch-lightning-bolts
      and adapt them into the required kind of setting.
@lebrice lebrice self-assigned this Nov 30, 2021
@lebrice lebrice added design problem help wanted Extra attention is needed labels Nov 30, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
design problem help wanted Extra attention is needed
Projects
Roadmap
Awaiting triage
Development

No branches or pull requests

1 participant