- [x] parametrize coefficients - [x] handle constraints - [x] make github repo - [x] add syntactic sugar for constraints - [x] implement block gibbs - [x] pairwise / quadratic / cross terms - [x] ingest tsv file in example.py (fritz) - [x] move to HMC (fritz) - [x] port notebook pipeline to scripts - [x] add helpers to specify and validate initial data - `{"sequences": _, "batch_id": _, "response": _}` - [x] add some unit tests (fritz) - [x] wrap things up in higher-level components with validation logic (fritz) - e.g. wrap `thompson_sample()` in `get_next_batch()` - [x] improve README.md (fritz) - [x] improve docstrings (fritz) - [x] add tf8 plots to README (martin) - [x] make tf8 example reproducible, add plots (martin) - [x] make observation model configurable - currently a quantized response model - maybe add a couple options specified by string? - [x] extend model language to include user-provided features - rename `FEATURES` to `GROUPS` or `FEATURE_BLOCKS`? - continuous-valued embeddings - cluster ids - [ ] model criticism (martin) - assess model fit, heldout error, find outliers - explore which features are active (rank or visualize?) - [ ] warnings and errors - warn if GIBBS_BLOCKS or FEATURE_BLOCKS are too large - print number of parameters and the user-facing code that led to the most parameters - [ ] choose better hyperparameter priors - [ ] support coefficient sparsity (fritz) - allow Laplace priors for coefficients (probably default to this) - use different scale parameters for single vs pairwise coefficients
{"sequences": _, "batch_id": _, "response": _}thompson_sample()inget_next_batch()FEATUREStoGROUPSorFEATURE_BLOCKS?