What is Computational Learning Theory?#
Definition#
Computational Learning Theory (CoLT) refers to the application of formal mathematical definitions to learning systems (machinelearningmastery.com). As part of CoLT, we are interested in…
- Defining learning problems
- Demonstrating that specific algorithms work in the context of these problems
- Reasoning about how and why these problems are fundamentally difficult
CoLT is somewhat analogous to complexity analysis in computer science. For example, computing theory analyzes how algorithms use resources such as time and space. In the context of CoLT, resources such as time, space, and data are important considerations.
Inductive Learning and CoLT#
Recall that supervised learning is a form of Inductive Learning - given a set of specific instances, we would like to infer the general pattern underlying these instances.
Inductive learning involves a number of quantifiable components:
- Probability of successful training
- Number of examples to train on
- Complexity of hypothesis class
- Accuracy to which target concept is approximated
- Manner in which training examples are presented (batch vs. online)
- Manner in which training examples are selected (more below).
With regards to the last point, how are training instances generated? We have three possible scenarios:
- Learner asks questions of teacher to produce instances.
- Teacher selects instances to help learner.
- Instances are drawn from a fixed, natural distribution.
With regards to inductive learning and CoLT, we make the following definitions:
- Computational Complexity: amount of computational effort required for learner to converge.
- Sample Complexity: number of training instances necessary for learner to create successful hypothesis.
- Mistake Bounds: number of misclassifications a learner is permitted to make over an infinite run.
Computational Learning Subfields#
Version Spaces#
The Version Space for a machine learning problem is the set of all candidate hypotheses produced by the learning algorithm that are consistent with the true concept.
To be a member of the version space, the hypothesis should simply be consistent with the observed data. Consider the following example:

PAC Learning#
As part of any supervised learning problem, we have two main error values of interest:
- Training Error: fraction of training instances misclassified by hypothesis .
- True Error: fraction of instances that would be misclassified by on a sample drawn from the true data-generating distribution .
Let us define as our error goal, and as our certainty goal.
A class of concepts is considered PAC-Learnable via some learning algorithm if the learner will, with probability , output a hypothesis such that in time and samples polynomial in , , and . PAC stands for probably approximately correct - more specifically, correct!
A version space is considered epsilon-exhausted if all hypotheses within the version space have error lower than .
Haussler’s Theorem bounds true error as a function of sampled training examples.
Given some mathematical properties + rearrangement, we can solve for - the minimum number of training examples required to evaluate our version space - as follows:
(all images obtained from Georgia Tech ML course materials)