Commit Graph
66 Commits
Author SHA1 Message Date
LorenzoandGitHub 44424807a0 Implement SVR and SVR kernels with Enum. Add tests for argsort_mut (#303)
* Add tests for argsort_mut
* Add formatting and cleaning up .github directory
* fix clippy error. suggestion to use .contains()
* define type explicitly for variable jstack
* Implement kernel as enumerator
* basic svr and svr_params implementation
* Complete enum implementation for Kernels. Implement search grid for SVR. Add documentation.
* Fix serde configuration in cargo clippy
*  Implement search parameters (#304)
* Implement SVR kernels as enumerator
* basic svr and svr_params implementation
* Implement search grid for SVR. Add documentation.
* Fix serde configuration in cargo clippy
* Fix wasm32 typetag
* fix typetag
* Bump to version 0.4.2
2025-06-02 11:01:46 +01:00
LorenzoandGitHub 4092e24c2a Update README.md 2025-02-04 14:26:53 +00:00
LorenzoandGitHub 17dc9f3bbf Add ordered pairs for FastPair (#252)
* Add ordered_pairs method to FastPair
* add tests to fastpair
2025-01-28 00:48:08 +00:00
LorenzoandGitHub c8ec8fec00 Fix #245: return error for NaN in naive bayes (#246)
* Fix #245: return error for NaN in naive bayes
* Implement error handling for NaN values in NBayes predict:
* general behaviour has been kept unchanged according to original tests in `mod.rs`
* aka: error is returned only if all the predicted probabilities are NaN
* Add tests
* Add test with static values
* Add test for numerical stability with numpy
2025-01-27 23:17:55 +00:00
LorenzoandGitHub 3da433f757 Implement predict_proba for DecisionTreeClassifier (#287)
* Implement predict_proba for DecisionTreeClassifier
* Some automated fixes suggested by cargo clippy --fix
2025-01-20 18:50:00 +00:00
LorenzoandGitHub 2d7c055154 Bump version 2023-05-01 13:20:17 +01:00
LorenzoandGitHub 9cd7348403 Update CONTRIBUTING.md 2023-04-10 15:13:27 +01:00
LorenzoandGitHub d15ea43975 Remove failure in case of failed upload to codecov.io 2023-03-20 15:08:30 +00:00
LorenzoandGitHub f498f9629e Implement realnum::rand (#251)
Co-authored-by: Luis Moreno <morenol@users.noreply.github.com>
Co-authored-by: Lorenzo <tunedconsulting@gmail.com>

* Implement rand. Use the new derive [#default]
* Use custom range
* Use range seed
* Bump version
* Add array length checks for
2023-03-20 14:45:44 +00:00
LorenzoandGitHub 7d059c4fb1 Update README.md 2023-03-20 11:54:10 +00:00
LorenzoandGitHub 83dcf9a8ac Delete iml file 2022-11-10 14:09:55 +00:00
Lorenzo (Mec-iS) 3126ee87d3 Pin deps version 2022-11-09 12:03:03 +00:00
Lorenzo (Mec-iS) 46b6285d05 Merge release-0.3 2022-11-08 15:37:11 +00:00
Lorenzo (Mec-iS) c683073b14 make work cargo build --target wasm32-unknown-unknown 2022-11-08 15:35:04 +00:00
LorenzoandGitHub 161d249917 Release 0.3 (#235) 2022-11-08 15:22:34 +00:00
Lorenzo (Mec-iS) 4558be5f73 Merge branch 'release-0.3' of github.com:smartcorelib/smartcore into release-0.3 2022-11-08 15:17:48 +00:00
Lorenzo (Mec-iS) 6c03e6e0b3 update CHANGELOG 2022-11-08 15:17:31 +00:00
LorenzoandGitHub c934f6b6cf update comment 2022-11-08 14:23:13 +00:00
Lorenzo (Mec-iS) 48f1d6b74d use getrandom/js 2022-11-08 14:19:40 +00:00
Lorenzo (Mec-iS) dad0d01f6d Update CHANGELOG 2022-11-08 13:59:49 +00:00
Lorenzo (Mec-iS) 98b18c4dae Remove unused tests flags 2022-11-08 13:53:50 +00:00
Lorenzo (Mec-iS) 2418b24ff4 Merge branch 'release-0.3' of github.com:smartcorelib/smartcore into release-0.3 2022-11-08 12:22:06 +00:00
Lorenzo (Mec-iS) 6c6f92697f minor fixes to doc 2022-11-08 12:21:34 +00:00
LorenzoandGitHub a4097fce15 minor fix 2022-11-08 12:18:35 +00:00
LorenzoandGitHub b71c7b49cb minor fix 2022-11-08 12:18:03 +00:00
LorenzoandGitHub 78bf75b5d8 minor fix 2022-11-08 12:17:32 +00:00
LorenzoandGitHub a60fdaf235 minor fix 2022-11-08 12:17:04 +00:00
LorenzoandGitHub b4206c4b08 minor fix 2022-11-08 12:15:10 +00:00
Lorenzo (Mec-iS) 3c4a807be8 Fix std_rand feature 2022-11-08 12:04:39 +00:00
Lorenzo (Mec-iS) c1af60cafb cleanup 2022-11-08 11:55:32 +00:00
Lorenzo (Mec-iS) 2fa454ea94 fmt 2022-11-08 11:48:14 +00:00
Lorenzo (Mec-iS) 8e6e5f9e68 Use getrandom as default (for no-std feature) 2022-11-08 11:47:31 +00:00
Lorenzo (Mec-iS) bf7b714126 Add static analyzer to doc 2022-11-07 18:16:13 +00:00
Lorenzo (Mec-iS) 3ac6598951 Exclude datasets test for wasm/wasi 2022-11-07 13:56:29 +00:00
Lorenzo (Mec-iS) cc91e31a0e minor fixes 2022-11-07 13:00:51 +00:00
Lorenzo (Mec-iS) 0ec89402e8 minor fix 2022-11-07 12:50:32 +00:00
Lorenzo (Mec-iS) 23b3699730 Release 0.3 2022-11-07 12:48:44 +00:00
LorenzoandGitHub aab3817c58 Create DEVELOPERS.md 2022-11-04 22:23:36 +00:00
LorenzoandGitHub d3a496419d Update README.md 2022-11-04 22:17:55 +00:00
LorenzoandGitHub ab18f127a0 Update README.md 2022-11-04 22:11:54 +00:00
LorenzoandGitHub d592b628be Implement CSV reader with new traits (#209) 2022-11-03 15:49:00 +00:00
Lorenzo (Mec-iS) b66afa9222 Improve options conditionals 2022-11-03 14:58:05 +00:00
Lorenzo (Mec-iS) ba70bb941f Implement Display for NaiveBayes 2022-11-03 14:18:56 +00:00
Lorenzo (Mec-iS) d298709040 cargo clippy 2022-11-03 13:44:27 +00:00
Lorenzo (Mec-iS) e50b4e8637 Fix signature of metrics tests 2022-11-03 13:40:54 +00:00
Lorenzo (Mec-iS) 26b72b67f4 Add kernels' parameters to public interface 2022-11-03 12:30:43 +00:00
LorenzoandGitHub 1964424589 Fix svr tests (#222) 2022-11-03 11:48:40 +00:00
Lorenzo (Mec-iS) deac31a2ab Refactor modules structure in src/svm 2022-11-02 15:28:50 +00:00
Lorenzo (Mec-iS) 4cff7da50d Merge branch 'development' of github.com:smartcorelib/smartcore into development 2022-11-02 15:24:06 +00:00
Lorenzo (Mec-iS) df0ae907f7 clean up svm 2022-11-02 15:23:56 +00:00
LorenzoandGitHub cfbd45bfc0 Support Wasi as target (#216)
* Improve features
* Add wasm32-wasi as a target
* Update .github/workflows/ci.yml
Co-authored-by: morenol <22335041+morenol@users.noreply.github.com>
2022-11-02 15:22:38 +00:00
LorenzoandGitHub b60329ca5d Disambiguate distances. Implement Fastpair. (#220) 2022-11-02 14:53:28 +00:00
LorenzoandGitHub 4cf7e4d7b7 Improve features (#215) 2022-11-01 13:56:20 +00:00
LorenzoandGitHub c3093f11f1 Fix metrics::auc (#212)
* Fix metrics::auc
2022-11-01 12:50:46 +00:00
LorenzoandGitHub 083803c900 Port ensemble. Add Display to naive_bayes (#208) 2022-10-31 17:35:33 +00:00
LorenzoandGitHub 4f64f2e0ff Update README.md 2022-10-31 10:45:51 +00:00
52eb6ce023 Merge potential next release v0.4 (#187) Breaking Changes
* First draft of the new n-dimensional arrays + NB use case
* Improves default implementation of multiple Array methods
* Refactors tree methods
* Adds matrix decomposition routines
* Adds matrix decomposition methods to ndarray and nalgebra bindings
* Refactoring + linear regression now uses array2
* Ridge & Linear regression
* LBFGS optimizer & logistic regression
* LBFGS optimizer & logistic regression
* Changes linear methods, metrics and model selection methods to new n-dimensional arrays
* Switches KNN and clustering algorithms to new n-d array layer
* Refactors distance metrics
* Optimizes knn and clustering methods
* Refactors metrics module
* Switches decomposition methods to n-dimensional arrays
* Linalg refactoring - cleanup rng merge (#172)
* Remove legacy DenseMatrix and BaseMatrix implementation. Port the new Number, FloatNumber and Array implementation into module structure.
* Exclude AUC metrics. Needs reimplementation
* Improve developers walkthrough

New traits system in place at `src/numbers` and `src/linalg`
Co-authored-by: Lorenzo <tunedconsulting@gmail.com>

* Provide SupervisedEstimator with a constructor to avoid explicit dynamical box allocation in 'cross_validate' and 'cross_validate_predict' as required by the use of 'dyn' as per Rust 2021
* Implement getters to use as_ref() in src/neighbors
* Implement getters to use as_ref() in src/naive_bayes
* Implement getters to use as_ref() in src/linear
* Add Clone to src/naive_bayes
* Change signature for cross_validate and other model_selection functions to abide to use of dyn in Rust 2021
* Implement ndarray-bindings. Remove FloatNumber from implementations
* Drop nalgebra-bindings support (as decided in conf-call to go for ndarray)
* Remove benches. Benches will have their own repo at smartcore-benches
* Implement SVC
* Implement SVC serialization. Move search parameters in dedicated module
* Implement SVR. Definitely too slow
* Fix compilation issues for wasm (#202)

Co-authored-by: Luis Moreno <morenol@users.noreply.github.com>
* Fix tests (#203)

* Port linalg/traits/stats.rs
* Improve methods naming
* Improve Display for DenseMatrix

Co-authored-by: Montana Low <montanalow@users.noreply.github.com>
Co-authored-by: VolodymyrOrlov <volodymyr.orlov@gmail.com>
2022-10-31 10:44:57 +00:00
LorenzoandGitHub edbac7e4c7 Update README.md 2022-10-18 15:44:38 +01:00
LorenzoandGitHub 8a2bdd5a75 Update README.md 2022-10-13 19:47:52 +01:00
LorenzoandGitHub b823b55460 Update CONTRIBUTING.md 2022-10-12 12:21:09 +01:00
LorenzoandGitHub 9c59e37a0f Update CONTRIBUTING.md 2022-09-27 14:27:27 +01:00
LorenzoandGitHub 0b619fe7eb Add contribution guidelines (#178) 2022-09-27 14:23:18 +01:00
LorenzoandGitHub 436da104d7 Update LICENSE 2022-09-19 18:00:17 +01:00
LorenzoandGitHub 3d2f4f71fa Add example for FastPair (#144)
* Add example

* Move to top

* Add imports to example

* Fix imports
2022-08-24 13:40:22 +01:00
LorenzoandGitHub a1c56a859e Implement fastpair (#142)
* initial fastpair implementation
* FastPair initial implementation
* implement fastpair
* Add random test
* Add bench for fastpair
* Refactor with constructor for FastPair
* Add serialization for PairwiseDistance
* Add fp_bench feature for fastpair bench
2022-08-23 16:56:21 +01:00
LorenzoandGitHub a2588f6f45 KFold cross-validation (#8)
* Add documentation and API
* Add public keyword
* Implement test_indices (debug version)
* Return indices as Vec of Vec
* Consume vector using drain()
* Use shape() to return num of samples
* Implement test_masks
* Implement KFold.split()
* Make trait public
* Add test for split
* Fix samples in shape()
* Implement shuffle
* Simplify return values
* Use usize for n_splits
Co-authored-by: VolodymyrOrlov <volodymyr.orlov@gmail.com>
2020-10-13 10:10:28 +01:00