What's Changed
* Feat/weight clipper by Luc-Mcgrady in https://github.com/open-spaced-repetition/fsrs-rs/pull/9
* Feat/rewrite FSRS item by L-M-Sherlock in https://github.com/open-spaced-repetition/fsrs-rs/pull/8
* Add a check that the code is formatted by dae in https://github.com/open-spaced-repetition/fsrs-rs/pull/10
* Run cargo fmt by dae in https://github.com/open-spaced-repetition/fsrs-rs/pull/11
* Add clippy to CI checks by dae in https://github.com/open-spaced-repetition/fsrs-rs/pull/12
* simplify by asukaminato0721 in https://github.com/open-spaced-repetition/fsrs-rs/pull/15
* rewrite test for convertor by L-M-Sherlock in https://github.com/open-spaced-repetition/fsrs-rs/pull/14
* Add BCELoss by L-M-Sherlock in https://github.com/open-spaced-repetition/fsrs-rs/pull/18
* Simplify Revlog->FSRSItem conversion by dae in https://github.com/open-spaced-repetition/fsrs-rs/pull/13
* Sequence padding by asukaminato0721 in https://github.com/open-spaced-repetition/fsrs-rs/pull/16
* Fix/feature dimension by L-M-Sherlock in https://github.com/open-spaced-repetition/fsrs-rs/pull/26
* add explanation for the sql query by asukaminato0721 in https://github.com/open-spaced-repetition/fsrs-rs/pull/23
* Feat/cosine_annealing_lr by L-M-Sherlock in https://github.com/open-spaced-repetition/fsrs-rs/pull/25
* Update to the latest Burn and pin dependencies by dae in https://github.com/open-spaced-repetition/fsrs-rs/pull/33
* use path join by asukaminato0721 in https://github.com/open-spaced-repetition/fsrs-rs/pull/30
* Feat/sort FSRSItem by length to speed up training by L-M-Sherlock in https://github.com/open-spaced-repetition/fsrs-rs/pull/32
* Feat/clip weights during training by L-M-Sherlock in https://github.com/open-spaced-repetition/fsrs-rs/pull/35
* Freezes weights by GraesonB in https://github.com/open-spaced-repetition/fsrs-rs/pull/29
* Expose a public API for training by dae in https://github.com/open-spaced-repetition/fsrs-rs/pull/36
* Fix/remove revlogs after manual reset & use const by L-M-Sherlock in https://github.com/open-spaced-repetition/fsrs-rs/pull/38
* add test into ci by asukaminato0721 in https://github.com/open-spaced-repetition/fsrs-rs/pull/31
* remove reshape() calls by L-M-Sherlock in https://github.com/open-spaced-repetition/fsrs-rs/pull/39
* Feat/pre-training for initial stability by L-M-Sherlock in https://github.com/open-spaced-repetition/fsrs-rs/pull/42
* Create LICENSE by L-M-Sherlock in https://github.com/open-spaced-repetition/fsrs-rs/pull/44
* Feat/insert default point to avoid overfitting with small dataset by L-M-Sherlock in https://github.com/open-spaced-repetition/fsrs-rs/pull/46
* Error handling and refactoring by dae in https://github.com/open-spaced-repetition/fsrs-rs/pull/47
* Feat/find optimal retention by L-M-Sherlock in https://github.com/open-spaced-repetition/fsrs-rs/pull/48
* Use an enum instead of a hashmap for table lookups by dae in https://github.com/open-spaced-repetition/fsrs-rs/pull/49
* more izip by asukaminato0721 in https://github.com/open-spaced-repetition/fsrs-rs/pull/50
* Feat/evaluation by L-M-Sherlock in https://github.com/open-spaced-repetition/fsrs-rs/pull/52
* Update burn and add progress handling/cancellation by dae in https://github.com/open-spaced-repetition/fsrs-rs/pull/53
* Feat/tune hype parameters by L-M-Sherlock in https://github.com/open-spaced-repetition/fsrs-rs/pull/55
* Feat/support scheduler by L-M-Sherlock in https://github.com/open-spaced-repetition/fsrs-rs/pull/58
* Benchmark and API tweaks by dae in https://github.com/open-spaced-repetition/fsrs-rs/pull/59
* A couple of minor fixes by dae in https://github.com/open-spaced-repetition/fsrs-rs/pull/60
* Some more minor tweaks to API by dae in https://github.com/open-spaced-repetition/fsrs-rs/pull/62
* Feat/answer buttons ratio & cost by L-M-Sherlock in https://github.com/open-spaced-repetition/fsrs-rs/pull/65
* use tryFrom and some path by asukaminato0721 in https://github.com/open-spaced-repetition/fsrs-rs/pull/66
* add more tests for convertor tests by L-M-Sherlock in https://github.com/open-spaced-repetition/fsrs-rs/pull/64
* Drop constraint on FloatElem by dae in https://github.com/open-spaced-repetition/fsrs-rs/pull/67
* add badge, add tests by asukaminato0721 in https://github.com/open-spaced-repetition/fsrs-rs/pull/68
* Update burn by dae in https://github.com/open-spaced-repetition/fsrs-rs/pull/69
* Avoid updating memory state when no days elapsed by dae in https://github.com/open-spaced-repetition/fsrs-rs/pull/70
* Update burn by dae in https://github.com/open-spaced-repetition/fsrs-rs/pull/71
* Feat/extract optimal retention parameters from revlog by L-M-Sherlock in https://github.com/open-spaced-repetition/fsrs-rs/pull/73
* Clip user-provided weights by dae in https://github.com/open-spaced-repetition/fsrs-rs/pull/74
* remove one mut by asukaminato0721 in https://github.com/open-spaced-repetition/fsrs-rs/pull/75
* remove feature dimension by asukaminato0721 in https://github.com/open-spaced-repetition/fsrs-rs/pull/76
* polyfill pow by asukaminato0721 in https://github.com/open-spaced-repetition/fsrs-rs/pull/77
* memory_state_from_sm2() and next_interval() by dae in https://github.com/open-spaced-repetition/fsrs-rs/pull/82
* Feat/outlier filter by L-M-Sherlock in https://github.com/open-spaced-repetition/fsrs-rs/pull/80
* Fix/correct lr_scheduler & increase batch_size & lr by L-M-Sherlock in https://github.com/open-spaced-repetition/fsrs-rs/pull/83
* Use u32 for inputs by dae in https://github.com/open-spaced-repetition/fsrs-rs/pull/85
* Feat/loss_aversion by L-M-Sherlock in https://github.com/open-spaced-repetition/fsrs-rs/pull/86
* update burn by AlexErrant in https://github.com/open-spaced-repetition/fsrs-rs/pull/90
* Run retention calculation in parallel by dae in https://github.com/open-spaced-repetition/fsrs-rs/pull/91
* reduce some dup code by asukaminato0721 in https://github.com/open-spaced-repetition/fsrs-rs/pull/92
* Support overriding initial S/D when revlog incomplete by dae in https://github.com/open-spaced-repetition/fsrs-rs/pull/93
* Laplace smoothing by asukaminato0721 in https://github.com/open-spaced-repetition/fsrs-rs/pull/94
* Fix/BatchShuffledDataLoader by L-M-Sherlock in https://github.com/open-spaced-repetition/fsrs-rs/pull/96
* Feat/stratified k fold by L-M-Sherlock in https://github.com/open-spaced-repetition/fsrs-rs/pull/95
* Update burn for https://github.com/burn-rs/burn/pull/839 by dae in https://github.com/open-spaced-repetition/fsrs-rs/pull/97
* Update burn for https://github.com/burn-rs/burn/pull/843 by dae in https://github.com/open-spaced-repetition/fsrs-rs/pull/98
* bump toolchain version by asukaminato0721 in https://github.com/open-spaced-repetition/fsrs-rs/pull/100
* Factor sm2 retention into memory state calculation by dae in https://github.com/open-spaced-repetition/fsrs-rs/pull/101
* Fix panic when training interrupted by dae in https://github.com/open-spaced-repetition/fsrs-rs/pull/102
* Correctly track progress with n_splits > 1 by dae in https://github.com/open-spaced-repetition/fsrs-rs/pull/104
* Feat/update initial values of S0 by L-M-Sherlock in https://github.com/open-spaced-repetition/fsrs-rs/pull/105
* Fix/Use power forgetting curve in memory_state_from_sm2 by user1823 in https://github.com/open-spaced-repetition/fsrs-rs/pull/103
* Update burn-rs by dae in https://github.com/open-spaced-repetition/fsrs-rs/pull/108
* Feat/early stop by L-M-Sherlock in https://github.com/open-spaced-repetition/fsrs-rs/pull/109
* We can now use burn from crates.io by dae in https://github.com/open-spaced-repetition/fsrs-rs/pull/110
* Feat/calc SInc based on last d by L-M-Sherlock in https://github.com/open-spaced-repetition/fsrs-rs/pull/111
* Clippy nursery by asukaminato0721 in https://github.com/open-spaced-repetition/fsrs-rs/pull/112
* Fix/clamp the upper limit of w16 by L-M-Sherlock in https://github.com/open-spaced-repetition/fsrs-rs/pull/115
* let-else by asukaminato0721 in https://github.com/open-spaced-repetition/fsrs-rs/pull/116
* Doc/rewrite README by L-M-Sherlock in https://github.com/open-spaced-repetition/fsrs-rs/pull/120
* Feat/filter outlier in trainset by L-M-Sherlock in https://github.com/open-spaced-repetition/fsrs-rs/pull/119
* Feat/speed up finding optimal retention via brent's method by L-M-Sherlock in https://github.com/open-spaced-repetition/fsrs-rs/pull/122
* Fix progress monitoring sometimes not terminating by dae in https://github.com/open-spaced-repetition/fsrs-rs/pull/123
* Rework progress code for optimal retention by dae in https://github.com/open-spaced-repetition/fsrs-rs/pull/124
* Add sanity check for NaN values by dae in https://github.com/open-spaced-repetition/fsrs-rs/pull/125
* Dependency updates by dae in https://github.com/open-spaced-repetition/fsrs-rs/pull/127
* Feat/update default weights by L-M-Sherlock in https://github.com/open-spaced-repetition/fsrs-rs/pull/128
* Increase the sample size.rs by Expertium in https://github.com/open-spaced-repetition/fsrs-rs/pull/129
* Use .is_finite() instead of .is_normal() by dae in https://github.com/open-spaced-repetition/fsrs-rs/pull/131
* Fix/pretrain default S0 should be from DEFAULT_WEIGHTS by L-M-Sherlock in https://github.com/open-spaced-repetition/fsrs-rs/pull/132
* Feat/remove items when retention is 100% & use mode parameters by L-M-Sherlock in https://github.com/open-spaced-repetition/fsrs-rs/pull/135
* Feat/flat power forgetting curve by L-M-Sherlock in https://github.com/open-spaced-repetition/fsrs-rs/pull/134
* Feat/add an env var to disable outlier filter by L-M-Sherlock in https://github.com/open-spaced-repetition/fsrs-rs/pull/137
* Fix/sort init_s0 on generating from r_s0_default by L-M-Sherlock in https://github.com/open-spaced-repetition/fsrs-rs/pull/139
* Use array instead of HashMap by asukaminato0721 in https://github.com/open-spaced-repetition/fsrs-rs/pull/140
* Feat/simulator with existing cards and limit by L-M-Sherlock in https://github.com/open-spaced-repetition/fsrs-rs/pull/141
* Fix/remove append_default_point to improve accuracy by L-M-Sherlock in https://github.com/open-spaced-repetition/fsrs-rs/pull/142
* update default weights by L-M-Sherlock in https://github.com/open-spaced-repetition/fsrs-rs/pull/145
* Feat/improve outlier filter by L-M-Sherlock in https://github.com/open-spaced-repetition/fsrs-rs/pull/146
* bump version by asukaminato0721 in https://github.com/open-spaced-repetition/fsrs-rs/pull/147
* let-else by asukaminato0721 in https://github.com/open-spaced-repetition/fsrs-rs/pull/148
* Fix/deal with bad cases by L-M-Sherlock in https://github.com/open-spaced-repetition/fsrs-rs/pull/149
* plan to release on crates.io by L-M-Sherlock in https://github.com/open-spaced-repetition/fsrs-rs/pull/150
New Contributors
* Luc-Mcgrady made their first contribution in https://github.com/open-spaced-repetition/fsrs-rs/pull/9
* dae made their first contribution in https://github.com/open-spaced-repetition/fsrs-rs/pull/10
* asukaminato0721 made their first contribution in https://github.com/open-spaced-repetition/fsrs-rs/pull/15
* GraesonB made their first contribution in https://github.com/open-spaced-repetition/fsrs-rs/pull/29
* AlexErrant made their first contribution in https://github.com/open-spaced-repetition/fsrs-rs/pull/90
* user1823 made their first contribution in https://github.com/open-spaced-repetition/fsrs-rs/pull/103
* Expertium made their first contribution in https://github.com/open-spaced-repetition/fsrs-rs/pull/129
**Full Changelog**: https://github.com/open-spaced-repetition/fsrs-rs/commits/v0.1.0