Creating Model

After completing the Neural Network, you can either choose to build the model directly or create a simulation to search for optimal hyper parameters.

On the Neural Network show page, choose ‘Create Model’.

Creating Model

Create a Model after creating a network

Or

Click on ‘Add New’ in the Models tab in Vega.

Creating Model

Create a Model from model tab

Model profile

You’ll be redirected to ‘model profile’ page:

Model Profile

Fill the Model profile

Fields to be filled

  • Name
    Model name should be mentioned without using any special characters
  • Description
    Description can written in continuous langage.
  • Access Type
    • Private
      Only you can see the model results
    • Public
      You can publish the model as public and other developers can see the model
  • Server Type
    • Free
      If you would like to run the model for a quick experimentation, choose this option. You’ll have 1 hour time slot to use the server. If you are in queue, you can see when your slot would get activated
    • Launch your own instance
      If the data sets are large and if you would like to launch your private instance, choose this option
      • Refer to servers and configuration details to know more about what server suits for you.
      • Server Initiation: Once you choose the instance, it’ll take about 10-12mins to launch the instance. You would see timer till the instance becomes active.

Select Network

You can either use the selected network or choose any other network from your private or publically available networks.

Select Network

Select Network

Network parameters

After defining the Model profile, specify the network parameters.

Model Profile

Fill the Network parameters

Parameters:

  • Layer-Bucket pair
    Select specific keys from buckets to attach the data form the key to that particular layer.
    For example - in image classification problem using AlexNet, the first layer is data layer so select ‘image’ key from your bucket(in image format) and for output, there is final Dense layer with class-labels as input, hence select the “image-label” key from same bucket.
    Model Profile

    Layer - Bucket pair

  • Number of Epochs
    Total number of epochs for training.One epoch means one forward pass and one backward pass of all the training examples
  • Batch Size
    The number of training examples in one mini-batch update.
  • Base Learning Rate
    Starting learning rate for the optimizer.
  • Percentage of training
    Percentage of Data to be used for training. Rest will be used for validation.
  • Options
    • Download data
      Check this option if training server should download the data. If left unchecked the data present on the server from previous training will be reused. Always check this box when model is training for first time.
    • Save model
      Check this option to store the network weights and parameters into our storage. This weights can be later used to create API’s

Training diagnosis

Once the instance is initiated, the data streaming and training will be initiated. It goes through three steps before initiating the training:

  • Data download
  • Data preparing

You can track the process through progress bar:

Progress bar for training

Progress bar for training

Training Failure

If there are any issues with reading training data or reading the neural network, you could see the response as :

Training failure

Training failure

Reasons:

  • Issue with Data download
    If the error is soon after the initiation of instance, then you need to relook at the bucket used for training and make sure data is downloadable.
  • Issue with Data Preparation
    If the error is after downloading data, then there might be issue with the specification of the data bucket.
  • Issue with Model training
    If the error is after data preparation, then there might be dimension mismatch between one or more network layer and its attached bucket key.

Training in Progress

Once the system start training, you can monitor the training at each and every epoch.

Training in progress

Training in progress

Model Performance parameters

You can track the performance of the model through

  1. Loss
    Loss on training data]
  2. Val_loss
    Loss on validation data
  3. Accuracy
    Accuracy on validation data.
  1. Loss

    Loss specifies how well the model is learning and performing on training data set. Loss is not percentage but only summation of errors made for each example. The loss is usually negative log-likelihood for classification and residual sum for regression problems.

    Loss

    Loss

  2. Val_loss

    Validation loss implies the learning and performance on validation data sets.

    Val_loss

    Val_loss

  3. Accuracy

    Accuracy is defined once the parameters are learnt and no learning is taking place. After feeding the samples, the accuracy is calculated on the ability to predict correctly.

    Note: Accuracy as a metric is only meaningful for classification problems. We will offer other metrics in a future update.
    Accuracy

    Accuracy