1 个不稳定版本

0.1.0 2020年2月29日

#715 in 机器学习

BSD-3-Clause

200KB
3.5K SLoC

neuro

主页API 文档示例

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