Learning Distributed Word Representations with Neural Network: an implementation from scratch in Octave