3个不稳定版本
0.1.1 | 2022年6月2日 |
---|---|
0.1.0 | 2022年5月29日 |
0.0.1 | 2022年5月13日 |
#277 in 机器学习
27 每月下载量
用于 2 crates
140KB
2.5K SLoC
cge
一个使用通用遗传编码(CGE)创建、使用和修改人工神经网络的Rust库。有关针对嵌入式环境和性能关键用例的类似库,请参阅const_cge
。有关创建与CGE兼容的神经网络的库,请参阅eant2
。
需要Rust 1.43或更高版本。
特性
cge
旨在为仅直接编码情况下的CGE神经网络交互提供完整解决方案。它目前提供以下功能
- 从文件和字符串中加载和保存神经网络,以向后兼容和可扩展的格式
- 评估神经网络,以及保存、加载和重置其内部状态
- 通过结构和权重变异修改神经网络
- 基因和变异有效性检查
快速入门
将此添加到您的Cargo.toml中
[dependencies]
cge = "0.1"
然后,从文件加载并使用现有的神经网络
use cge::{Network, WithRecurrentState};
// `extra` is any user-defined data stored alongside the network
let (mut network, metadata, extra) =
Network::<f64>::load_file::<(), _>("network.cge", WithRecurrentState(true)).unwrap();
println!("description: {:?}", metadata.description);
println!("num inputs, outputs: {}, {}", network.num_inputs(), network.num_outputs());
println!("{:?}", network.evaluate(&[1.0, 2.0]).unwrap());
network.clear_state();
println!("{:?}", network.evaluate(&[2.0, 0.0]).unwrap());
贡献
欢迎贡献!您可以通过报告与库相关的任何错误或问题、添加文档、修复错误或添加功能来做出贡献。
除非您明确说明,否则根据Apache-2.0许可证定义,您有意提交以包含在作品中的任何贡献,将按照以下方式双重许可,不附加任何额外条款或条件。
许可证
根据以下任一许可证授权
Apache License, Version 2.0, (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT)
任选其一。
依赖关系
~0.5–1.3MB
~28K SLoC