#machine-learning #reduction #cli

reductionml-core

基于减少的机器学习工具包核心库

2 个不稳定版本

0.1.0 2023年7月11日
0.0.1 2023年6月27日

#334 in 机器学习


用于 reductionml-cli

MIT 协议

210KB
5.5K SLoC

📚 ReductionML

免责声明:ReductionML 是我个人的项目和企业。ReductionML 是一个实验,非常处于开发阶段。这是我探索自己设计想法的机会。事物非常粗糙,我确信将会发生很大变化。

ReductionML 是一个机器学习框架,提供了一系列问题的解决方案。它围绕通过将问题分解成更易于管理的具有解决方案的组件来简化问题的概念。这个过程通过减少(将一个问题减少到另一个问题)来完成。这种方法从我很尊敬并高度重视的项目 VowpalWabbit 中汲取灵感。事实上,如果你熟悉 VowpalWabbit,那么你应该能够轻松地掌握 ReductionML。

Crates

Crates
reductionml-core Crates.io
reductionml-cli Crates.io

入门

安装 reml 工具

cargo install reductionml-cli

内置了对 CLI 完成的支持。要启用它们,请运行以下命令

Bash(可选)

reml gen-completions bash > /usr/share/bash-completion/completions/reml

Fish(可选)

reml gen-completions fish > ~/.config/fish/completions/reml.fish

第一步

以下命令将获取一个小的 100 个示例数据集,以 VW 文本格式。然后将为 Coin 减少创建一个新的配置文件,使用默认值。最后,它将使用配置文件和数据集训练一个模型。训练运行将使用均方误差指标进行评估。

curl https://raw.githubusercontent.com/VowpalWabbit/vowpal_wabbit/master/test/test-sets/0001.dat > rcv1_small.vwtxt
reml config new Coin > config.json
reml train --config config.json --data rcv1_small.vwtxt --metrics mse

输出

warning: This CLI tool is not stable
info: Reading data file: rcv1_small.vwtxt
info: Using entry reduction: Coin
+-----------------------------+
| Example #  MeanSquaredError |
+=============================+
| 0          0                |
| 1          0.5              |
| 2          0.33609757       |
| 4          0.20314142       |
| 8          0.11399492       |
| 16         0.19589658       |
| 32         0.14362814       |
| 64         0.15037861       |
| 100        0.13510321       |
+-----------------------------+

依赖项

~4–10MB
~118K SLoC