|
| 1 | +Version 0.7.0 - 2023-10-15 |
| 2 | +======================== |
| 3 | +Changes |
| 4 | +----------- |
| 5 | + * add `array_from_gz_csv` and `array_from_csv` in `linfa-datasets` |
| 6 | + * make Serde support in `linfa-linear`, `linfa-logistic`, and `linfa-ftrl` optional |
| 7 | + * bump `argmin` to 0.8.1 |
| 8 | + * add Serde support to `linfa-preprocessing` and `linfa-bayes` |
| 9 | + * make licenses follow SPDX 2.1 license expression standard |
| 10 | + |
| 11 | +Removals |
| 12 | +----------- |
| 13 | + * Removed Approximate DBSCAN from `linfa-clustering` due to performance issues. It's now an alias to regular DBSCAN. |
| 14 | + * Removed `partitions` dependency, which breaks in current versions of Rust. |
| 15 | + |
| 16 | +Version 0.6.1 - 2022-12-03 |
| 17 | +======================== |
| 18 | +New Algorithms |
| 19 | +----------- |
| 20 | + * Isotonic regression added to `linfa-linear` by [@wildart] |
| 21 | + * Mean absolute percentage error (MAPE) added to `linfa` by [@bernado-sb] |
| 22 | + |
| 23 | +Changes |
| 24 | +----------- |
| 25 | + * add constructor for `LpDist` |
| 26 | + * add `Send + Sync` to trait objects returned by `linfa-nn` |
| 27 | + * remove `anyhow <= 1.0.48` version restriction |
| 28 | + * bump `ndarray` to 0.15 |
| 29 | + * fix `serde` support for `LogisticRegression` |
| 30 | + |
| 31 | +Version 0.6.0 - 2022-06-15 |
| 32 | +======================== |
| 33 | + |
| 34 | +New Algorithms |
| 35 | +----------- |
| 36 | + * Multinomial Naive Bayes added to `linfa-bayes` by [@sgrigory] |
| 37 | + * Follow The Regularized Leader added as `linfa-ftrl` by [@MilaKyr] |
| 38 | + |
| 39 | +Changes |
| 40 | +----------- |
| 41 | + * **BLAS backend no longer required to build Linfa** |
| 42 | + * remove `SeedableRng` trait bound from `KMeans` and `GaussianMixture` |
| 43 | + * replace uses of Isaac RNG with Xoshiro RNG |
| 44 | + |
| 45 | +Breaking Changes |
| 46 | +----------- |
| 47 | + * parametrize `AsTargets` by the dimensionality of the targets and introduce `AsSingleTargets` and `AsMultiTargets` |
| 48 | + * `Dataset` and `DatasetView` can now be parametrized by target dimensionality, with 2D being the default |
| 49 | + * single-target algorithms no longer accept 2D target arrays as input |
| 50 | + * `cross_validate` changed to `cross_validate_single`, `cross_validate_multi` changed to `cross_validate` |
| 51 | + * `Pr` has been constrained to `0. <= prob <= 1.` with new constructors |
| 52 | + |
| 53 | +Version 0.5.1 - 2022-02-28 |
| 54 | +======================== |
| 55 | + |
| 56 | +Note that the commits for this release are in the `0-5-1` branch. |
| 57 | + |
| 58 | +Changes |
| 59 | +----------- |
| 60 | + * remove `Float` trait bound from many `Dataset` impls, making non-float datasets usable |
| 61 | + * fix build errors in 0.5.0 caused by breaking minor releases from dependencies |
| 62 | + * fix bug in k-means where the termination condition of the algorithm was calculated incorrectly |
| 63 | + * fix build failure when building `linfa` alone, caused by incorrect feature selection for `ndarray` |
| 64 | + |
| 65 | +Version 0.5.0 - 2021-10-20 |
| 66 | +======================== |
| 67 | + |
| 68 | +New Algorithms |
| 69 | +----------- |
| 70 | + |
| 71 | + * Nearest neighbour algorithms and traits have been added as `linfa-nn` by [@YuhanLiin] |
| 72 | + * OPTICS has been added to `linfa-clustering` by [@xd009642] |
| 73 | + * Multinomial logistic regression has been added to `linfa-logistic` by [@YuhanLiin] |
| 74 | + |
| 75 | +Changes |
| 76 | +----------- |
| 77 | + * use least squares solver from `ndarray-linalg` in `linfa-linear` (3dc9cb0) |
| 78 | + * optimized DBSCAN by replacing linear range query implementation with KD-tree (44f91d0) |
| 79 | + * allow distance metrics other than Euclidean to be used for KMeans (4e58d8d) |
| 80 | + * enable models to write prediction results into existing memory without allocating (37bc25b) |
| 81 | + * bumped `ndarray` version to 0.15 and reduced duplicated dependencies (603f821) |
| 82 | + * introduce `ParamGuard` trait to algorithm parameter sets to enable both explicit and implicit parameter checking (01f912a) |
| 83 | + * replace uses of HNSW with `linfa-nn` (208a762) |
| 84 | + |
| 85 | +Version 0.4.0 - 2021-04-28 |
| 86 | +======================== |
| 87 | + |
| 88 | +New Algorithms |
| 89 | +----------- |
| 90 | + |
| 91 | + * Partial Least Squares Regression has been added as `linfa-pls` by [@relf] |
| 92 | + * Barnes-Hut t-SNE wrapper has been added as `linfa-tsne` by [@frjnn] |
| 93 | + * Count-vectorizer and IT-IDF normalization has been added as `linfa-preprocessing` by [@Sauro98] |
| 94 | + * Platt scaling has been added to `linfa-svm` by [@bytesnake] |
| 95 | + * Incremental KMeans and KMeans++ and KMeans|| initialization methods added to `linfa-clustering` by [@YuhanLiin] |
| 96 | + |
| 97 | +Changes |
| 98 | +----------- |
| 99 | + * bumped `ndarray` version to 0.14 (8276bdc) |
| 100 | + * change trait signature of `linfa::Fit` to return `Result` (a5a479f) |
| 101 | + * add `cross_validate` to perform K-folding (a5a479f) |
| 102 | + |
| 103 | +Version 0.3.1 - 2021-03-11 |
| 104 | +======================== |
| 105 | + |
| 106 | +In this release of Linfa the documentation is extended, new examples are added and the functionality of datasets improved. No new algorithms were added. |
| 107 | + |
| 108 | +The meta-issue [#82](https://github.com/rust-ml/linfa/issues/82) gives a good overview of the necessary documentation improvements and testing/documentation/examples were considerably extended in this release. |
| 109 | + |
| 110 | +Further new functionality was added to datasets and multi-target datasets are introduced. Bootstrapping is now possible for features and samples and you can cross-validate your model with k-folding. We polished various bits in the kernel machines and simplified the interface there. |
| 111 | + |
| 112 | +The trait structure of regression metrics are simplified and the silhouette score introduced for easier testing of K-Means and other algorithms. |
| 113 | + |
| 114 | +Changes |
| 115 | +----------- |
| 116 | + * improve documentation in all algorithms, various commits |
| 117 | + * add a website to the infrastructure (c8acc785b) |
| 118 | + * add k-folding with and without copying (b0af80546f8) |
| 119 | + * add feature naming and pearson's cross correlation (71989627f) |
| 120 | + * improve ergonomics when handling kernels (1a7982b973) |
| 121 | + * improve TikZ generator in `linfa-trees` (9d71f603bbe) |
| 122 | + * introduce multi-target datasets (b231118629) |
| 123 | + * simplify regression metrics and add cluster metrics (d0363a1fa8ef) |
| 124 | + |
| 125 | +Version 0.3.0 - 2021-01-21 |
| 126 | +========================= |
| 127 | + |
| 128 | +New Algorithms |
| 129 | +----------- |
| 130 | + |
| 131 | + * Approximated DBSCAN has been added to `linfa-clustering` by [@Sauro98] |
| 132 | + * Gaussian Naive Bayes has been added to `linfa-bayes` by [@VasanthakumarV] |
| 133 | + * Elastic Net linear regression has been added to `linfa-elasticnet` by [@paulkoerbitz] and [@bytesnake] |
| 134 | + |
| 135 | +Changes |
| 136 | +---------- |
| 137 | + |
| 138 | + * Added benchmark to gaussian mixture models (a3eede55) |
| 139 | + * Fixed bugs in linear decision trees, added generator for TiKZ trees (bfa5aebe7) |
| 140 | + * Implemented serde for all crates behind feature flag (4f0b63bb) |
| 141 | + * Implemented new backend features (7296c9ec4) |
| 142 | + * Introduced `linfa-datasets` for easier testing (3cec12b4f) |
| 143 | + * Rename `Dataset` to `DatasetBase` and introduce `Dataset` and `DatasetView` (21dd579cf) |
| 144 | + * Improve kernel tests and documentation (8e81a6d) |
| 145 | + |
| 146 | +Version 0.2.0 - 2020-11-26 |
| 147 | +========================== |
| 148 | + |
| 149 | +New algorithms |
| 150 | +----------- |
| 151 | + |
| 152 | + - Ordinary Linear Regression has been added to `linfa-linear` by [@Nimpruda] and [@paulkoerbitz] |
| 153 | + - Generalized Linear Models has been added to `linfa-linear` by [VasanthakumarV] |
| 154 | + - Linear decision trees were added to `linfa-trees` by [@mossbanay] |
| 155 | + - Fast independent component analysis (ICA) has been added to `linfa-ica` by [@VasanthakumarV] |
| 156 | + - Principal Component Analysis and Diffusion Maps have been added to `linfa-reduction` by [@bytesnake] |
| 157 | + - Support Vector Machines has been added to `linfa-svm` by [@bytesnake] |
| 158 | + - Logistic regression has been added to `linfa-logistic` by [@paulkoerbitz] |
| 159 | + - Hierarchical agglomerative clustering has been added to `linfa-hierarchical` by [@bytesnake] |
| 160 | + - Gaussian Mixture Models has been added to `linfa-clustering` by [@relf] |
| 161 | + |
| 162 | +Changes |
| 163 | +---------- |
| 164 | + |
| 165 | + - Common metrics for classification and regression have been added |
| 166 | + - A new dataset interface simplifies the work with targets and labels |
| 167 | + - New traits for `Transformer`, `Fit` and `IncrementalFit` standardizes the interface |
| 168 | + - Switched to Github Actions for better integration |
| 169 | + |
| 170 | +Version 0.1.3 |
| 171 | +=========================== |
| 172 | + |
| 173 | +New algorithms |
| 174 | +------------ |
| 175 | + |
| 176 | + - The `DBSCAN` clustering algorithm has been added to `linfa-clustering` ([#12](https://github.com/LukeMathWalker/linfa/pull/12) by [@xd009642]) |
| 177 | + |
| 178 | +Version 0.1.2 (2019-11-25) |
| 179 | +=========================== |
| 180 | + |
| 181 | +New algorithms |
| 182 | +------------ |
| 183 | + |
| 184 | + - First release of `linfa-clustering:v0.1.0` with the `KMeans` algorithm (by [@LukeMathWalker]) |
| 185 | + - First (real) release of `linfa`, re-exporting `linfa-clustering` (by [@LukeMathWalker]) |
| 186 | + |
| 187 | + |
| 188 | +[@LukeMathWalker]: https://github.com/LukeMathWalker |
| 189 | +[@xd009642]: https://github.com/xd009642 |
0 commit comments