Online Machine Learning (ML) Algorithm
Jump to navigation
Jump to search
An Online Machine Learning (ML) Algorithm is a machine learning algorithm that can be implemented into an online machine learning system to solve an online machine learning task (to learn from sequential data streams).
- AKA: Online ML Algorithm, Sequential Learning Algorithm, Streaming Learning Algorithm.
- Context:
- It can typically process Online ML Data Instances in a sequential manner without storing the complete online ML dataset.
- It can typically update its Online ML Model after receiving each new online ML data instance.
- It can typically adapt to online ML data distribution shifts in real-time.
- It can typically perform online ML prediction using the most recently updated online ML model.
- It can typically balance online ML computational efficiency with online ML prediction accuracy.
- It can typically minimize online ML cumulative loss over a sequential online ML learning process.
- It can typically handle online ML concept drift through continuous online ML model adaptation.
- It can typically operate under online ML memory constraints for large-scale data processing.
- ...
- It can often incorporate online ML forgetting mechanisms to prioritize recent online ML data instances.
- It can often employ online ML regularization techniques to prevent online ML overfitting.
- It can often implement online ML feature selection for online ML dimensionality reduction.
- It can often utilize online ML ensemble strategy to improve online ML prediction stability.
- It can often leverage online ML passive-aggressive updates based on online ML prediction errors.
- It can often balance online ML exploration with online ML exploitation for optimal online ML performance.
- It can often adapt online ML learning rates according to online ML performance metrics.
- It can often handle online ML missing values through online ML imputation techniques.
- ...
- It can range from being a Simple Online Machine Learning (ML) Algorithm to being a Complex Online Machine Learning (ML) Algorithm, depending on its online machine learning algorithmic complexity.
- It can range from being a Stateless Online Machine Learning (ML) Algorithm to being a Stateful Online Machine Learning (ML) Algorithm, depending on its online machine learning memory requirements.
- It can range from being a First-Order Online Machine Learning (ML) Algorithm to being a Second-Order Online Machine Learning (ML) Algorithm, depending on its online machine learning gradient information usage.
- It can range from being a Passive Online Machine Learning (ML) Algorithm to being an Aggressive Online Machine Learning (ML) Algorithm, depending on its online machine learning update strategy.
- It can range from being an Online IID Learning Algorithm to being an Online Structured Learning Algorithm, depending on its online machine learning data assumption.
- It can range from being a Single-Pass Online Machine Learning (ML) Algorithm to being a Multi-Pass Online Machine Learning (ML) Algorithm, depending on its online machine learning data revisiting approach.
- It can range from being a Supervised Online Machine Learning (ML) Algorithm to being an Unsupervised Online Machine Learning (ML) Algorithm, depending on its online machine learning feedback type.
- It can range from being a Linear Online Machine Learning (ML) Algorithm to being a Non-Linear Online Machine Learning (ML) Algorithm, depending on its online machine learning model complexity.
- ...
- It can be implemented in an Online ML Framework for real-time prediction tasks.
- It can integrate with Data Stream Management Systems for continuous data processing.
- It can utilize Online ML Feature Extraction for online ML representation learning.
- It can leverage Distributed Computing Systems for parallelized online ML processing.
- It can incorporate Online ML Evaluation Metrics for online ML performance monitoring.
- It can employ Online ML Drift Detection Mechanisms for online ML model update triggers.
- ...
- Examples:
- Online Classification Algorithms, such as:
- Online Binary Classification Algorithms, such as:
- Online Multi-Class Classification Algorithms, such as:
- Online Regression Algorithms, such as:
- Online Linear Regression Algorithms, such as:
- Online Non-Linear Regression Algorithms, such as:
- Online Structured Prediction Algorithms, such as:
- Online Ranking Algorithms, such as:
- Online Dimensionality Reduction Algorithms, such as:
- Online Clustering Algorithms, such as:
- Specialized Online ML Algorithms, such as:
- No-Regret Online Learning Algorithms, such as:
- Online Convex Optimization Algorithms, such as:
- Batch Learning Algorithms, such as:
- ...
- Online Classification Algorithms, such as:
- Counter-Example(s):
- a Contextual Bandits Algorithm, which requires action selection with immediate feedback rather than sequential prediction.
- an Incremental Learning Algorithm, which focuses on continuous model expansion rather than online adaptation.
- a Lazy Learning Algorithm, which defers computation until inference time rather than updating online machine learning models immediately.
- an Offline Learning Algorithm, which processes complete datasets rather than sequential data streams.
- a Reinforcement Learning Algorithm, which optimizes reward-based policy through environment interaction rather than focusing on online machine learning prediction.
- an Evolutionary Learning Algorithm, which employs population-based optimization rather than online instance-based learning.
- a Batch Processing Algorithm, which requires access to the entire dataset rather than individual online machine learning instances.
- a One-Shot Learning Algorithm, which aims to learn from single examples rather than continuous online machine learning data streams.
- See: Online Learning Theory, Online Processing, Data Stream Management, Evolutionary Learning Algorithm, Real-Time Recurrent Learning (RTRL) Algorithm, Winnow Algorithm, Sequential Learning, Streaming Data Analysis, Online-to-Batch Conversion, Concept Drift Detection.
References
2020
- (Wikipedia, 2020) ⇒ https://en.wikipedia.org/wiki/Online_machine_learning Retrieved:2020-9-28.
- In computer science, online machine learning is a method of machine learning in which data becomes available in a sequential order and is used to update the best predictor for future data at each step, as opposed to batch learning techniques which generate the best predictor by learning on the entire training data set at once. Online learning is a common technique used in areas of machine learning where it is computationally infeasible to train over the entire dataset, requiring the need of out-of-core algorithms. It is also used in situations where it is necessary for the algorithm to dynamically adapt to new patterns in the data, or when the data itself is generated as a function of time, e.g., stock price prediction.
Online learning algorithms may be prone to catastrophic interference, a problem that can be addressed by incremental learning approaches.
- In computer science, online machine learning is a method of machine learning in which data becomes available in a sequential order and is used to update the best predictor for future data at each step, as opposed to batch learning techniques which generate the best predictor by learning on the entire training data set at once. Online learning is a common technique used in areas of machine learning where it is computationally infeasible to train over the entire dataset, requiring the need of out-of-core algorithms. It is also used in situations where it is necessary for the algorithm to dynamically adapt to new patterns in the data, or when the data itself is generated as a function of time, e.g., stock price prediction.
2018
- (Hoi et al., 2018) ⇒ Steven C. H. Hoi, Doyen Sahoo, Jing Lu, and Peilin Zhao. (2018). “Online Learning: A Comprehensive Survey.” arXiv preprint arXiv:1802.02871
- ABSTRACT: Online learning represents an important family of machine learning algorithms, in which a learner attempts to resolve an online prediction (or any type of decision-making) task by learning a model/hypothesis from a sequence of data instances one at a time. The goal of online learning is to ensure that the online learner would make a sequence of accurate predictions (or correct decisions) given the knowledge of correct answers to previous prediction or learning tasks and possibly additional information. This is in contrast to many traditional batch learning or offline machine learning algorithms that are often designed to train a model in batch from a given collection of training data instances. This survey aims to provide a comprehensive survey of the online machine learning literatures through a systematic review of basic ideas and key principles and a proper categorization of different algorithms and techniques. Generally speaking, according to the learning type and the forms of feedback information, the existing online learning works can be classified into three major categories: (i) supervised online learning where full feedback information is always available, (ii) online learning with limited feedback, and (iii) unsupervised online learning where there is no feedback available. Due to space limitation, the survey will be mainly focused on the first category, but also briefly cover some basics of the other two categories. Finally, we also discuss some open issues and attempt to shed light on potential future research directions in this field.
2008
- (Yang et al., 2008) ⇒ Xiaofeng Yang, Jian Su, Jun Lang, Chew Lim Tan, Ting Liu, and Sheng Li. (2008). “An Entity-Mention Model for Coreference Resolution with Inductive Logic Programming.” In: Proceedings of ACL Conference (ACL 2008).
- Culotta et al. (2007) present a system which uses an online learning approach to train a classifier to judge whether two entities are coreferential or not.
2006
- (Cesa-Bianchi & Lugosi, 2006) ⇒ Nicolo Cesa-Bianchi, and Gabor Lugosi. (2006). “Prediction, Learning, and Games.” In: Cambridge University Press. ISBN: 0521841089.