alan-turing-institute / alan-turing-institute/deepsensor

Improve `ProbabilisticModel` base class using abstract base class

Open
#37 3 comments 0 reactions 0 assignees View on GitHub
Dominant language
Python
Stars
128
Forks
28
PR merge metrics
No merged PRs in 30d

Description

The `ProbabilisticModel` base class (below) defines the interface that custom model classes must implement to work in `deepsensor` (such as `.mean`, `.stddev`). This should be updated to be an abstract base class using `collections.abc`: https://docs.python.org/3/library/collections.abc.html

https://github.com/tom-andersson/deepsensor/blob/e349aaa48f6ed673c721b13b64b9a7b422425876/deepsensor/model/model.py#L95-L108

cc @patel-zeel

Contributor guide

Open the contributing guide

Research direction

Start with deepsensor/model/model.py at the linked ProbabilisticModel definition and review the collections.abc documentation. Update the base class so its required interface, including methods such as .mean and .stddev, is abstract, then verify that custom model classes can still implement the interface.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
machine-learning
Issue type
Refactor
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Stale
Clarity
Clearly specified
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.