Skip to content

red-data-tools/red-chainer

Repository files navigation

Red Chainer : A deep learning framework

A flexible framework for neural network for Ruby

Description

It ported python's Chainer with Ruby.

Requirements

  • Ruby 2.4 or later

Installation

Add this line to your application's Gemfile:

gem 'red-chainer'

And then execute:

$ bundle

Or install it yourself as:

$ gem install red-chainer

Usage

Run MNIST example

MNIST sample program is here

# when install Gemfile
$ bundle exec ruby examples/mnist/mnist.rb
# when install yourself
$ ruby examples/mnist/mnist.rb

Run MNIST example with GPU

On GPU machine, add gem 'cumo' on Gemfile.local and do bundle install.

Run the example with --gpu option whose value indicates GPU device ID such as:

$ bundle exec ruby examples/mnist/mnist.rb --gpu 0

Development

Run tests

$ bundle exec ruby test/run_test.rb

Run tests with Cumo

On GPU machine, add gem 'cumo' on Gemfile.local and do bundle install.

Run tests with RED_CHAINER_GPU environment variable whose value indicates GPU device ID such as:

$ bundle exec env RED_CHAINER_GPU=0 ruby test/run_test.rb

License

The MIT license. See LICENSE.txt for details.

Red Chainer implementation status

Chainer 2.0
(Initial ported version)
Red Chainer (0.3.1) example
activation 15 5 LogSoftmax, ReLU, LeakyReLU, Sigmoid, Tanh
loss 17 2 SoftMax, MeanSquaredError
optimizer 9 2 Adam, MomentumSGDRule
connection 12 2 Linear, Convolution2D
pooling 14 3 Pooling2D, MaxPooling2D, AveragePooling2D
example 31 3 MNIST, Iris, CIFAR
GPU use CuPy use Cumo