This code is associated with the paper A Family of LZ78-based Universal Sequential Probability Assignments.
This codebase is in Python, though it is recommended to use the Rust version of the codebase due to significant runtime speed gains. This codebase offers those curious and less familiar with Rust a more comfortable playground to tinker the implementation.
- (Optional) Set up and activate a virtual environment for this project.
- Install the
lz78_python
package:pip install --editable .
. Note that the--editable
option allows implementation modifications to propagate to the package without having to rerunpip install .
.
You should be all set! Refer to the lz78_python_tutorial.ipynb
file for a tutorial on the functionalities that this Python codebase offers. It closely parallels the Rust codebase functionalities.