August 3, 2017

Architecture

Nirdizati Training is composed of a front-end application, which allows users to select the prediction methods and to assess the goodness-of-fit of the built models, and a back-end application responsible for the actual training and validation. The back-end application is, in turn, composed of four submodules shown in the figure below. A Log Manager is in charge of managing the logs. Uploading and retrieving the logs are the basic operations of this module. The Encoder is responsible for parsing the logs, labeling them according to the desired type of prediction, and preparing the data for the training phase. In the Training submodule, the encoded data is split into training and validation set used for evaluation purposes, and the predictive models are built from the training data. Finally, the Evaluation submodule tests the validation data against the created model(s) to get accuracy measures with respect to the ground truth, available from the complete traces in the validation data. The back-end application comes with a storage module for saving the uploaded logs and the generated predictive models.