6个发布版

0.1.6 2023年12月28日
0.1.5 2023年12月25日

#67 in 机器学习

每月31次下载

MIT/Apache

34KB
791 代码行

FerrousLearn

无任何依赖项,FerrousLearn是一个基于Rust的机器学习库,专注于提供各种算法的高效和可靠实现。我们的目标是利用Rust的性能和安全特性,为数据科学家和机器学习工程师提供工具集。这种简单的方法也是数据科学家学习我们所使用的算法的学习工具。

特性

  • 线性回归:用于预测建模的线性回归实现。
  • 逻辑回归:使用逻辑回归进行二元分类。
  • K-最近邻回归器:一种用于回归任务的非参数方法。
  • 主成分分析(PCA):降维技术。// 即将推出
  • 各种辅助函数:包括距离度量、标准化和矩阵运算。

安装

要在项目中使用FerrousLearn,请在Cargo.toml中将其添加为依赖项。

[dependencies]
ferrouslearn = { git = "https://github.com/lm-bds/ferrouslearn.git" }

用法

以下是关于如何使用FerrousLearn的一些功能的快速概述

线性回归

use ferrouslearn::LinearRegression;

let mut model = LinearRegression::new(0.1, 1000);
let x_train = vec![vec![1.0, 2.0], vec![3.0, 4.0]];
let y_train = vec![5.0, 6.0];

model.fit(&x_train, &y_train, false);
let predictions = model.predict(&vec![vec![2.0, 3.0]]);

K-最近邻回归器

use ferrouslearn::{KNearestNeighboursRegressor, DistanceMetric, WeightingFunction};

let mut knn = KNearestNeighboursRegressor::new(3, WeightingFunction::Uniform, DistanceMetric::Euclidean);
knn.fit(&x_train, &y_train, Verbosity::Silent);
let predictions = knn.predict(&vec![vec![2.0, 3.0]]);

贡献

欢迎为FerrousLearn做出贡献!如果您有改进的想法或发现了错误,请打开一个问题或提交一个拉取请求。

开发


// Clone the repository:
git clone https://github.com/your-username/ferrouslearn.git

// Create a new branch:
// Copy code
git checkout -b feature-your-feature
// Make your changes and write tests to ensure functionality.

// Push your branch and create a pull request.

// Running Tests
// To run tests, use the standard Cargo command:

cargo test

许可

本项目采用MIT许可证。

无运行时依赖