#neural-network #lstm #long #memory #weight #cell #short-term

rust-lstm

Rust 语言的 LSTM(长短期记忆)神经网络库

1 个不稳定版本

0.1.0 2024 年 6 月 9 日

#294机器学习

MIT 许可证

8KB
106

Rust-LSTM

Rust 语言实现的一个简单的 LSTM(长短期记忆)神经网络库。此库提供创建和训练 LSTM 网络的基本功能。

特性

  • LSTM 单元实现
  • 多层 LSTM 网络
  • 权重和偏置的随机初始化
  • 网络前向传递

入门指南

先决条件

确保您已在您的计算机上安装了 Rust。如果 Rust 还未安装,您可以按照官方 Rust 网站的说明进行安装: https://rust-lang.net.cn/tools/install.

安装

要在您的项目中使用 Rust-LSTM,请将以下内容添加到您的 Cargo.toml 文件中

[dependencies]
rust-lstm = "0.1.0"

然后,运行以下命令以构建您的项目并下载 Rust-LSTM crate

cargo build

使用方法

以下是一个简单示例,展示了如何使用 LSTM 库

use ndarray::Array2;
use rust_lstm::models::lstm_network::LSTMNetwork;

fn main() {
    let input_size = 3;
    let hidden_size = 2;
    let num_layers = 2;

    // Create an LSTM network
    let network = LSTMNetwork::new(input_size, hidden_size, num_layers);

    // Create some example input data
    let input = Array2::from_shape_vec((input_size, 1), vec![0.5, 0.1, -0.3]).unwrap();

    // Perform a forward pass
    let output = network.forward(&input);

    // Print the output
    println!("Output: {:?}", output);
}

要运行此示例,将其保存为 main.rs 并运行

cargo run

运行测试

要运行 Rust-LSTM 中的测试,请执行以下操作

cargo test

这将运行库中定义的所有单元和集成测试。

贡献

Rust-LSTM 欢迎贡献!以下是一些您可以提供帮助的方式

  • 报告错误和问题
  • 建议新特性或改进
  • 通过拉取请求提交对代码或文档的改进
  • 请阅读 CONTRIBUTING.md 以了解我们的行为准则和提交拉取请求的流程。

许可证

本项目采用 MIT 许可证 - 有关详细信息,请参阅 LICENSE 文件。

依赖项

~2.5MB
~45K SLoC