« Back to Glossary Index

Real-Time Machine Learning, also known as Online Machine Learning, is the process of training a Machine Learning model by running live data through it to continuously improve the model. This is in contrast to «traditional» machine learning, where one builds the model with a batch of historical data in an offline mode. More specifically, there are two main ways to train a Machine Learning model: batch (or offline) and online.

  • Batch (offline) ML: entire training data set must be made available prior to the learning task and used as a whole. The training process is often done in an offline environment due to the expensive training cost.
  • Online ML: learning from a sequence of data instances one by one at each time, which arrive in a sequential order; a learner aims to learn and update the best predictor for future data at every step.
    Models are updated instantly and efficiently according to incoming stream data and constantly learn new knowledge.

The latter is far more efficient and scalable for large-scale machine learning tasks in real-world data analytics applications where data are not only large in size, but also arrive at a high velocity.

See Online Learning: A Comprehensive Survey, Adaptive Online Incremental Learning for Evolving Data Streams, and Real-time machine learning: challenges and solutions for further details.