Incorporate RLSSM likelihoods
- Dominant language
- Python
- Stars
- 124
- Forks
- 24
- Avg merge
- 19h 32m
- Merged PRs (30d)
- 60
Description
The RLSSM likelihoods currently reside in `rldm.py` file. The file also implements `make_logp_func()` to correctly extract the params and pass to the custom likelihood function. Many things are hard coded (eg. extracting participant_id and extra_fields such as feedback) in the function.
**Current Implementation**
- We need a generic implementation of `make_logp_func()` (refer `rldm.py`). We need to deal with extra_fields and arbitrary regressions.
- We can compile all the RLSSM likelihoods under a single folder with different files for each model. The RLSSM class can take care of attaching the appropriate likelihoods and configs to the model objects.
- For more complicated RLSSM models, certain extra_fields columns can be strictly computed from the data but I feel it still makes sense to pass it to the likelihood function directly as the user supplies it. This is because it is difficult to exhaustively list all possible computed columns in the large class of RLSSM models. While we can have some specialized preprocessing to get these columns for specific models, I suggest avoiding over-optimizing for a narrow subset of models and keeping the approach very general.
- Related to the point above, it makes sense to keep `data` as clean as possible by just introducing choice and RT column. The participant_id column can potentially go in `data` because it is a common attribute across all RLSSM models. The other extra_fields columns can vary greatly across models and there are no common set of columns in the broader RLSSM class. Moreover, we will operate with the assumption that it is the lowest possible vectorization dimension (see the point below).
- As a conservative assumption for vectorization for the first pass implementation, we can support participant-level vectorized computations. This will impose some restrictions on what the signature for the RLSSM likelihoods will look like.
Contributor guide
Assessment
This issue has not been assessed yet.