26 个版本
0.12.1 | 2024 年 3 月 21 日 |
---|---|
0.11.4 | 2023 年 10 月 12 日 |
0.10.2 | 2022 年 12 月 31 日 |
0.8.0 | 2022 年 11 月 11 日 |
#11 in #autodiff
3KB
Zyx
Zyx 是用 Rust 编写的机器学习库。
有关 README 和源代码,请访问 github。
只是快速尝一尝
cargo add zyx-opencl;
cargo add zyx-optim;
cargo add zyx-nn;
let dev = zyx_opencl::device()?;
let l0 = dev.linear(3, 1024);
let l1 = dev.linear(1024, 2);
let x = dev.tensor([2, 3, 1]).cast(DType::F32);
let target = dev.tensor([2, 4]);
let mut optim = zyx_optim::SGD {
learning_rate: 0.01,
momentum: 0.9,
nesterov: true,
..Default::default()
};
let train_steps = 100;
for _ in 0..train_steps {
let y = l0.forward(&x).relu();
let y = l1.forward(&y).sigmoid();
let loss = y.mse_loss(&target):
loss.backward(l0.into_iter().chain(l1.into_iter()));
optim.update(l0.into_iter().chain(l1.into_iter()));
}
l0.into_iter().chain(l1.into_iter()).save("my_net.safetensors");
有关更多详细信息,请参阅 书籍。