Skip to content
RNNLM implementation in java Language
Java
Branch: master
Clone or download

Latest commit

Fetching latest commit…
Cannot retrieve the latest commit at this time.

Files

Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
data
lib
src/jrnnlm
target
.gitignore
README.md
jrnnlm.iml

README.md

JRNNLM: Recurrent neural network implementation in JAVA.

Recurrent neural network implementation in JAVA.

The code is refactored for simplicity and extensibility.

Current version:

  • No class support
  • No direct connection support

How to test JRNNLM

Small size language model

java -cp "target/*:lib/*" jrnnlm.test.training.SmallFileTest

Normal size language model

java -cp "target/*:lib/*" jrnnlm.test.training.NormalFileTest

Parallel training (Still unstable)

java -cp "target/*:lib/*" jrnnlm.test.training.SmallParallelTest

How to train a model for specific task

This code example shows how to train a simple language model. Change the parameters in RNNLMConfiguration for different tasks.

RNNLMConfiguration conf = new RNNLMConfiguration();
conf.trainFile = new File("data/your_training_file");
conf.validFile = new File("data/your_validation_file");
conf.hiddenSize = 50; // Size of hidden layer
conf.maxIters = 50; // Max iterations

RNNLM lm = new RNNLM(conf);
lm.train();

Size of Hidden Layer

  • < 1M words: 50 - 200
  • 1m - 10m words: 200 - 300
  • more words: the vocabulary size should be limited, rare words should be mapped to "<unk>"

Raphael Shu (2014) (still in process)

You can’t perform that action at this time.