1 个不稳定版本
0.1.0 | 2020年2月29日 |
---|
#715 in 机器学习
200KB
3.5K SLoC
neuro
Neuro是一个在GPU上运行的深度学习库。该库设计得非常模块化,允许用户轻松添加自定义激活函数、损失函数、层和优化器。目前该库支持以下功能:
- 层:BatchNorm、Conv2D、Dense、Dropout、Flatten、MaxPool2D。
- 优化器:Adadelta、Adam、RMSprop、SGD。
- 激活函数:LeakyReLU、Linear、ReLU、Sigmoid、Softmax、Tanh。
- 损失函数:BinaryCrossEntropy、CrossEntropy、MeanAbsoluteError、MeanSquaredError、SoftmaxCrossEntropy。
此外,还有许多初始化方案可供选择。当前实现允许创建前馈和卷积神经网络。计划在未来添加循环神经网络。
安装
该库由ArrayFire提供支持,以在GPU上执行所有操作。因此,第一步是 安装此库。构建项目时,ArrayFire库的路径必须在环境变量中。例如,对于典型的Unix安装:
export DYLD_LIBRARY_PATH=/opt/arrayfire/lib
使用neuro训练的模型可以保存为分层数据格式(HDF5)。为此,必须安装HDF5 1.8.4或更高版本。安装文件可以在 HDF Group 网站上找到。macOS用户可以使用homebrew进行安装。
brew install hdf5
要开始使用此库,请在项目的Cargo.toml文件中添加以下行
[dependencies]
neuro = "0.1.0"
强烈建议以发布模式构建项目以实现显著的加速(例如 cargo run my_project --release
)。为了快速入门,请查看 示例。
依赖项
~21–31MB
~288K SLoC