[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-5799":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":10,"language":11,"languages":10,"totalLinesOfCode":10,"stars":12,"forks":13,"watchers":14,"openIssues":15,"contributorsCount":16,"subscribersCount":16,"size":16,"stars1d":16,"stars7d":17,"stars30d":18,"stars90d":16,"forks30d":16,"starsTrendScore":19,"compositeScore":20,"rankGlobal":10,"rankLanguage":10,"license":21,"archived":22,"fork":22,"defaultBranch":23,"hasWiki":24,"hasPages":24,"topics":25,"createdAt":10,"pushedAt":10,"updatedAt":30,"readmeContent":31,"aiSummary":32,"trendingCount":16,"starSnapshotCount":16,"syncStatus":33,"lastSyncTime":34,"discoverSource":35},5799,"linfa","rust-ml\u002Flinfa","rust-ml","A Rust machine learning framework.","",null,"Rust",4681,325,66,52,0,10,34,3,29.54,"Apache License 2.0",false,"master",true,[26,27,28,29],"algorithms","machine-learning","rust","scientific-computing","2026-06-12 02:01:15","\u003Cimg align=\"left\" src=\".\u002Fmascot.svg\" width=\"70px\" height=\"70px\" alt=\"Linfa mascot icon\">\n\n# Linfa\n\n[![crates.io](https:\u002F\u002Fimg.shields.io\u002Fcrates\u002Fv\u002Flinfa.svg)](https:\u002F\u002Fcrates.io\u002Fcrates\u002Flinfa)\n[![Documentation](https:\u002F\u002Fdocs.rs\u002Flinfa\u002Fbadge.svg)](https:\u002F\u002Fdocs.rs\u002Flinfa)\n[![DocumentationLatest](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Fdocs-latest-blue)](https:\u002F\u002Frust-ml.github.io\u002Flinfa\u002Frustdocs\u002Flinfa\u002F)\n[![Codequality](https:\u002F\u002Fgithub.com\u002Frust-ml\u002Flinfa\u002Fworkflows\u002FCodequality%20Lints\u002Fbadge.svg)](https:\u002F\u002Fgithub.com\u002Frust-ml\u002Flinfa\u002Factions?query=workflow%3A%22Codequality+Lints%22)\n[![Run Tests](https:\u002F\u002Fgithub.com\u002Frust-ml\u002Flinfa\u002Fworkflows\u002FRun%20Tests\u002Fbadge.svg)](https:\u002F\u002Fgithub.com\u002Frust-ml\u002Flinfa\u002Factions?query=workflow%3A%22Run+Tests%22)\n\n> _**linfa**_ (Italian) \u002F _**sap**_ (English):\n> \n> The **vital** circulating fluid of a plant.\n\n\n`linfa` aims to provide a comprehensive toolkit to build Machine Learning applications with Rust.\n\nKin in spirit to Python's `scikit-learn`, it focuses on common preprocessing tasks and classical ML algorithms for your everyday ML tasks.\n\n\u003Cstrong>\n    \u003Ca href=\"https:\u002F\u002Frust-ml.github.io\u002Flinfa\u002F\">Website\u003C\u002Fa> | \u003Ca href=\"https:\u002F\u002Frust-ml.zulipchat.com\">Community chat\u003C\u002Fa>\n\u003C\u002Fstrong>\n\n## Current state\n\nWhere does `linfa` stand right now? [Are we learning yet?](http:\u002F\u002Fwww.arewelearningyet.com\u002F)\n\n`linfa` currently provides sub-packages with the following algorithms: \n\n\n| Name                                             | Purpose                                  | Status                | Category              | Notes                                                                                     |\n| :----------------------------------------------- | :--------------------------------------- | :-------------------- | :-------------------- | :---------------------------------------------------------------------------------------- |\n| [bayes](algorithms\u002Flinfa-bayes\u002F)                 | Naive Bayes                              | Tested                | Supervised learning   | Contains Bernouilli, Gaussian and Multinomial Naive Bayes                                 |\n| [clustering](algorithms\u002Flinfa-clustering\u002F)       | Data clustering                          | Tested \u002F Benchmarked  | Unsupervised learning | Clustering of unlabeled data; contains K-Means, Gaussian-Mixture-Model, DBSCAN and OPTICS |\n| [ensemble](algorithms\u002Flinfa-ensemble\u002F)           | Ensemble methods                         | Tested                | Supervised learning   | Contains bagging, random forest and AdaBoost                                              |\n| [elasticnet](algorithms\u002Flinfa-elasticnet\u002F)       | Elastic Net                              | Tested                | Supervised learning   | Linear regression with elastic net constraints                                            |\n| [ftrl](algorithms\u002Flinfa-ftrl\u002F)                   | Follow The Regularized Leader - proximal | Tested  \u002F Benchmarked | Partial fit           | Contains L1 and L2 regularization. Possible incremental update                            |\n| [hierarchical](algorithms\u002Flinfa-hierarchical\u002F)   | Agglomerative hierarchical clustering    | Tested                | Unsupervised learning | Cluster and build hierarchy of clusters                                                   |\n| [ica](algorithms\u002Flinfa-ica\u002F)                     | Independent component analysis           | Tested                | Unsupervised learning | Contains FastICA implementation                                                           |\n| [kernel](algorithms\u002Flinfa-kernel\u002F)               | Kernel methods for data transformation   | Tested                | Pre-processing        | Maps feature vector into higher-dimensional space                                         |\n| [lars](algorithms\u002Flinfa-lars\u002F)                   | Linear regression                        | Tested                | Supervised learning   | Contains Least Angle Regression (LARS)                                                    |\n| [linear](algorithms\u002Flinfa-linear\u002F)               | Linear regression                        | Tested                | Supervised learning   | Contains Ordinary Least Squares (OLS), Generalized Linear Models (GLM)                    |\n| [logistic](algorithms\u002Flinfa-logistic\u002F)           | Logistic regression                      | Tested                | Partial fit           | Builds two-class logistic regression models                                               |\n| [nn](algorithms\u002Flinfa-nn\u002F)                       | Nearest Neighbours & Distances           | Tested \u002F Benchmarked  | Pre-processing        | Spatial index structures and distance functions                                           |\n| [pls](algorithms\u002Flinfa-pls\u002F)                     | Partial Least Squares                    | Tested                | Supervised learning   | Contains PLS estimators for dimensionality reduction and regression                       |\n| [preprocessing](algorithms\u002Flinfa-preprocessing\u002F) | Normalization & Vectorization            | Tested \u002F Benchmarked  | Pre-processing        | Contains data normalization\u002Fwhitening and count vectorization\u002Ftf-idf                      |\n| [reduction](algorithms\u002Flinfa-reduction\u002F)         | Dimensionality reduction                 | Tested                | Pre-processing        | Diffusion mapping, Principal Component Analysis (PCA), Random projections                 |\n| [svm](algorithms\u002Flinfa-svm\u002F)                     | Support Vector Machines                  | Tested                | Supervised learning   | Classification or regression analysis of labeled datasets                                 |\n| [trees](algorithms\u002Flinfa-trees\u002F)                 | Decision trees                           | Tested \u002F Benchmarked  | Supervised learning   | Linear decision trees                                                                     |\n| [tsne](algorithms\u002Flinfa-tsne\u002F)                   | Dimensionality reduction                 | Tested                | Unsupervised learning | Contains exact solution and Barnes-Hut approximation t-SNE                                |\n\nWe believe that only a significant community effort can nurture, build, and sustain a machine learning ecosystem in Rust - there is no other way forward.\n\nIf this strikes a chord with you, please take a look at the [roadmap](https:\u002F\u002Fgithub.com\u002Frust-ml\u002Flinfa\u002Fissues\u002F7) and get involved!\n\n## BLAS\u002FLapack backend\n\nSome algorithm crates need to use an external library for linear algebra routines. By default, we use a pure-Rust implementation. However, you can also choose an external BLAS\u002FLAPACK backend library instead, by enabling the `blas` feature and a feature corresponding to your BLAS backend. Currently you can choose between the following BLAS\u002FLAPACK backends: `openblas`, `netblas` or `intel-mkl`.\n\n| Backend   | Linux | Windows | macOS |\n| :-------- | :---: | :-----: | :---: |\n| OpenBLAS  |   ✔️   |    -    |   -   |\n| Netlib    |   ✔️   |    -    |   -   |\n| Intel MKL |   ✔️   |    ✔️    |   ✔️   |\n\nEach BLAS backend has two features available. The feature allows you to choose between linking the BLAS library in your system or statically building the library. For example, the features for the `intel-mkl` backend are `intel-mkl-static` and `intel-mkl-system`.\n\nAn example set of Cargo flags for enabling the Intel MKL backend on an algorithm crate is `--features blas,linfa\u002Fintel-mkl-system`. Note that the BLAS backend features are defined on the `linfa` crate, and should only be specified for the final executable.\n\n# License\nDual-licensed to be compatible with the Rust project.\n\nLicensed under the Apache License, Version 2.0 http:\u002F\u002Fwww.apache.org\u002Flicenses\u002FLICENSE-2.0 or the MIT license http:\u002F\u002Fopensource.org\u002Flicenses\u002FMIT, at your option. This file may not be copied, modified, or distributed except according to those terms.\n","linfa 是一个用 Rust 语言编写的机器学习框架。它提供了多种经典的机器学习算法，包括朴素贝叶斯、聚类（如K-Means和DBSCAN）、集成方法（如随机森林和AdaBoost）以及弹性网络等，并且支持常见的预处理任务。该项目注重代码质量和测试覆盖率，确保了其稳定性和可靠性。适用于需要高性能、内存安全的机器学习应用开发场景，特别是在对计算效率有较高要求的情况下，linfa能够提供比传统Python库更好的性能表现。",2,"2026-06-11 03:05:03","top_language"]