Details
The AlphaPy application's core architecture is centered around a flexible machine learning pipeline. The Main Application Entry serves as the initial launch point, directing control to the Core ML Pipeline Orchestrator. This orchestrator dynamically selects between the Training Pipeline and Prediction Pipeline based on the application's mode. Specialized Market Workflow Orchestrator and Sport Workflow Orchestrator components handle domain-specific data preparation and configuration, subsequently invoking the Core ML Pipeline Orchestrator to execute the appropriate ML phase. This design promotes modularity, allowing for distinct data handling and configuration while centralizing the core ML logic.
Main Application Entry
The primary entry point for the entire AlphaPy application. It is responsible for initiating the overall machine learning workflow, potentially delegating to more specific orchestrators based on user input or configuration.
Core ML Pipeline Orchestrator
Manages the high-level sequence of generic machine learning pipeline phases, specifically handling the training and prediction stages. It acts as a central coordinator for the core ML process, independent of the specific domain (market or sport).
Market Workflow Orchestrator
Coordinates the end-to-end workflow for market analysis. This includes loading market-specific configurations, preparing market data, and initiating the execution of the market-specific ML pipeline.
Sport Workflow Orchestrator
Manages the complete workflow for sport analysis. Its responsibilities include loading sport-specific configurations, preparing and enriching sport-related data, and orchestrating the subsequent ML processes for sports.
Training Pipeline
Represents the training phase of an ML pipeline, where models are fitted to data. This component encapsulates the logic for model training, including data preparation, feature engineering, model selection, and evaluation.
Prediction Pipeline
Represents the prediction phase of an ML pipeline, where trained models are used to make inferences on new data. This component encapsulates the logic for loading models, preparing new data, and generating predictions.