Implementing an LSTM model for HAR
The overall algorithm (HumanAR.scala
) has the following workflow:
- Loading the data
- Defining hyperparameters
- Setting up the LSTM model using imperative programming and the hyperparameters
- Applying batch wise training, that is, picking batch size data, feeding it to the model, then at some iterations evaluating the model and printing the batch loss and the accuracy
- Output the chart for the training and test errors
The preceding steps can be followed and constructed by way of a pipeline:
Figure 10: MXNet pre-built binary generated
Now let's start the implementation step-by-step. Make sure that you understand each line of code then import the given project in Eclipse or SBT.
Step 1 - Importing necessary libraries and packages
Let's start coding now. We start from the very beginning, that is, by importing libraries and packages:
package com.packt.ScalaML.HAR import ml.dmlc.mxnet.Context import LSTMNetworkConstructor.LSTMModel import scala.collection.mutable.ArrayBuffer...