PAC Learning

Suppose you want to build a spam filter and you only have 10,000 labeled emails. How many examples are enough to guarantee your filter works well on future, unseen emails? It should work well not just on the ones you trained on. This is not a question about a specific algorithm. It is a question about learning itself. It demands a mathematical definition of what "learning from data" even means. Only then can we ask how much data it costs. The Probably Approximately Correct (PAC) framework supplies exactly this definition. It was introduced by Leslie Valiant in 1984. It turns the vague hope "the model generalizes" into a precise probabilistic guarantee. With high probability, the learned hypothesis will have low error on new data. This holds provided the learner sees enough training examples. This reframes machine learning as a question in a branch of theoretical computer science and statistics. It lets us prove — not just observe empirically — how many samples a task requires. It also lets us determine which hypothesis classes are learnable at all. The framework matters in real systems for an important reason. It separates statistical difficulty from computational difficulty. It gives engineers a principled answer to "how much data do I need?" Before deploying a model, sample complexity bounds tell you the order of magnitude of data required. This depends on desired accuracy, confidence, and the complexity of the hypothesis class. This is the theoretical backbone behind generalization bounds used to justify regularization. It also explains why simpler models can need far less data than complex ones. Both may need to reach the same guarantee. This article builds the PAC definition from first principles. It derives the sample complexity bound for finite hypothesis classes using a clean union-bound argument. It walks through a fully worked numerical example. It previews how the same machinery extends to infinite hypothesis classes via VC Dimension. This sets up the deeper study of the The Bias-Complexity Tradeoff.

Key takeaways
  • PAC learning formalizes "learning" as: with probability ≥ 1−δ, output a hypothesis with error ≤ ε, using finitely many samples.
  • It requires two independent tolerances — accuracy (ε) and confidence (δ) — hence "probably" and "approximately."
  • For finite hypothesis classes, Empirical Risk Minimization (ERM) PAC-learns with sample complexity roughly (1/ε)(ln|H| + ln(1/δ)).
  • The proof rests on a union bound over "bad" hypotheses combined with Hoeffding-style concentration inequalities.
  • Agnostic PAC learning relaxes the realizability assumption, replacing exact zero error with near-optimal error.
  • The framework foreshadows VC Dimension, which extends sample complexity bounds to infinite hypothesis classes.
The core insight

PAC learning defines learnability as a quantitative guarantee — a learner needs only polynomially many samples in 1/ε, 1/δ, and a complexity measure of the hypothesis class to be probably (1−δ) approximately (ε-close) correct.

The idea

Let X\mathcal{X} be an instance space (e.g., feature vectors) and Y={0,1}\mathcal{Y} = \{0,1\} a label space. Assume examples (x,y)(x,y) are drawn i.i.d. from an unknown distribution D\mathcal{D} over X×Y\mathcal{X} \times \mathcal{Y}. A hypothesis class H\mathcal{H} is a set of functions h:X→Yh: \mathcal{X} \to \mathcal{Y} that the learner is allowed to choose from. The true (generalization) error of a hypothesis is

LD(h)=Pr⁡(x,y)∼D[h(x)≠y].L_{\mathcal{D}}(h) = \Pr_{(x,y)\sim \mathcal{D}}\big[h(x) \neq y\big].

Since D\mathcal{D} is unknown, the learner only observes a training sample S={(x1,y1),…,(xm,ym)}S = \{(x_1,y_1), \dots, (x_m,y_m)\} drawn i.i.d. from D\mathcal{D}, and can compute the empirical error

LS(h)=1m∑i=1m1[h(xi)≠yi].L_S(h) = \frac{1}{m}\sum_{i=1}^m \mathbf{1}[h(x_i) \neq y_i].

A learning algorithm AA takes SS and outputs a hypothesis hS=A(S)∈Hh_S = A(S) \in \mathcal{H}. The realizable case assumes some h⋆∈Hh^\star \in \mathcal{H} achieves LD(h⋆)=0L_{\mathcal{D}}(h^\star) = 0. A hypothesis class H\mathcal{H} is PAC learnable if there exists an algorithm AA and a function mH(ϵ,δ)m_{\mathcal{H}}(\epsilon,\delta) such that for every distribution D\mathcal{D}, every labeling consistent with some h⋆∈Hh^\star \in \mathcal{H}, and every ϵ,δ∈(0,1)\epsilon, \delta \in (0,1): given a sample of size m≥mH(ϵ,δ)m \ge m_{\mathcal{H}}(\epsilon,\delta) drawn i.i.d. from D\mathcal{D}, the algorithm outputs hSh_S satisfying

Pr⁡S∼Dm[LD(hS)≤ϵ]≥1−δ.\Pr_{S \sim \mathcal{D}^m}\big[L_{\mathcal{D}}(h_S) \le \epsilon\big] \ge 1-\delta.

The word "probably" refers to the confidence 1−δ1-\delta over the random draw of the sample; the word "approximately correct" refers to the accuracy tolerance ϵ\epsilon on the true error. Crucially, mHm_{\mathcal{H}} must not depend on D\mathcal{D} — the guarantee is distribution-free — and for efficient (computationally) PAC learning, mHm_{\mathcal{H}} and the algorithm's running time must be polynomial in 1/ϵ1/\epsilon, 1/δ1/\delta, and the representation size of the problem. The agnostic version drops the realizability assumption entirely: there need be no perfect hypothesis. The goal becomes competing with the best hypothesis in the class, h⋆=arg⁡min⁡h∈HLD(h)h^\star = \arg\min_{h\in\mathcal{H}} L_{\mathcal{D}}(h), guaranteeing LD(hS)≤LD(h⋆)+ϵL_{\mathcal{D}}(h_S) \le L_{\mathcal{D}}(h^\star) + \epsilon with probability ≥1−δ\ge 1-\delta. This matches real-world settings where no hypothesis in H\mathcal{H} is perfect (label noise, model misspecification) and is the version most directly connected to Empirical Risk Minimization as used in practice.

How it works

The canonical PAC learning algorithm for the realizable, finite-hypothesis-class setting is simply ERM: return any hypothesis consistent with all training examples. The theoretical content is not in a clever algorithm but in the proof that ERM's output generalizes, and in computing precisely how large mm must be.

Step 1 — Define "bad" hypotheses. Call h∈Hh \in \mathcal{H} bad if LD(h)>ϵL_{\mathcal{D}}(h) > \epsilon. We want to bound the probability that ERM ever returns a bad hypothesis.

Step 2 — Bound the failure probability of one bad hypothesis. If hh is bad (LD(h)>ϵL_{\mathcal{D}}(h) > \epsilon) but is realizable-consistent with the sample (LS(h)=0L_S(h)=0), that is a fluke. Since examples are i.i.d.,

Pr⁡[LS(h)=0∣LD(h)>ϵ]≤(1−ϵ)m≤e−ϵm.\Pr[L_S(h) = 0 \mid L_{\mathcal{D}}(h) > \epsilon] \le (1-\epsilon)^m \le e^{-\epsilon m}.

Step 3 — Union bound over all bad hypotheses. There are at most ∣H∣|\mathcal{H}| hypotheses total, so

Pr⁡[∃h∈H:LD(h)>ϵ and LS(h)=0]≤∣H∣ e−ϵm.\Pr\big[\exists h \in \mathcal{H}: L_{\mathcal{D}}(h) > \epsilon \text{ and } L_S(h) = 0\big] \le |\mathcal{H}| \, e^{-\epsilon m}.

Step 4 — Solve for mm. Setting the right side ≤δ\le \delta and solving gives the sample complexity bound derived formally below. The pseudocode below implements ERM for a finite hypothesis class in the realizable setting, together with the sample-size calculation that gives the PAC guarantee. ``` ALGORITHM PAC-ERM-FiniteH INPUT: hypothesis class H (finite, |H| known), accuracy eps, confidence delta, sample oracle SAMPLE() that draws i.i.d. (x, y) ~ D OUTPUT: hypothesis h_S with Pr[ L_D(h_S) <= eps ] >= 1 - delta 1. m <- ceil( (1/eps) ( ln(|H|) + ln(1/delta) ) ) // sample complexity 2. S <- {} 3. for i = 1 to m: 4. (x_i, y_i) <- SAMPLE() 5. S <- S + {(x_i, y_i)} 6. // ERM step: find ANY hypothesis consistent with all of S 7. for h in H: 8. if all (x,y) in S satisfy h(x) == y: 9. return h // guaranteed to exist if realizable 10. return FAIL // should not happen if H is realizable for this D ``` Line 1 is the theoretical core: it is not a tuning knob but a derived formula guaranteeing the PAC bound. Lines 7–9 are a brute-force search; in practice a concrete hypothesis class comes with an efficient consistency-finding algorithm (e.g., linear programming for halfspaces, a decision-tree induction routine, etc.), and computational efficiency of that search is a separate question from the statistical* question this pseudocode answers. The figure below shows the logical structure of the argument: the full hypothesis space, the (usually small) island of "bad" hypotheses that also happen to fit the sample, and how the union bound shrinks that island's probability mass as mm grows.

Figure
The PAC argument: bounding the chance that a bad hypothesis looks good on the sample
Hypothesis Space H All hypotheses in H Good: L_D(h) ≤ ε Bad: L_D(h) > ε fits S (the danger zone) shrinks as m ↑ (prob ≤ |H| e^(−εm)) ERM fails only if it lands in the shrinking "fits S but bad" region

Complexity & correctness

Sample complexity derivation. From Step 3 above, we want

∣H∣ e−ϵm≤δ.|\mathcal{H}|\, e^{-\epsilon m} \le \delta.

Taking logarithms:

ln⁡∣H∣−ϵm≤ln⁡δ⟹m≥1ϵ(ln⁡∣H∣+ln⁡1δ).\ln|\mathcal{H}| - \epsilon m \le \ln \delta \quad\Longrightarrow\quad m \ge \frac{1}{\epsilon}\Big(\ln|\mathcal{H}| + \ln\frac{1}{\delta}\Big).

So the sample complexity is

mH(ϵ,δ)=⌈ln⁡∣H∣+ln⁡(1/δ)ϵ⌉.m_{\mathcal{H}}(\epsilon,\delta) = \left\lceil \frac{\ln|\mathcal{H}| + \ln(1/\delta)}{\epsilon} \right\rceil.

This is honest and tight up to constants: the 1/ϵ1/\epsilon dependence is unavoidable (a matching lower bound Ω(1/ϵ)\Omega(1/\epsilon) can be shown via a two-hypothesis "coin-flip" construction), and ln⁡∣H∣\ln|\mathcal{H}| captures that richer hypothesis classes need more data — but only logarithmically many more, since a union bound over an exponentially large class still only costs a linear increase in required mm. This is why classes like "all decision trees over nn boolean features of depth dd," with ∣H∣≈22d|\mathcal{H}| \approx 2^{2^d}-ish combinatorial size, still have manageable sample complexity in terms of dd and nn as long as ln⁡∣H)\ln|\mathcal{H}) is polynomial in the description length.

Correctness argument (why the bound guarantees PAC learning). Run ERM with m≥mH(ϵ,δ)m \ge m_{\mathcal{H}}(\epsilon,\delta) samples. By realizability, ERM always finds some hSh_S with LS(hS)=0L_S(h_S) = 0 (line 9 always succeeds). The only way this returned hypothesis can fail the guarantee is if hSh_S is bad (LD(hS)>ϵL_{\mathcal{D}}(h_S) > \epsilon) and consistent with SS (LS(hS)=0L_S(h_S)=0) — exactly the event bounded in Step 3. By the choice of mm, that event has probability at most δ\delta. Hence with probability at least 1−δ1-\delta over the sample, every consistent hypothesis (in particular hSh_S) has LD(hS)≤ϵL_{\mathcal{D}}(h_S) \le \epsilon. This is the entire proof; no assumption about the algorithm's internal search strategy is needed beyond "return something consistent."

Where Hoeffding's inequality enters (agnostic case). In the agnostic setting there is no perfect hypothesis, so instead we bound, for a fixed hh, the deviation between empirical and true error using Hoeffding's inequality:

Pr⁡[∣LS(h)−LD(h)∣>ϵ/2]≤2e−2m(ϵ/2)2.\Pr\big[|L_S(h) - L_{\mathcal{D}}(h)| > \epsilon/2\big] \le 2e^{-2m(\epsilon/2)^2}.

A union bound over ∣H∣|\mathcal{H}| hypotheses again gives a uniform convergence guarantee, and choosing hS=arg⁡min⁡hLS(h)h_S = \arg\min_h L_S(h) yields LD(hS)≤LD(h⋆)+ϵL_{\mathcal{D}}(h_S) \le L_{\mathcal{D}}(h^\star) + \epsilon with probability ≥1−δ\ge 1-\delta, at sample complexity m=O ⁣(ln⁡∣H∣+ln⁡(1/δ)ϵ2)m = O\!\left(\frac{\ln|\mathcal{H}| + \ln(1/\delta)}{\epsilon^2}\right) — note the worse 1/ϵ21/\epsilon^2 dependence, reflecting the harder task of estimating errors rather than merely detecting zero error.

Time complexity of the algorithm itself. The pseudocode's ERM search (lines 7–9) costs O(m⋅∣H∣)O(m \cdot |\mathcal{H}|) in the naive brute-force form — checking each hypothesis against each sample. This is not generally polynomial, since ∣H∣|\mathcal{H}| can be exponential in the problem's natural parameters (e.g., all boolean functions on nn bits has ∣H∣=22n|\mathcal{H}| = 2^{2^n}). Efficient PAC learning additionally requires a polynomial-time algorithm to find a consistent hypothesis — this is a separate, often much harder, computational question (some classes are statistically learnable with few samples but are NP-hard to learn efficiently, e.g., learning 3-term DNF formulas).

Tradeoffs to be honest about:

  • The bound is distribution-free (worst-case over D\mathcal{D}), so it is often loose for "easy" real-world distributions — practical sample needs are frequently far smaller.
  • Finite-∣H∣|\mathcal{H}| bounds don't directly apply to continuous hypothesis classes (e.g., all linear separators over Rd\mathbb{R}^d), which have ∣H∣=∞|\mathcal{H}| = \infty; this motivates replacing ln⁡∣H∣\ln|\mathcal{H}| with the VC Dimension, a combinatorial measure of effective capacity.
  • The realizable-case bound (1/ϵ1/\epsilon) is statistically better than the agnostic bound (1/ϵ21/\epsilon^2), so assuming realizability when it doesn't hold can give false confidence.

Worked example

Consider learning conjunctions of boolean literals over n=10n=10 boolean features (each feature can appear positively, negatively, or not at all in the conjunction) — a classic PAC-learnable class. The hypothesis class size is

∣H∣=310=59,049.|\mathcal{H}| = 3^{10} = 59{,}049.

Suppose we want accuracy ϵ=0.1\epsilon = 0.1 (at most 10% true error) with confidence 1−δ=0.951-\delta = 0.95 (so δ=0.05\delta = 0.05).

QuantityValue
nn (features)10
∣H∣=3n\lvert \mathcal{H}\rvert = 3^n59,049
ln⁡∣H∣\ln\lvert\mathcal{H}\rvertln⁡(59049)≈10.986\ln(59049) \approx 10.986
ln⁡(1/δ)=ln⁡(20)\ln(1/\delta) = \ln(20)≈2.996\approx 2.996
Sum≈13.982\approx 13.982
Divide by ϵ=0.1\epsilon = 0.1≈139.82\approx 139.82
mH(ϵ,δ)=⌈⋅⌉m_{\mathcal{H}}(\epsilon,\delta) = \lceil \cdot \rceil140 samples

So with only 140 labeled i.i.d. training examples, running ERM (find any conjunction consistent with all 140 examples — efficiently doable by the standard "eliminate contradicted literals" algorithm for this class) guarantees that, with probability at least 95%, the returned conjunction has true error at most 10%. Now watch how sensitively mm scales. Suppose the number of features grows to n=100n = 100 (a 10× increase), keeping ϵ,δ\epsilon, \delta fixed:

ln⁡∣H∣=ln⁡(3100)=100ln⁡3≈109.86,m≈109.86+2.9960.1≈1128.6⇒m=1129.\ln|\mathcal{H}| = \ln(3^{100}) = 100\ln 3 \approx 109.86, \qquad m \approx \frac{109.86 + 2.996}{0.1} \approx 1128.6 \Rightarrow m = 1129.

A 10× increase in features (an exponential blow-up in ∣H∣|\mathcal{H}| from 3103^{10} to 31003^{100}) only causes roughly an 8× increase in required samples — this is the logarithmic dependence on ∣H∣|\mathcal{H}| paying off exactly as the derivation promised. Compare this to demanding tighter accuracy: halving ϵ\epsilon from 0.10.1 to 0.050.05 at n=10n=10 gives

m≈13.9820.05≈279.6⇒m=280,m \approx \frac{13.982}{0.05} \approx 279.6 \Rightarrow m = 280,

a clean doubling, confirming the 1/ϵ1/\epsilon linear dependence on accuracy.

Common pitfalls & traps

PitfallWhy it happensFix
Confusing ϵ\epsilon and δ\deltaBoth look like "small numbers," but ϵ\epsilon bounds error, δ\delta bounds failure probabilityAlways ask: "error of what?" vs "probability of what?" separately
Assuming realizability holdsReal data is noisy; no hypothesis in H\mathcal{H} may achieve zero errorUse the agnostic PAC bound with 1/ϵ21/\epsilon^2 scaling instead
Treating mH(ϵ,δ)m_{\mathcal{H}}(\epsilon,\delta) as a tight/practical requirementThe bound is a worst-case, distribution-free sufficient condition, often looseUse it for order-of-magnitude planning, not as an exact prescription
Applying the finite-∣H∣\lvert\mathcal{H}\rvert formula to infinite hypothesis classesln⁡∣H∣=∞\ln|\mathcal{H}| = \infty for e.g. all linear classifiers over Rd\mathbb{R}^dUse VC Dimension-based bounds instead of ln⁡∣H∣\ln|\mathcal{H}|
Ignoring computational (not just statistical) costSmall sample complexity doesn't imply a fast algorithm exists to find a consistent hhCheck separately whether ERM is efficiently computable for the class
Forgetting the union bound is over all h∈Hh \in \mathcal{H}, not just the returned oneThe guarantee is proven by bounding failure for every consistent hypothesis simultaneouslyThis is a feature, not a bug — it's what makes the bound hold regardless of tie-breaking in ERM

Pioneers & history

Origins · 1 minLeslie Gabriel Valiant and how this was discovered
LG
Leslie Gabriel Valiant
1949–present · Turing Award laureate, Harvard University, theoretical computer science

Valiant introduced the PAC learning framework in his 1984 paper "A Theory of the Learnable," founding computational learning theory as a rigorous branch of computer science. He connected learnability to computational complexity, showing that some concept classes are statistically learnable with few examples yet computationally intractable to learn efficiently — a distinction central to the modern theory. He received the 2010 Turing Award, with the PAC framework cited as a foundational contribution alongside his work on parallel computation and computational neuroscience.

History
1984
— Leslie Valiant publishes "A Theory of the Learnable," defining PAC learning.
1989
— Blumer, Ehrenfeucht, Haussler, and Warmuth connect PAC learnability to the VC Dimension, characterizing exactly which classes are learnable.
1992
— Kearns and Valiant formalize efficient PAC learning and boosting-related weak-learnability questions.
1990
s — Freund and Schapire's AdaBoost emerges from PAC-theoretic "weak learning" questions, linking theory directly to practical algorithms.
2000
s–present — PAC-Bayes and agnostic PAC frameworks extend the theory to modern statistical learning and deep learning generalization analysis.

Where this matters

PAC-style sample complexity reasoning underlies how practitioners estimate labeled-data budgets before launching a data collection effort, especially in domains like medical diagnosis models or fraud detection where labels are expensive. The theoretical distinction between statistical learnability (how much data suffices) and computational learnability (whether a fast algorithm exists) explains why certain hypothesis classes — like small decision trees or halfspaces — are preferred in practice: they are efficiently PAC learnable, whereas classes like arbitrary boolean circuits are not known to be, under standard cryptographic hardness assumptions. The framework's descendants are everywhere in applied machine learning theory: generalization bounds quoted in papers on neural network capacity, the theoretical justification for cross-validation and regularization strength selection, and PAC-Bayes bounds used to certify generalization for stochastic and Bayesian neural networks. Boosting algorithms (AdaBoost and its descendants, used in gradient-boosted tree libraries like XGBoost and LightGBM) trace their theoretical origin directly to Kearns and Valiant's PAC-theoretic question of whether "weak" learners (barely better than random guessing) can be combined into a "strong" learner. Model-complexity-aware training — early stopping, weight decay, and architecture search — is philosophically downstream of the PAC insight that hypothesis class richness must be paid for in sample size, a relationship made precise for infinite classes through the VC Dimension and generalized in The Bias-Complexity Tradeoff.

Ask the tutor: How does the PAC sample complexity formula change when moving from a finite hypothesis class to one with infinite hypotheses but finite VC dimension?

Is PAC learning the same as saying a model will always generalize well?

No. PAC learning gives a probabilistic guarantee, not a certainty: it promises that with probability at least 1−δ1-\delta over the random draw of the training sample, the learned hypothesis has true error at most ϵ\epsilon. There is always a residual δ\delta chance the sample was unrepresentative enough that the guarantee fails — you cannot rule this out with finite data. PAC learning also assumes examples are drawn i.i.d. from a fixed distribution D\mathcal{D}, and that the same D\mathcal{D} generates future test data; if that assumption breaks (distribution shift), the guarantee no longer applies. It's best understood as a rigorous minimum data requirement, not an absolute promise of real-world performance.

Why does the sample complexity depend only logarithmically on the size of the hypothesis class?

This falls directly out of the union-bound proof: the probability that a specific bad hypothesis fits the training sample by chance decays exponentially in the sample size mm, roughly as e−ϵme^{-\epsilon m}. To control the probability that any of ∣H∣|\mathcal{H}| hypotheses is bad-yet-fits, we multiply by ∣H∣|\mathcal{H}| and require the product to stay below δ\delta. Because the exponential decay is so fast, absorbing a multiplicative factor of ∣H∣|\mathcal{H}| only costs an additive ln⁡∣H∣\ln|\mathcal{H}| term after taking logarithms. This is why exponentially large but structurally simple hypothesis classes remain learnable with modest data.

What is the difference between PAC learning and standard statistical estimation (e.g., maximum likelihood)?

Classical statistical estimation typically studies asymptotic behavior — what happens as sample size n→∞n \to \infty — often assuming a known parametric model family. PAC learning instead demands finite-sample, distribution-free guarantees: a concrete bound on mm that works for every distribution D\mathcal{D} consistent with the assumptions, not just asymptotically or for one specific distribution. PAC learning also explicitly incorporates computational tractability (efficient PAC learning requires polynomial-time algorithms), a concern less central to classical estimation theory. The two fields have since cross-pollinated heavily, especially through PAC-Bayesian analysis.

Does PAC learning apply to modern deep neural networks?

Directly applying the classical finite-hypothesis-class PAC bound to deep networks doesn't work well: networks have effectively infinite or astronomically large hypothesis classes (viewed as real-valued parameter spaces), so naive bounds using ln⁡∣H∣\ln|\mathcal{H}| or even VC dimension are often vacuous — larger than 1. Modern theoretical work uses refinements like PAC-Bayes bounds, margin-based bounds, and norm-based complexity measures to get non-vacuous guarantees for deep learning. The core PAC philosophy — trade off hypothesis complexity against sample size for a generalization guarantee — remains the conceptual foundation, even though the specific finite-class formula is too crude for these models.

What is the relationship between PAC learning and Empirical Risk Minimization?

ERM is the algorithm; PAC learning is the guarantee. ERM says: output the hypothesis in H\mathcal{H} that minimizes training error (or is perfectly consistent, in the realizable case). PAC learning theory proves that, for finite or low-complexity hypothesis classes, ERM's output is provably close to the true best-in-class hypothesis given enough samples. Not every PAC learning algorithm must be ERM in principle, but for many natural hypothesis classes, ERM is both the natural and the provably PAC-optimal (up to constants) strategy — this is why the two concepts are so often discussed together.

Why is 'efficient' PAC learning a separate, harder condition than plain PAC learnability?

Plain PAC learnability only asks whether some algorithm, using polynomially many samples, can achieve the ε-δ guarantee — with no constraint on running time. Efficient PAC learning additionally requires the learning algorithm to run in time polynomial in the relevant parameters (1/ε, 1/δ, and problem size). Some concept classes are provably PAC learnable with modest sample sizes yet, under standard cryptographic hardness assumptions (e.g., related to factoring), have no known — and possibly no — polynomial-time learning algorithm. This separation shows that "enough data exists" and "we can efficiently use that data" are genuinely different questions.

How does PAC learning relate to VC dimension?

The formula m=O((ln⁡∣H∣+ln⁡(1/δ))/ϵ)m = O((\ln|\mathcal{H}| + \ln(1/\delta))/\epsilon) only works when H\mathcal{H} is finite, since ln⁡∣H∣\ln|\mathcal{H}| must be finite. For infinite hypothesis classes — like all linear separators in Rd\mathbb{R}^d — the VC Dimension provides the right complexity measure to substitute in its place, yielding sample complexity bounds of the form O((d⋅log⁡(1/ϵ)+log⁡(1/δ))/ϵ)O((d\cdot\log(1/\epsilon) + \log(1/\delta))/\epsilon) where dd is the VC dimension. The fundamental theorem of PAC learning states that a hypothesis class is PAC learnable if and only if it has finite VC dimension, making VC dimension the natural generalization of ln⁡∣H∣\ln|\mathcal{H}| and the crucial next concept to study after PAC learning.

Before this

Where this leads