Skip to content

Latest commit

 

History

History
33 lines (22 loc) · 1.46 KB

core_api_en.md

File metadata and controls

33 lines (22 loc) · 1.46 KB

Core API Classes


As shown above, Angel's core API classes, ordered by when (in general) they are called during model training, include:

  1. MLRunner
    • MLRunner creates AngelClient with factory class based on conf, and calls AngelClient's interfaces in order according to the standard train process
  • AngelClient

    • Starts PSServer
    • Initializes PSServer and loads empty model
    • After training, saves the model to HDFS from multiple PSServers
  • TrainTask

    • Starts train process when called by AngelClient
  • DataBlock

    • TrainTask calls parse and preProcess methods to read data from HDFS, and assemble data into DataBlock that contains multiple LabeledData
    • TrainTask calls train method to create, and pass DataBlock to, the MLLearner object
  • MLLearner

    • MLLearner calls its own learn method, reads DataBlock, computes the model delta, and pushes to / pull from PSServer through PSModel inside MLModel, eventually obtaining a complete MLModel
  • MLModel

    • According to the algorithm's need, creates and holds multiple PSModels
  • PSModel

    • Encapsulates all the interfaces in AngelClient that communicate with PSServer, facilitating MLLearner calls

Understanding these core classes and processes will be quite helpful for implementing high performance machine-learning algorithms that can run on Angel.