<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet type="text/xsl" href="https://www.mindfiretechnology.com/blog/rss/xslt"?>
<rss xmlns:a10="http://www.w3.org/2005/Atom" version="2.0">
  <channel>
    <title>Mindfire Technology</title>
    <link>https://www.mindfiretechnology.com/blog/</link>
    <description>Welcome to our blog, where we share technical and business knowledge based on real life experiences.</description>
    <generator>Articulate, blogging built on Umbraco</generator>
    <item>
      <guid isPermaLink="false">2749</guid>
      <link>https://www.mindfiretechnology.com/blog/archive/the-no-free-lunch-theorem-why-no-learning-algorithm-is-universally-best/</link>
      <category>System.String[]</category>
      <title>The No Free Lunch Theorem: Why No Learning Algorithm Is Universally Best</title>
      <description>&lt;p&gt;In my &lt;a href="https://www.mindfiretechnology.com/blog/archive/what-exactly-is-an-inductive-bias/"&gt;previous post on inductive bias&lt;/a&gt;, I ended with an open question: is there an &amp;quot;optimal&amp;quot; inductive bias -- one whose search space is universal but whose search strategy is still efficient and tractable for any problem?&lt;/p&gt;
&lt;p&gt;Aren't humans an &amp;quot;optimal&amp;quot; general learner compared to, say, existing machine learning algorithms? So intuitively it seems like the answer should be &amp;quot;yes, there is an optimal learner.&amp;quot;&lt;/p&gt;
&lt;p&gt;As it turns out, there is a mathematical proof known as the &amp;quot;No Free Lunch Theorem&amp;quot; that proves the answer is actually &amp;quot;no.&amp;quot; It is one of the most important results in the theory of optimization.&lt;/p&gt;
&lt;p&gt;In 1997, David Wolpert and William Macready published a paper called &lt;a href="https://www.cs.ubc.ca/~hutter/earg/papers07/00585893.pdf"&gt;&amp;quot;No Free Lunch Theorems for Optimization&amp;quot;&lt;/a&gt; that proved something remarkable: averaged over all possible problems, no optimization strategy performs better than any other. Including random search. Including random guessing. Including humans in the loop. &lt;em&gt;Every&lt;/em&gt; strategy that gains an advantage on some class of problems pays for it with equal disadvantage on another class.&lt;/p&gt;
&lt;p&gt;And when they say &amp;quot;strategy,&amp;quot; they mean it broadly. As Ho and Pepyne put it in their &lt;a href="https://faculty.cc.gatech.edu/~isbell/reading/papers/nfl-optimization-explanation.pdf"&gt;accessible explanation of the theorem&lt;/a&gt;: &amp;quot;Strategies include methods involving search, adaptation, learning, voting, feedback, dynamic programming, evolution, randomization, and even humans in the loop. In short, the concept of strategy covers any method for coming up with a solution to an optimization problem. Nothing can be more general or more inclusive&amp;quot; (Ho and Pepyne, 2001).&lt;/p&gt;
&lt;p&gt;This sounds absurd. We know that some algorithms work better than others in practice. How can all strategies be equally good? The answer lies in those three words: &amp;quot;all possible problems.&amp;quot; Let me show you why.&lt;/p&gt;
&lt;h2&gt;A Simple Pathfinding Problem&lt;/h2&gt;
&lt;p&gt;Imagine a robot that needs to find the shortest path from point A to point D through a small network:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;    B
   / \
  A   D
   \ /
    C
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;There are two possible routes:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Path 1:&lt;/strong&gt; A → B → D&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Path 2:&lt;/strong&gt; A → C → D&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Each path has a total distance. The robot does not know the distances in advance -- it must pick a path and find out. The goal is to pick the shorter one.&lt;/p&gt;
&lt;h2&gt;The Universe of All Possible Problems&lt;/h2&gt;
&lt;p&gt;Let us say each path's total distance can be Short (1), Medium (5), or Long (10). A &amp;quot;problem&amp;quot; is a specific assignment of distances to both paths. In the formal framework, each such assignment is a function -- labeled f0, f1, and so on -- that maps each path to a distance. Since each path can independently be 1, 5, or 10, there are 3 x 3 = 9 possible functions. Here they all are:&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;The P-Matrix: All 9 Possible Problems&lt;/strong&gt;&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;Problem:    f0   f1   f2   f3   f4   f5   f6   f7   f8
Path 1:      1    5   10    1    5   10    1    5   10
Path 2:      1    1    1    5    5    5   10   10   10
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;This table is what Ho and Pepyne call the &lt;strong&gt;P-matrix&lt;/strong&gt;. The rows represent the available choices. The columns represent every possible problem -- every possible assignment of distances to paths. The entries are the distances.&lt;/p&gt;
&lt;p&gt;Most of these nine problems will never occur in the real world. Some of them might correspond to a real map. Others are pure mathematical fiction -- worlds where both paths are equally short, or where the path that looks longer on a map is actually shorter. The P-matrix does not care about physical plausibility. It enumerates &lt;em&gt;everything&lt;/em&gt;.&lt;/p&gt;
&lt;p&gt;Now consider two strategies:&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Strategy 1:&lt;/strong&gt; Always take Path 1.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Strategy 2:&lt;/strong&gt; Always take Path 2.&lt;/p&gt;
&lt;p&gt;Strategy 1 gets the Path 1 distance on every problem: 1, 5, 10, 1, 5, 10, 1, 5, 10. &lt;strong&gt;Total: 48.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Strategy 2 gets the Path 2 distance on every problem: 1, 1, 1, 5, 5, 5, 10, 10, 10. &lt;strong&gt;Total: 48.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;The totals are identical. Averaged over all nine possible problems, neither strategy is better than the other.&lt;/p&gt;
&lt;h2&gt;Where Each Strategy Wins&lt;/h2&gt;
&lt;p&gt;The totals are the same, but the individual problems tell a more interesting story.&lt;/p&gt;
&lt;p&gt;Strategy 1 wins on f3, f6, and f7 -- problems where Path 1 is shorter than Path 2. Strategy 2 wins on f1, f2, and f5 -- problems where Path 2 is shorter. They tie on f0, f4, and f8.&lt;/p&gt;
&lt;p&gt;On the problems where Strategy 1 wins, it wins by a combined total of (5-1) + (10-1) + (10-5) = 18.&lt;/p&gt;
&lt;p&gt;On the problems where Strategy 2 wins, it wins by a combined total of (5-1) + (10-1) + (10-5) = 18.&lt;/p&gt;
&lt;p&gt;The gains and losses cancel perfectly. This is not a coincidence.&lt;/p&gt;
&lt;h2&gt;Why the P-Matrix Makes This Inevitable&lt;/h2&gt;
&lt;p&gt;Look at the P-matrix again. The columns enumerate &lt;em&gt;every possible&lt;/em&gt; combination of distances. In the Path 1 row, every possible distance (1, 5, 10) appears exactly three times. The same is true for the Path 2 row.&lt;/p&gt;
&lt;p&gt;Ho and Pepyne point out that mathematically this is a &lt;strong&gt;counting matrix&lt;/strong&gt; -- a matrix whose columns count through all possible value assignments. The key property of a counting matrix is that &lt;strong&gt;all row sums are equal&lt;/strong&gt;. You can verify this by inspection: both rows sum to 48. No row can have a higher total than any other when the columns enumerate every possible assignment. This is a mathematical certainty. We showed this for our small 2 x 9 matrix, but the property holds for any size. As long as the columns enumerate every possible combination of values, the matrix is a counting matrix and the row sums will always be equal.&lt;/p&gt;
&lt;p&gt;And &lt;em&gt;that&lt;/em&gt; is the No Free Lunch theorem. No matter what strategy you use -- no matter how sophisticated, how clever, how well-informed -- if you sum its performance across &lt;em&gt;all possible problems&lt;/em&gt;, you get the same total as any other strategy. The P-matrix is a counting matrix, and counting matrices have equal row sums. There is no way around this.&lt;/p&gt;
&lt;h2&gt;But Real Algorithms Do Work Better&lt;/h2&gt;
&lt;p&gt;If all strategies are truly equal, why do real algorithms outperform random guessing in practice?&lt;/p&gt;
&lt;p&gt;Because real problems are not drawn uniformly from all possible problems. The real world has structure.&lt;/p&gt;
&lt;p&gt;Consider the A-star algorithm, one of the most effective pathfinding algorithms ever developed. A-star uses a heuristic to decide which paths to explore first. In our network, if B is geographically close to D, A-star's heuristic estimates that the path through B is likely shorter. It explores that path first.&lt;/p&gt;
&lt;p&gt;This heuristic relies on a specific assumption about the world: that geographic proximity correlates with travel distance. In Euclidean space, this is guaranteed. If B is close to D as the crow flies, then the travel distance from B to D cannot be wildly longer than the straight-line distance. This property -- essentially the triangle inequality -- is what makes A-star's heuristic &lt;em&gt;admissible&lt;/em&gt;, meaning it never overestimates the true remaining distance.&lt;/p&gt;
&lt;p&gt;In the real world, this assumption holds. Roads may be winding, but a point that is one mile away as the crow flies is never a thousand miles away by road. A-star exploits this structure to prune bad paths without exploring them, which is what makes it fast and effective.&lt;/p&gt;
&lt;p&gt;But now imagine a world with a trans-dimensional hopper -- a device that warps space so that two points that are far apart as the crow flies can have a travel distance of nearly zero--or even a physically impossible negative distance. In this world, node C might be geographically far from D, but the hopper road from C to D is absurdly short. A-star's heuristic looks at C, estimates a long remaining distance based on the straight-line measurement, and concludes &amp;quot;that direction is not worth exploring.&amp;quot; It prunes the path through C -- the path that, thanks to the hopper, is actually the shortest.&lt;/p&gt;
&lt;p&gt;A-star does not just miss the optimal path. It &lt;em&gt;confidently excludes&lt;/em&gt; it. Its heuristic, which is so reliable in the real world, becomes actively misleading in a world where the relationship between straight-line distance and travel distance is broken. But a random search strategy -- which assigns no meaning to geographic proximity and just tries paths arbitrarily -- would have an equal chance of stumbling onto the hopper path.&lt;/p&gt;
&lt;p&gt;This is the No Free Lunch theorem made concrete. A-star's inductive bias is the assumption that geometry is well-behaved. That assumption makes it brilliant in our world and blind in the hopper world. The P-matrix contains both kinds of worlds, and the gains and losses cancel.&lt;/p&gt;
&lt;h2&gt;The Connection to Neural Networks&lt;/h2&gt;
&lt;p&gt;The same logic applies to every learning algorithm we have discussed in this series.&lt;/p&gt;
&lt;p&gt;Recall from the &lt;a href="https://www.mindfiretechnology.com/blog/archive/what-exactly-is-an-inductive-bias/"&gt;inductive bias post&lt;/a&gt; that Mitchell characterized backpropagation's inductive bias as &amp;quot;smooth interpolation between data points.&amp;quot; A neural network trained with backpropagation assumes that the underlying function is smooth -- that nearby inputs produce nearby outputs. This is what allows it to generalize from training data to new examples.&lt;/p&gt;
&lt;p&gt;But the NFL theorem tells us: for every smooth function where this assumption helps, there exists an anti-smooth function where it hurts by exactly the same amount. A function where nearby inputs map to wildly different outputs will fool the neural network into confidently predicting smooth transitions that do not exist. On that function, random guessing would do just as well.&lt;/p&gt;
&lt;p&gt;The neural network's situation is identical to A-star's. Its inductive bias -- smoothness -- makes it powerful on the kinds of problems the real world actually presents. But that power comes at a cost: poor performance on problems that violate the assumption. The P-matrix contains both kinds, and the row sums are equal.&lt;/p&gt;
&lt;h2&gt;The Connection to Popper&lt;/h2&gt;
&lt;p&gt;This is Mitchell's &amp;quot;futility of bias-free learning&amp;quot; -- from our &lt;a href="https://www.mindfiretechnology.com/blog/archive/induction-is-a-myth-the-futility-of-unbiased-learning/"&gt;first post in this series&lt;/a&gt; -- generalized to all of optimization.&lt;/p&gt;
&lt;p&gt;Mitchell showed that a single learning algorithm with no inductive bias cannot generalize at all. The NFL theorem shows something broader: not only do you need an inductive bias to generalize, but &lt;strong&gt;no single inductive bias is universally best&lt;/strong&gt;. Every bias helps on some problems and hurts on others. There is no free lunch.&lt;/p&gt;
&lt;p&gt;And this is Karl Popper's point yet again. There is no universal method of discovery. There is no algorithm that works for everything. Every act of learning, every act of optimization, every act of scientific discovery requires prior assumptions about the structure of the problem. Those assumptions are what make progress possible -- but they are also what make us fallible. For some class of problems, they necessarily fail.&lt;/p&gt;
&lt;p&gt;The question is never whether your algorithm has assumptions. It always does. The question is whether those assumptions match the world you are actually in.&lt;/p&gt;
&lt;p&gt;The No Free Lunch Theorem was first proved by &lt;a href="https://www.cs.ubc.ca/~hutter/earg/papers07/00585893.pdf"&gt;Wolpert and Macready (1997)&lt;/a&gt;. The P-matrix framework and counting matrix explanation is from &lt;a href="https://faculty.cc.gatech.edu/~isbell/reading/papers/nfl-optimization-explanation.pdf"&gt;Ho and Pepyne (2001)&lt;/a&gt;. All references to Mitchell are from &lt;a href="https://www.cs.cmu.edu/~tom/files/MachineLearningTomMitchell.pdf"&gt;&lt;em&gt;Machine Learning&lt;/em&gt; (McGraw-Hill, 1997)&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;If you need help with your &lt;a href="https://www.mindfiretechnology.com/services/artificial-intelligence/"&gt;Artificial Intelligence solutions, we're here to help&lt;/a&gt;.&lt;/p&gt;
</description>
      <pubDate>Thu, 14 May 2026 00:00:00 -0600</pubDate>
      <a10:updated>2026-05-14T00:00:00-06:00</a10:updated>
    </item>
    <item>
      <guid isPermaLink="false">2747</guid>
      <link>https://www.mindfiretechnology.com/blog/archive/what-exactly-is-an-inductive-bias/</link>
      <category>System.String[]</category>
      <title>What Exactly Is an Inductive Bias?</title>
      <description>&lt;p&gt;In a &lt;a href="https://www.mindfiretechnology.com/blog/archive/induction-is-a-myth-the-futility-of-unbiased-learning/"&gt;previous post&lt;/a&gt;, I walked through Tom Mitchell's proof that a learner with no prior assumptions cannot generalize at all. The conjunctive restriction on our hypothesis space was doing all the real work -- without it, the algorithm was paralyzed. I promised a follow-up that would define that concept more precisely.&lt;/p&gt;
&lt;p&gt;Mitchell calls it the learner's &lt;em&gt;inductive bias&lt;/em&gt;. He defines this as:&lt;/p&gt;
&lt;p&gt;&amp;quot;...the inductive bias of a learner as the set of additional assumptions B sufficient to justify its inductive inferences as deductive
inferences.&amp;quot; (Mitchell, p. 44)&lt;/p&gt;
&lt;p&gt;Here is his formal definition:&lt;/p&gt;
&lt;p&gt;The inductive bias of a learner L is any minimal set of assertions B such that for any target concept c and corresponding training examples D, (B + D + x) deductively entails L(x, D) for all new instances x. (Mitchell, p. 44)&lt;/p&gt;
&lt;p&gt;Compare this to Wikipedia's definition of an 'inductive bias':&lt;/p&gt;
&lt;p&gt;The inductive bias (also known as learning bias) of a learning algorithm is the set of assumptions that the learner uses to predict outputs of given inputs that it has not encountered (&lt;a href="https://en.wikipedia.org/wiki/Inductive_bias"&gt;link&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;In plain language: the inductive bias is whatever you'd have to add to the training data so that &lt;strong&gt;the learner's predictions follow by pure deduction&lt;/strong&gt;. It is &lt;em&gt;the gap between what the data says and what the learner concludes&lt;/em&gt;. It may be explicit, or implicit.&lt;/p&gt;
&lt;p&gt;In the previous post, we saw that the Candidate-Elimination algorithm's inductive bias was the assertion &lt;strong&gt;&amp;quot;the target concept can be expressed as a conjunction of the attributes Genre, Mood, and Pacing.&amp;quot;&lt;/strong&gt; Feed that assertion to a deductive theorem prover along with the training data, and you get the same output as the so-called &amp;quot;inductive&amp;quot; learning algorithm. The &amp;quot;induction&amp;quot; was deduction plus an unstated assumption. This is why Popper was actually correct that there is no 'induction' per se. The so-called 'inductive' algorithms work just fine in real life -- but what is actually happening under the hood is always equivalent to deduction once the background knowledge is taken into consideration.&lt;/p&gt;
&lt;p&gt;This definition is not limited to one algorithm. Every learner has an inductive bias, and identifying it tells you exactly what assumptions the learner is smuggling in.&lt;/p&gt;
&lt;h2&gt;Comparing Learners by Their Bias&lt;/h2&gt;
&lt;p&gt;As Mitchell puts it:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;One advantage of viewing inductive inference systems in terms of their inductive bias is that it provides a nonprocedural means of characterizing their policy for generalizing beyond the observed data (Mitchell, p. 44)&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;To understand what he means, consider a &lt;strong&gt;&amp;quot;Rote-Learner&amp;quot;&lt;/strong&gt; algorithm. All it does is store every training example in memory, and when you ask it to classify a new instance, it looks for an exact match. If it has seen that exact instance before, it returns the stored classification. Otherwise, it refuses to classify it at all. This algorithm has no inductive bias -- and it is misleading to even call it a &amp;quot;learner&amp;quot; because it never actually learns anything. It just stores data points. It is the &amp;quot;unbiased learner&amp;quot; from the previous post, and as we saw there, it is completely useless for generalization. (Mitchell, p. 45)&lt;/p&gt;
&lt;p&gt;Now compare this to &lt;strong&gt;the Candidate-Elimination algorithm&lt;/strong&gt; from the previous post. It classifies a new instance only when every hypothesis in the version space agrees on the answer. Its inductive bias is a single assumption: &lt;strong&gt;the target concept is contained in the hypothesis space H&lt;/strong&gt;, which is the space of conjunctions between attributes. (i.e. conjunction means the attributes can be &amp;quot;AND&amp;quot;ed but not &amp;quot;OR&amp;quot;ed together.) Because it has a stronger bias than the Rote-Learner, it can classify instances the Rote-Learner cannot. But the correctness of those classifications depends entirely on whether the bias is true -- whether the target concept really is in H. If it is not, the version space may collapse entirely -- or worse, the algorithm may converge on the wrong answer. (Mitchell, p. 45).&lt;/p&gt;
&lt;p&gt;Mitchell also describes &lt;strong&gt;the Find-S algorithm&lt;/strong&gt;, which only tracks the S boundary -- the most specific hypothesis consistent with the positive examples. It ignores negative examples entirely and uses that single hypothesis to classify everything: if the hypothesis covers a new instance, it predicts positive; otherwise, it predicts negative. This gives it an &lt;em&gt;even stronger bias than the Candidate-Elimination algorithm&lt;/em&gt;. In addition to assuming the target concept is in H, it assumes that all instances are negative unless the opposite is entailed by its other knowledge (Mitchell, p. 45). Where Candidate-Elimination would say &amp;quot;I don't know&amp;quot; when the version space is split, Find-S always has an answer: negative. The advantage is that it now always gives an answer, unlike the Candidate-Elimination algorithm. But this comes at the cost of sometimes being confidently wrong. This makes it the most aggressive of the three -- and the most dependent on its assumptions being correct.&lt;/p&gt;
&lt;p&gt;The pattern is clear: stronger bias means more generalization, but also more risk. As Mitchell notes, &amp;quot;more strongly biased methods make more inductive leaps, classifying a greater proportion of unseen instances&amp;quot; (Mitchell, p. 45). But those leaps are only as good as the assumptions that enable them.&lt;/p&gt;
&lt;p&gt;The pattern here generalizes. &lt;strong&gt;All learning algorithms can be characterized in terms of their inductive bias.&lt;/strong&gt; Some biases are categorical restrictions that completely rule out certain concepts -- like the assumption that H contains the target concept (e.g. Candidate-Elimination algorithm). Others merely express preferences, ranking some hypotheses above others -- like &amp;quot;prefer simpler hypotheses over complex ones.&amp;quot; And some inductive biases are hardwired into the algorithm's design. But it is even possible to create a learner that can modify its own inductive bias. (Mitchell, p. 45).&lt;/p&gt;
&lt;h2&gt;Restriction Bias vs. Preference Bias&lt;/h2&gt;
&lt;p&gt;Not all biases work the same way. Mitchell draws an important distinction between two kinds (Mitchell, pp. 62-64).&lt;/p&gt;
&lt;p&gt;A &lt;strong&gt;restriction bias&lt;/strong&gt; limits which hypotheses the learner can consider at all. The Candidate-Elimination algorithm has a restriction bias -- it literally cannot represent hypotheses outside its hypothesis space. If the true concept is a disjunction (i.e. &amp;quot;OR&amp;quot;s) and the space only allows conjunctions (&amp;quot;AND&amp;quot;s), the algorithm will never find it. The advantage is that within its restricted space, it searches completely -- it considers every consistent hypothesis (Mitchell, p. 64).&lt;/p&gt;
&lt;p&gt;A &lt;strong&gt;preference bias&lt;/strong&gt; does not restrict the hypothesis space but instead orders it -- the learner prefers some hypotheses over others. Decision tree learners like ID3 have a preference bias. The hypothesis space of decision trees can represent any discrete-valued function -- it is univeral! But ID3 does not search that space exhaustively. It uses a greedy, top-down strategy that favors shorter trees and places the most informative attributes near the root (Mitchell, p. 62). Its inductive bias is entirely a consequence of this search strategy, not the expressiveness of its representation.&lt;/p&gt;
&lt;p&gt;A great example of a preference bias is genetic programming. Its hypothesis space is the set of all programs that can be composed from a given set of primitives. Since nature is computable (see the &lt;a href="https://en.wikipedia.org/wiki/Church%E2%80%93Turing%E2%80%93Deutsch_principle"&gt;Church-Turing-Deutsch thesis&lt;/a&gt;), this means its search space is in principle universal -- it can represent anything. There is no restriction bias at all. But it still has an inductive bias. As Mitchell notes, the performance of genetic programming depends crucially on the choice of representation and on the choice of fitness function (Mitchell, p. 266). And realistically, the space of all programs is so vast that the algorithm will only ever explore a tiny fraction of it -- mostly relatively small programs. The evolutionary search strategy -- selection, crossover, mutation -- determines which programs get explored and which get discarded. The bias is entirely in &lt;em&gt;how&lt;/em&gt; it searches, not in &lt;em&gt;what&lt;/em&gt; it can represent.&lt;/p&gt;
&lt;p&gt;Mitchell is direct about which is generally better: a preference bias is typically more desirable than a restriction bias, because it allows the learner to work within a complete hypothesis space that is guaranteed to contain the target function. A restriction bias always carries the risk that you have excluded the right answer from the start (Mitchell, p. 64).&lt;/p&gt;
&lt;h2&gt;Neural Networks: A Different Kind of Bias&lt;/h2&gt;
&lt;p&gt;When Mitchell turns to neural networks trained with backpropagation, the inductive bias becomes harder to pin down -- but it does not disappear (Mitchell, pp. 104-107).&lt;/p&gt;
&lt;p&gt;The hypothesis space is now continuous rather than discrete. As Mitchell describes it, &amp;quot;every possible assignment of network weights represents a syntactically distinct hypothesis that in principle can be considered by the learner&amp;quot; -- the hypothesis space is the n-dimensional Euclidean space of all the network's weights (Mitchell, p. 106). And the search strategy is completely different from the algorithms we have been discussing. Backpropagation is essentially a hill-climbing algorithm that uses calculus to determine which direction is downhill. It follows the slope of the error surface, taking small steps in whatever direction reduces the error most. This means it can get trapped in local minima -- valleys that are not the deepest valley -- and is only guaranteed to converge toward some local minimum, not necessarily the global one (Mitchell, p. 104).&lt;/p&gt;
&lt;p&gt;So what is the inductive bias? Mitchell is candid that &amp;quot;it is difficult to characterize precisely the inductive bias of BACKPROPAGATION learning, because it depends on the interplay between the gradient descent search and the way in which the weight space spans the space of representable functions.&amp;quot; But he offers an approximate answer: &amp;quot;one can roughly characterize it as smooth interpolation between data points.&amp;quot; Given two positive training examples with no negative examples between them, backpropagation will tend to label points in between as positive as well (Mitchell, pp. 106-107).&lt;/p&gt;
&lt;p&gt;This is still an inductive bias -- an assumption that goes beyond what the data logically entails. The data does not say anything about what lies between the training examples. The network's architecture and training procedure are &lt;em&gt;assuming&lt;/em&gt; the answer is smooth. That assumption is what makes generalization possible, and it is also what makes generalization fallible.&lt;/p&gt;
&lt;h2&gt;Why This Matters&lt;/h2&gt;
&lt;p&gt;Every time a learning algorithm says anything about an instance it has not seen, it is going beyond what the data alone can justify. It is making an assumption. The inductive bias is that assumption, named and made explicit.&lt;/p&gt;
&lt;p&gt;This is Popper's point. You cannot get from observations to general theories without bringing something to the table. The question is never &lt;em&gt;whether&lt;/em&gt; you have prior assumptions -- you always do. The question is whether they are good ones.&lt;/p&gt;
&lt;h2&gt;An Optimal Inductive Bias?&lt;/h2&gt;
&lt;p&gt;This does raise an interesting question. Is there an &amp;quot;optimal&amp;quot; inductive bias? One whose search space is universal -- every possible function -- but whose search strategy is still efficient and tractable for any problem? We have seen that genetic programming and decision trees are both universal in their hypothesis space -- they can in principle represent any function. But universality alone is not enough. Both still depend on their search strategy to find the right hypothesis, and that search strategy is where the bias lives. And we have seen that stronger biases enable more generalization but risk being wrong. Is there a sweet spot? That is a question for a future post.&lt;/p&gt;
&lt;p&gt;All page references to Mitchell are from &lt;a href="https://www.cs.cmu.edu/~tom/files/MachineLearningTomMitchell.pdf"&gt;&lt;em&gt;Machine Learning&lt;/em&gt; (McGraw-Hill, 1997)&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;If you need help with your &lt;a href="https://www.mindfiretechnology.com/services/artificial-intelligence/"&gt;Artificial Intelligence solutions, we're here to help&lt;/a&gt;.&lt;/p&gt;
</description>
      <pubDate>Tue, 28 Apr 2026 00:00:00 -0600</pubDate>
      <a10:updated>2026-04-28T00:00:00-06:00</a10:updated>
    </item>
    <item>
      <guid isPermaLink="false">2748</guid>
      <link>https://www.mindfiretechnology.com/blog/archive/machine-learning-101-the-key-concepts-behind-every-learning-algorithm/</link>
      <category>System.String[]</category>
      <title>Machine Learning 101: The Key Concepts Behind Every Learning Algorithm</title>
      <description>&lt;p&gt;Machine learning textbooks have their own vocabulary. But behind the jargon lies a process that would be deeply familiar to Karl Popper: conjecture and refutation. This post is a short reference guide to the key terms from Tom Mitchell's &lt;em&gt;Machine Learning&lt;/em&gt; -- a foundational textbook that I also draw on in my post on &lt;a href="https://www.mindfiretechnology.com/blog/archive/the-futility-of-unbiased-learning/"&gt;the futility of unbiased learning&lt;/a&gt;. For each term, I will give Mitchell's definition and then show how it maps onto Karl Popper's logic of scientific discovery.&lt;/p&gt;
&lt;p&gt;To make this concrete, imagine a 19th-century physician trying to figure out what causes a mysterious illness sweeping through a city. Patients come in with various combinations of age, diet, water source, neighborhood, and occupation. Some get sick, others do not. The physician is trying to discover the underlying rule from these observations.&lt;/p&gt;
&lt;p&gt;Here is the truth the physician does not yet know: the illness strikes patients who drink from the river &lt;em&gt;and&lt;/em&gt; live in the low-lying district near the tannery due to contamination from the tannery. Both conditions must be present -- river drinkers in the hills stay healthy, and tannery district residents who drink from wells stay healthy. Only the combination is deadly.&lt;/p&gt;
&lt;p&gt;This is, as Mitchell would put it, a concept learning task (Mitchell, p. 22). The physician's job is to discover that two-attribute rule from a handful of patients -- without knowing in advance how many attributes matter or which ones.&lt;/p&gt;
&lt;h2&gt;Instance Space&lt;/h2&gt;
&lt;p&gt;In machine learning, the &lt;strong&gt;instance space&lt;/strong&gt; (denoted X) is the set of all possible examples the learner could encounter (Mitchell, p. 22). In our medical example, it is the set of all possible patients -- every combination of age, diet, water source, neighborhood, occupation, and so on. A young well-drinking hillside baker. An old river-drinking tannery district laborer. Every combination, whether or not the physician has actually seen such a patient.&lt;/p&gt;
&lt;p&gt;In Popper's framework, the instance space is the set of all possible observations or experiments. It defines the scope of what the theory is &lt;em&gt;about&lt;/em&gt;. Most of these possible observations will never actually be made. But they all matter, because a good theory must make predictions about &lt;em&gt;all&lt;/em&gt; of them -- not just the ones we happen to have seen.&lt;/p&gt;
&lt;h2&gt;Target Concept&lt;/h2&gt;
&lt;p&gt;The &lt;strong&gt;target concept&lt;/strong&gt; (denoted c) is the true rule the learner is trying to discover (Mitchell, p. 22). It is a function that correctly classifies every instance. In our example, the target concept is: a patient gets sick if and only if they drink from the river AND live in the tannery district. The target concept is unknown to the physician. The whole point of learning is to figure out what it is.&lt;/p&gt;
&lt;p&gt;In Popper's terms, the target concept is the law of nature we are searching for. We do not have direct access to it. We can only approach it indirectly through conjecture and refutation -- proposing theories and testing them against observations. We may never know for certain that we have found it, but we can know when we have &lt;em&gt;not&lt;/em&gt; found it, because our conjecture will be refuted by the evidence.&lt;/p&gt;
&lt;h2&gt;Hypothesis&lt;/h2&gt;
&lt;p&gt;A &lt;strong&gt;hypothesis&lt;/strong&gt; (denoted h) is a candidate theory -- one possible answer to the question &amp;quot;what is the target concept?&amp;quot; (Mitchell, p. 23). The physician might conjecture &amp;quot;patients who drink from the river get sick&amp;quot; or &amp;quot;patients who live in the tannery district get sick&amp;quot; or &amp;quot;old patients get sick.&amp;quot; Each of these is a hypothesis. Some are too broad, some are too narrow, and one -- &amp;quot;river drinkers in the tannery district get sick&amp;quot; -- happens to be correct. But the physician does not know that yet.&lt;/p&gt;
&lt;p&gt;A hypothesis is exactly what Popper calls a &lt;em&gt;conjecture&lt;/em&gt;. It is a bold guess about the structure of reality. It may be right or wrong. What matters is that it is &lt;em&gt;testable&lt;/em&gt; -- it makes predictions that can be checked against observations.&lt;/p&gt;
&lt;h2&gt;Hypothesis Space&lt;/h2&gt;
&lt;p&gt;The &lt;strong&gt;hypothesis space&lt;/strong&gt; (denoted H) is the set of all hypotheses the learner is willing to consider (Mitchell, p. 23). This is not the set of all &lt;em&gt;possible&lt;/em&gt; explanations -- it is the set of explanations the learner &lt;em&gt;can express&lt;/em&gt; given its representation.&lt;/p&gt;
&lt;p&gt;It is intractable to consider every possible hypothesis, as this would be an infinite set. But this is unnecessary. We have a lot of background knowledge that lets us constrain the possible hypotheses we will consider. So typically we start with an already partially constrained hypothesis space based on our background knowledge. This is part of our own human &amp;quot;inductive bias.&amp;quot;&lt;/p&gt;
&lt;p&gt;But suppose our physician only considers single-attribute hypotheses -- &amp;quot;it is the water source&amp;quot; or &amp;quot;it is the neighborhood&amp;quot; -- then &lt;em&gt;the correct two-attribute answer is not even in the hypothesis space&lt;/em&gt;. The physician could examine every patient in the city and still never find the answer, because the target concept cannot be expressed within the hypothesis space he is considering. The choice of hypothesis space determines what the learner can and cannot discover.&lt;/p&gt;
&lt;p&gt;In Popper's framework, the hypothesis space corresponds to the theoretical framework within which the scientist operates. No scientist considers every conceivable theory. They work within a tradition, a paradigm, or a set of background assumptions that constrain which conjectures are even formulable. As I discussed in my post on [inductive bias][2], this constraint is not a flaw -- it is a prerequisite for learning anything at all. But it must be the &lt;em&gt;right&lt;/em&gt; constraint, or the truth will be invisible to you.&lt;/p&gt;
&lt;h2&gt;Training Examples&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;Training examples&lt;/strong&gt; (denoted D) are the actual observations available to the learner (Mitchell, p. 23). Each training example is an instance paired with its correct classification. A &lt;strong&gt;positive example&lt;/strong&gt; is a patient who got sick. A &lt;strong&gt;negative example&lt;/strong&gt; is a patient who stayed healthy.&lt;/p&gt;
&lt;p&gt;Suppose the physician has seen five patients so far:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Old, river, tannery district, laborer -- &lt;strong&gt;sick&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Young, river, tannery district, baker -- &lt;strong&gt;sick&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Old, river, hillside, farmer -- &lt;strong&gt;healthy&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Young, well, tannery district, tanner -- &lt;strong&gt;healthy&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Old, well, hillside, laborer -- &lt;strong&gt;healthy&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;In Popper's framework, these are the observations against which we test our conjectures. The third patient -- a river drinker who stayed healthy -- is a falsification of the hypothesis &amp;quot;river water causes the illness.&amp;quot; The fourth patient -- a tannery district resident who stayed healthy -- falsifies &amp;quot;living in the tannery district causes the illness.&amp;quot; And the fifth patient -- an old laborer who stayed healthy -- falsifies &amp;quot;being a laborer causes the illness.&amp;quot; Only the conjunction &amp;quot;river AND tannery district&amp;quot; survives all five observations.&lt;/p&gt;
&lt;p&gt;As Popper argued, falsifications are where the real action is. A thousand sick river-drinking tannery residents do not prove that the combination is the cause -- they are merely consistent with it. But each negative example eliminates entire families of wrong theories in one stroke.&lt;/p&gt;
&lt;h2&gt;Concept Learning&lt;/h2&gt;
&lt;p&gt;Mitchell defines &lt;strong&gt;concept learning&lt;/strong&gt; as &amp;quot;inferring a boolean-valued function from training examples of its input and output&amp;quot; (Mitchell, p. 21). That sounds narrow, but it is surprisingly general. Our physician is doing concept learning: he has patients (instances), he knows which ones got sick and which did not (positive and negative examples), and he is searching for the rule that separates them. But this is also what scientists do all the time. Any time we seek a causal explanation -- what causes this disease, what makes this material brittle, why do some stars explode and others do not -- we are doing concept learning. We have observations, we have outcomes, and we are searching for the rule.&lt;/p&gt;
&lt;p&gt;But here is the key reframing that Popper would appreciate: Mitchell treats concept learning as a &lt;em&gt;search problem&lt;/em&gt;. The learner is searching through a hypothesis space for a hypothesis consistent with the training data (Mitchell, p. 23). Our physician is not staring at patients and waiting for a pattern to emerge. He is starting with a space of possible theories and eliminating the ones that fail. The hypothesis &amp;quot;it is the water&amp;quot; fails when he sees a healthy river drinker in the hills. The hypothesis &amp;quot;it is the neighborhood&amp;quot; fails when he sees a healthy well drinker in the tannery district. What remains is not what the data &lt;em&gt;induced&lt;/em&gt; but what the data &lt;em&gt;failed to refute&lt;/em&gt;. This is exactly what Popper and Donald Campbell called &amp;quot;evolutionary epistemology&amp;quot; -- knowledge grows not by accumulation but by variation and selection. You generate candidate theories, test them against reality, and the ones that survive criticism are what remain. The data does not build the theory. The data &lt;em&gt;selects&lt;/em&gt; among the theories.&lt;/p&gt;
&lt;h2&gt;Version Space&lt;/h2&gt;
&lt;p&gt;The &lt;strong&gt;version space&lt;/strong&gt; is the set of all hypotheses in H that are consistent with the training data observed so far (Mitchell, p. 31). As training examples come in, hypotheses that are contradicted by the data get eliminated and the version space shrinks.&lt;/p&gt;
&lt;p&gt;After the physician's first two patients (both sick, both river-drinking tannery district residents), many hypotheses are still alive: maybe it is the river, maybe it is the district, maybe it is the combination, maybe it is being a laborer. The version space is large. But after the third patient -- a healthy river drinker in the hills -- every hypothesis that blames the river alone is eliminated. After the fourth -- a healthy well drinker in the tannery district -- every hypothesis that blames the district alone is eliminated. The version space is closing in on the truth.&lt;/p&gt;
&lt;p&gt;In Popper's terms, the version space is the set of conjectures that have survived all attempts at refutation so far. Each new observation either leaves it unchanged or shrinks it. The goal is to shrink it until only one hypothesis remains.&lt;/p&gt;
&lt;h2&gt;Consistent Hypothesis&lt;/h2&gt;
&lt;p&gt;A &lt;strong&gt;consistent hypothesis&lt;/strong&gt; is one that correctly classifies every training example seen so far (Mitchell, p. 23). It has not been falsified by any observation.&lt;/p&gt;
&lt;p&gt;After all five patients, the hypothesis &amp;quot;river AND tannery district&amp;quot; is consistent. But so are other, more specific hypotheses. Consider: we have not yet seen a river-drinking tannery district &lt;em&gt;farmer&lt;/em&gt;. So the hypothesis &amp;quot;river AND tannery district AND NOT farmer&amp;quot; is equally consistent with everything we have observed -- maybe farmers are somehow immune. Likewise, both sick patients happened to be either laborers or bakers, so &amp;quot;river AND tannery district AND (laborer OR baker)&amp;quot; also fits the data. We simply have not seen enough patients to distinguish these hypotheses from each other.&lt;/p&gt;
&lt;p&gt;So &amp;quot;consistent&amp;quot; does not mean &amp;quot;correct.&amp;quot; It means &amp;quot;not yet refuted.&amp;quot; This is precisely Popper's point about corroboration. A theory that has survived testing is &lt;em&gt;corroborated&lt;/em&gt;, not confirmed. It has proven its mettle so far, but it remains permanently open to future refutation. The physician would need to find a river-drinking tannery district farmer to tell these hypotheses apart.&lt;/p&gt;
&lt;h2&gt;The General-to-Specific Ordering&lt;/h2&gt;
&lt;p&gt;Mitchell observes that hypotheses can be naturally ordered from general to specific (Mitchell, p. 24). A more general hypothesis classifies more instances as positive. The hypothesis &amp;quot;anyone who drinks from the river gets sick&amp;quot; is more general than &amp;quot;river drinkers in the tannery district get sick&amp;quot; -- the first covers a superset of the cases covered by the second.&lt;/p&gt;
&lt;p&gt;This ordering has a direct Popperian interpretation. Popper argued that more general theories are &lt;em&gt;more falsifiable&lt;/em&gt; -- they make bolder claims about the world, and therefore there are more ways they could be wrong. &amp;quot;All river drinkers get sick&amp;quot; is easier to refute than &amp;quot;river drinkers in the tannery district get sick,&amp;quot; because the first makes predictions about a far wider range of patients. Popper considered this a virtue. Bolder theories, when they survive testing, tell us more about the world.&lt;/p&gt;
&lt;p&gt;The Candidate-Elimination algorithm exploits this ordering to efficiently search the hypothesis space -- tracking the most general and most specific surviving hypotheses and using each new observation to tighten the bounds. As I described in my post on &lt;a href="https://www.mindfiretechnology.com/blog/archive/the-futility-of-unbiased-learning/"&gt;the futility of unbiased learning&lt;/a&gt;, this is falsification implemented as a computer program.&lt;/p&gt;
&lt;h2&gt;The Takeaway&lt;/h2&gt;
&lt;p&gt;Machine learning is not induction. It is search -- a search through a space of conjectures, guided by observations, eliminating the hypotheses that fail. The vocabulary is different, but the logic is the same logic Karl Popper described: bold conjectures, tested against experience, with the wrong ones ruthlessly discarded.&lt;/p&gt;
&lt;p&gt;The key terms from Mitchell map cleanly onto this process:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;The &lt;strong&gt;instance space&lt;/strong&gt; is the domain of possible observations&lt;/li&gt;
&lt;li&gt;The &lt;strong&gt;target concept&lt;/strong&gt; is the unknown law we seek&lt;/li&gt;
&lt;li&gt;A &lt;strong&gt;hypothesis&lt;/strong&gt; is a conjecture&lt;/li&gt;
&lt;li&gt;The &lt;strong&gt;hypothesis space&lt;/strong&gt; is the set of conjectures we are willing to consider&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Training examples&lt;/strong&gt; are the observations that test our conjectures&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Concept learning&lt;/strong&gt; is the search for surviving conjectures&lt;/li&gt;
&lt;li&gt;The &lt;strong&gt;version space&lt;/strong&gt; is the set of conjectures not yet refuted&lt;/li&gt;
&lt;li&gt;A &lt;strong&gt;consistent hypothesis&lt;/strong&gt; is a conjecture that has survived all tests so far&lt;/li&gt;
&lt;li&gt;The &lt;strong&gt;general-to-specific ordering&lt;/strong&gt; reflects Popper's insight that bolder theories are more falsifiable&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;All page references to Mitchell are from &lt;a href="https://www.cs.cmu.edu/~tom/files/MachineLearningTomMitchell.pdf"&gt;&lt;em&gt;Machine Learning&lt;/em&gt; (McGraw-Hill, 1997)&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;If you need help with your &lt;a href="https://www.mindfiretechnology.com/services/artificial-intelligence/"&gt;Artificial Intelligence solutions, we're here to help&lt;/a&gt;.&lt;/p&gt;
</description>
      <pubDate>Fri, 10 Apr 2026 10:53:35 -0600</pubDate>
      <a10:updated>2026-04-10T10:53:35-06:00</a10:updated>
    </item>
    <item>
      <guid isPermaLink="false">2730</guid>
      <link>https://www.mindfiretechnology.com/blog/archive/induction-is-a-myth-the-futility-of-unbiased-learning/</link>
      <category>System.String[]</category>
      <title>Induction is a Myth: The Futility of Unbiased Learning</title>
      <description>&lt;h2&gt;Karl Popper's Disproof of Induction&lt;/h2&gt;
&lt;p&gt;Karl Popper argued that it is logically impossible to derive a general theory from specific observations. You can stare at a million data points and no universal law will ever logically &lt;em&gt;follow&lt;/em&gt; from them. The observations are always concrete and specific; the theory is always abstract and universal. You simply cannot get from one to the other by logic alone. (See &lt;a href="https://amzn.to/4rvnaiq"&gt;&lt;em&gt;Conjectures and Refutations: The Growth of Scientific Knowledge&lt;/em&gt;&lt;/a&gt;, pp. 251-253)&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Thus induction is a myth. No &amp;quot;inductive logic&amp;quot; exists. And although
there exists a &amp;quot;logical&amp;quot; interpretation of the probability calculus,
there is no good reason to assume that this &amp;quot;generalized logic&amp;quot; (as
it may be called) is a system of &amp;quot;inductive logic&amp;quot; (&lt;a href="https://amzn.to/4qKARc4"&gt;&lt;em&gt;Unended Quest&lt;/em&gt;&lt;/a&gt;, p. 171)&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Despite such a startlingly powerful disproof, most people assumed it must be wrong. They sought after a new kind of &amp;quot;inductive logic&amp;quot; that would allow you to somehow start with only observations and generalize to a universal law. The reasoning went that there &lt;em&gt;must&lt;/em&gt; be such an inductive logic because we do—in practice—induce general laws all the time in science. &lt;a href="https://www.mindfiretechnology.com/blog/archive/dice-rolls-coin-flips-and-death-by-asteroid-a-probability-refresher/"&gt;Probability theory&lt;/a&gt;—particularly the Bayesian interpretation—was often advanced as the missing inductive logic that would bridge the gap. When it was discovered that probability theory could be thought of as &lt;a href="https://www.mindfiretechnology.com/blog/archive/from-certainty-to-belief-how-probability-extends-logic-part-2/"&gt;&amp;quot;extending deductive logic&amp;quot;&lt;/a&gt; (by which they really meant extending propositional logic, not first order logic), many became convinced they had found what they were looking for. The arrival of &lt;a href="https://www.mindfiretechnology.com/blog/archive/coxs-theorem-is-probability-theory-universal/"&gt;Cox's theorem&lt;/a&gt; was often interpreted as cementing this idea.&lt;/p&gt;
&lt;p&gt;And on top of all that, wasn't it just a fact that machine learning algorithms generalize from data every day? Your streaming service watches you binge a few movies and then somehow knows what to recommend next. That's induction, right? Isn't the machine deriving a general rule from specific observations? Popper must be wrong!&lt;/p&gt;
&lt;h2&gt;Tom Mitchell's &amp;quot;Futility of Bias-Free Learning&amp;quot;&lt;/h2&gt;
&lt;p&gt;Tom Mitchell—one of the foundational figures in machine learning—has a devastating answer to this question. In his textbook &lt;a href="https://www.cs.cmu.edu/~tom/files/MachineLearningTomMitchell.pdf"&gt;&lt;em&gt;Machine Learning&lt;/em&gt; (McGraw-Hill, 1997)&lt;/a&gt;, he proves something that should be far better known: a learner that makes no prior assumptions about what it's looking for &lt;em&gt;cannot generalize at all&lt;/em&gt;. Not even a little. It can memorize what it has seen, but the moment you show it something new, it has literally no rational basis for making a classification. Mitchell calls this &amp;quot;The Futility of Bias-Free Learning&amp;quot; (Mitchell, p. 42).&lt;/p&gt;
&lt;p&gt;What makes this so interesting is that Mitchell arrives at essentially the same conclusion as Popper, but from the completely opposite direction. Popper was a philosopher &lt;strong&gt;arguing against inductivism&lt;/strong&gt;. Mitchell is a computer scientist &lt;strong&gt;trying to make induction &lt;em&gt;work&lt;/em&gt;&lt;/strong&gt;. And yet they converge on the same point: you cannot generalize from observations alone. You always need something else—some set of prior assumptions—to bridge the gap.&lt;/p&gt;
&lt;p&gt;But Mitchell goes one step further. He shows that when you &lt;em&gt;do&lt;/em&gt; add those prior assumptions, the resulting &amp;quot;inductive&amp;quot; algorithm is actually &lt;em&gt;equivalent to a deductive theorem prover&lt;/em&gt;. &lt;strong&gt;The so-called induction was deduction all along,&lt;/strong&gt; just as Popper claimed. It just didn't look like it.&lt;/p&gt;
&lt;p&gt;Let me walk through how this works.&lt;/p&gt;
&lt;h2&gt;A Movie Recommendation Problem&lt;/h2&gt;
&lt;p&gt;Imagine a movie streaming service trying to figure out whether you'll enjoy a given film. To keep things tractable, suppose the system describes movies using three attributes:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Genre&lt;/strong&gt;: Action, Comedy, Drama, Sci-Fi&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Mood&lt;/strong&gt;: Light, Dark&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Pacing&lt;/strong&gt;: Fast, Slow&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Each movie is some combination of these attributes, and your reaction is binary: you either enjoyed it or you didn't. The service's job is to figure out the general rule—the &lt;em&gt;target concept&lt;/em&gt;—that explains your taste.&lt;/p&gt;
&lt;p&gt;This isn't meant to be a realistic example, but suppose you subconsciously only enjoy fast-paced movies with a dark mood, regardless of genre. The service is trying to figure that out and then recommend other such movies to you.&lt;/p&gt;
&lt;p&gt;Now, there are 4 x 2 x 2 = 16 possible movie descriptions in this space. And the streaming service has watched you react to five or six of them. From those data points, it needs to learn a rule that correctly predicts your reaction to all the other movies you haven't seen yet.&lt;/p&gt;
&lt;p&gt;This is, at its core, what Mitchell calls a &amp;quot;concept learning&amp;quot; task: searching through a space of possible hypotheses for the one that fits the observed data (Mitchell, p. 23).&lt;/p&gt;
&lt;h2&gt;How Candidate-Elimination Works (a.k.a. Falsification)&lt;/h2&gt;
&lt;p&gt;The algorithm Mitchell uses to illustrate this is called the Candidate-Elimination algorithm. And despite the dry name, what it actually does is strikingly Popperian: it starts with every possible hypothesis about your taste and then systematically &lt;em&gt;eliminates&lt;/em&gt; the ones that are contradicted by the data.&lt;/p&gt;
&lt;p&gt;The algorithm restricts itself to hypotheses that take the form of conjunctions of attribute values. So a hypothesis might be something like &amp;quot;I enjoy Action movies that are Dark&amp;quot;—represented as (Action, Dark, ?), where the question mark means &amp;quot;I don't care about this attribute.&amp;quot;&lt;/p&gt;
&lt;p&gt;The algorithm also uses a null symbol to mean &amp;quot;no value is acceptable.&amp;quot; So the hypothesis (null, null, null) means &amp;quot;no movie is enjoyable&amp;quot;—the most specific possible hypothesis that rejects everything.&lt;/p&gt;
&lt;p&gt;The algorithm maintains two boundaries that define a range of surviving hypotheses:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;The &lt;strong&gt;G boundary&lt;/strong&gt; (most general hypothesis consistent with the data)&lt;/li&gt;
&lt;li&gt;The &lt;strong&gt;S boundary&lt;/strong&gt; (most specific hypothesis consistent with the data)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Everything between these two bounds is called the &amp;quot;version space&amp;quot;—in Popper's language, it is the set of hypotheses not yet refuted by the evidence (Mitchell, pp. 32-33).&lt;/p&gt;
&lt;p&gt;Before we see any data, G starts as broad as possible and S starts as narrow as possible:&lt;/p&gt;
&lt;p&gt;&lt;img src="https://www.mindfiretechnology.com/blog/media/step0.png" alt="Step 0: Initial state before any training data" /&gt;&lt;/p&gt;
&lt;p&gt;Now the training data starts coming in.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Step 1:&lt;/strong&gt; You watch a dark, fast-paced action movie and enjoy it. This is a positive example, so the S boundary has to move—it generalizes from &amp;quot;no movie is enjoyable&amp;quot; to the most specific hypothesis that covers this movie. The G boundary doesn't need to change yet because nothing has been ruled out:&lt;/p&gt;
&lt;p&gt;&lt;img src="https://www.mindfiretechnology.com/blog/media/step1.png" alt="Step 1: First positive example generalizes S" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Step 2:&lt;/strong&gt; You watch a light, slow comedy and don't enjoy it. This is where the real elimination begins. The current G boundary—(?, ?, ?) or &amp;quot;every movie is enjoyable&amp;quot;—is &lt;em&gt;inconsistent&lt;/em&gt; with this negative example. It predicted you'd enjoy this movie, but you didn't. So (?, ?, ?) gets falsified and must be replaced.&lt;/p&gt;
&lt;p&gt;The algorithm replaces it with the &lt;em&gt;minimal specializations&lt;/em&gt; that exclude this negative example while still being more general than S. There are exactly three ways to do this—each one changes a single attribute to rule out the movie you disliked:&lt;/p&gt;
&lt;p&gt;&lt;img src="https://www.mindfiretechnology.com/blog/media/step2.png" alt="Step 2: G splits into three competing hypotheses" /&gt;&lt;/p&gt;
&lt;p&gt;This is a critical moment. We now have three competing theories about your taste, and the data will eventually falsify two of them.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Step 3:&lt;/strong&gt; You watch a dark, fast-paced sci-fi movie and enjoy it. Now things get interesting on both sides. On the S side, you've liked both Action and Sci-Fi, so genre can't be the deciding factor—S generalizes to (?, Dark, Fast). On the G side, the hypothesis (Action, ?, ?) predicted you'd &lt;em&gt;only&lt;/em&gt; like Action movies, but you just liked a Sci-Fi movie. Falsified! It gets removed from G:&lt;/p&gt;
&lt;p&gt;&lt;img src="https://www.mindfiretechnology.com/blog/media/step3.png" alt="Step 3: S generalizes genre away, G loses the Action-only hypothesis" /&gt;&lt;/p&gt;
&lt;p&gt;Two hypotheses remain in G: maybe it's about mood (?, Dark, ?), or maybe it's about pacing (?, ?, Fast). We need more data to tell them apart.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Step 4:&lt;/strong&gt; You watch a dark, slow-paced action movie and don't enjoy it. This movie was Dark—just like the ones you enjoyed—but you disliked it. The hypothesis (?, Dark, ?) predicted you'd enjoy it, because it says dark mood is all that matters. But you didn't. Falsified! Only (?, ?, Fast) survives in G:&lt;/p&gt;
&lt;p&gt;&lt;img src="https://www.mindfiretechnology.com/blog/media/step4.png" alt="Step 4: The Dark-mood-only hypothesis is falsified" /&gt;&lt;/p&gt;
&lt;p&gt;Now G says (?, ?, Fast)—pacing is all that matters—while S says (?, Dark, Fast)—both mood and pacing matter. They haven't converged yet. We need one more piece of evidence.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Step 5:&lt;/strong&gt; You watch a light, fast-paced comedy and don't enjoy it. This is the final falsification. This movie &lt;em&gt;was&lt;/em&gt; fast-paced, matching G's only remaining requirement, but you still disliked it. The difference from the movies you enjoyed? It was Light, not Dark. G must specialize mood from &amp;quot;?&amp;quot; to &amp;quot;Dark&amp;quot;—and now S and G are identical:&lt;/p&gt;
&lt;p&gt;&lt;img src="https://www.mindfiretechnology.com/blog/media/step5.png" alt="Step 5: Final falsification forces convergence" /&gt;&lt;/p&gt;
&lt;p&gt;The version space has been squeezed from both sides until exactly one hypothesis remains:&lt;/p&gt;
&lt;p&gt;&lt;img src="https://www.mindfiretechnology.com/blog/media/step_final_v2.png" alt="Final: The algorithm has converged" /&gt;&lt;/p&gt;
&lt;p&gt;Notice what happened here. The algorithm did not &lt;em&gt;build up&lt;/em&gt; a theory from observations. It &lt;em&gt;tore down&lt;/em&gt; the wrong theories. It started with a space of conjectures and refuted them using evidence. This is Popper's falsificationism implemented as a computer program. Mitchell himself frames concept learning as a search problem (Mitchell, p. 23), and as I've argued on &lt;a href="https://open.spotify.com/episode/5bnUoJP1D8nDLwFVK4yCaq"&gt;my podcast&lt;/a&gt;, search is really just a form of variation and selection—which is exactly how Donald Campbell and Karl Popper described the growth of knowledge.&lt;/p&gt;
&lt;p&gt;If the training data is error-free and the correct hypothesis is somewhere in the hypothesis space, the algorithm will converge on it. Every incorrect hypothesis gets falsified. The correct one survives.&lt;/p&gt;
&lt;h2&gt;The Catch: A Biased Hypothesis Space&lt;/h2&gt;
&lt;p&gt;But here's the problem. We restricted the hypothesis space to conjunctions of attributes—meaning the learned rule can only take the form &amp;quot;attribute 1 must be X &lt;em&gt;and&lt;/em&gt; attribute 2 must be Y &lt;em&gt;and&lt;/em&gt; attribute 3 must be Z&amp;quot; (where any of those can be relaxed to &amp;quot;any value is fine&amp;quot;).&lt;/p&gt;
&lt;p&gt;That works for a rule like (?, Dark, Fast)—&amp;quot;dark and fast-paced, any genre.&amp;quot; But what if your actual taste is more complicated? What if you enjoy dark action movies &lt;em&gt;and also&lt;/em&gt; light comedies—two completely different profiles with nothing in common? There is no single conjunction of attributes that captures both. Any conjunction broad enough to include dark action movies and light comedies would also include things you don't like, such as dark comedies or light action movies.&lt;/p&gt;
&lt;p&gt;Our conjunctive hypothesis space—including hypotheses with ? (any value) and null (no value)—contains only 46 hypotheses, a tiny fraction of the 65,536 possible concepts that could be defined over our 16 movie descriptions. As Mitchell puts it, &amp;quot;a very biased hypothesis space indeed!&amp;quot; (Mitchell, p. 41).&lt;/p&gt;
&lt;p&gt;If the correct hypothesis is not representable in the space, the algorithm will fail. It will eliminate every hypothesis, leaving the version space empty, and you'll know something has gone wrong.&lt;/p&gt;
&lt;p&gt;So there is an obvious temptation: why not just expand the hypothesis space to include every possible hypothesis? Remove the bias entirely. Let the learner consider any conceivable pattern in the data.&lt;/p&gt;
&lt;h2&gt;The Power Set: An Unbiased Learner&lt;/h2&gt;
&lt;p&gt;Mitchell takes this idea seriously. He proposes expanding the hypothesis space to the &lt;em&gt;power set&lt;/em&gt; of all possible instances—the set of all possible subsets (Mitchell, p. 40). This means the learner can now represent &lt;em&gt;any&lt;/em&gt; target concept whatsoever. No more restrictions. No more bias. The learner can consider disjunctions, negations, arbitrary combinations—everything. If you like dark action movies and light comedies but nothing else, there's a hypothesis for that. If you like exactly seven specific movies for no discernible reason, there's a hypothesis for that too.&lt;/p&gt;
&lt;p&gt;For our movie example with 16 possible movie descriptions, the power set contains 2^16—65,536 possible target concepts. Our biased conjunctive space could only represent a handful of those. The unbiased learner must now contend with all 65,536.&lt;/p&gt;
&lt;p&gt;Problem solved, right?&lt;/p&gt;
&lt;p&gt;Not even close. Mitchell shows that this &amp;quot;unbiased&amp;quot; learner is now &lt;em&gt;completely unable to generalize beyond the observed examples&lt;/em&gt; (Mitchell, p. 41).&lt;/p&gt;
&lt;p&gt;To see why, think about what the algorithm has to work with after seeing our five training examples. It knows you liked two specific movies and disliked three specific movies. In the biased version, the conjunctive restriction forced the algorithm's hand—there were only so many ways to draw the line, and most of them got falsified. But now? The hypothesis space contains &lt;em&gt;every possible&lt;/em&gt; way to divide the 16 movies into &amp;quot;liked&amp;quot; and &amp;quot;disliked.&amp;quot; And there are a staggering number of ways to do that which are perfectly consistent with our five data points.&lt;/p&gt;
&lt;p&gt;Consider a new movie you haven't rated—say (Drama, Dark, Fast). Should the algorithm predict you'll enjoy it? In the biased version, the answer was clear: (?, Dark, Fast) covers it, so yes. But in the unbiased version, for every hypothesis in the version space that says you'll like this movie, there exists another hypothesis that is identical in every respect—agrees on all five training examples—except that it says you &lt;em&gt;won't&lt;/em&gt; like this one (Mitchell, p. 41). Both hypotheses are equally consistent with everything the algorithm has seen.&lt;/p&gt;
&lt;p&gt;This isn't a minor inconvenience. It's total paralysis. The version space splits exactly 50/50 on every unseen movie (Mitchell, p. 41). The algorithm can only say &amp;quot;I don't know&amp;quot; to every new movie it encounters. It has become a glorified lookup table—perfectly memorizing what it has seen, but completely powerless to predict anything it hasn't.&lt;/p&gt;
&lt;p&gt;The reason is almost embarrassingly simple once you see it. In the biased version, the conjunctive restriction was doing most of the work. It told the algorithm: &amp;quot;The answer has a &lt;em&gt;structure&lt;/em&gt;—it's a rule defined by attribute values.&amp;quot; That assumption is what made it possible to look at a dark, fast-paced sci-fi movie and say &amp;quot;this is similar to the dark, fast-paced action movie you liked, so you'll probably like this too.&amp;quot; Without that structural assumption, there is no basis for calling any two movies &amp;quot;similar.&amp;quot; Each movie is just an isolated point, and knowing you liked one tells you nothing about any other.&lt;/p&gt;
&lt;p&gt;To converge on a single final hypothesis, this unbiased learner would need to see &lt;em&gt;every single one&lt;/em&gt; of the 16 possible movies as a training example (Mitchell, p. 41). At which point it hasn't learned anything—it's just stored your complete viewing history.&lt;/p&gt;
&lt;h2&gt;Mitchell's Conclusion: The Futility of Bias-Free Learning&lt;/h2&gt;
&lt;p&gt;Mitchell states his conclusion directly:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&amp;quot;A learner that makes no a priori assumptions regarding the identity
of the target concept has no rational basis for classifying any unseen
instances.&amp;quot; (Mitchell, p. 42)&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Read that again. It is a remarkable statement. It means that the only reason the original Candidate-Elimination algorithm could generalize at all was because it had a built-in assumption—the bias toward conjunctive hypotheses—that constrained the space of possibilities.&lt;/p&gt;
&lt;p&gt;Mitchell calls this assumption the algorithm's &amp;quot;inductive bias.&amp;quot; We'll discuss the formal definition of inductive bias in more detail in a future post. But a short version is that the inductive bias of a learner is the minimal set of additional assertions B such that the learner's classifications follow deductively from B combined with the training data (Mitchell, pp. 42-43).&lt;/p&gt;
&lt;p&gt;That last part is the kicker. Mitchell is saying that what looks like induction is actually deduction in disguise—just as Popper claimed. The algorithm appears to be generalizing from data, but what it is really doing is deducing conclusions from the data plus an unstated set of assumptions.&lt;/p&gt;
&lt;h2&gt;The Deductive Theorem Prover&lt;/h2&gt;
&lt;p&gt;Mitchell makes this equivalence explicit with a striking thought experiment (Mitchell, pp. 43-44). Imagine two systems side by side.&lt;/p&gt;
&lt;p&gt;On the left, the Candidate-Elimination algorithm—exactly the one we just walked through. You feed it your movie ratings and a new movie to classify. It searches the version space and outputs a prediction.&lt;/p&gt;
&lt;p&gt;On the right, a deductive theorem prover. You feed it the same movie ratings, the same new movie, and one additional input: the explicit assertion &amp;quot;the target concept can be represented as a conjunction of the attributes Genre, Mood, and Pacing.&amp;quot;&lt;/p&gt;
&lt;p&gt;Mitchell proves that these two systems will produce &lt;em&gt;identical outputs&lt;/em&gt; for every possible set of training examples and every possible new instance. They are functionally the same system. The only difference is that the inductive bias is implicit in the code of the learning algorithm, while it is explicit as an input to the theorem prover.&lt;/p&gt;
&lt;p&gt;Think about what this means. When our algorithm concluded (?, Dark, Fast), it felt like it was &lt;em&gt;inducing&lt;/em&gt; a general rule from specific examples. But Mitchell has shown that it was actually &lt;em&gt;deducing&lt;/em&gt; a conclusion from the training data &lt;em&gt;plus&lt;/em&gt; an unstated assumption about the structure of the answer. The assumption—&amp;quot;your taste can be expressed as a conjunction of attributes&amp;quot;—was baked into the algorithm's design. Make that assumption explicit, hand it to a theorem prover along with the data, and you get the same answer by pure deduction.&lt;/p&gt;
&lt;p&gt;As Mitchell puts it, the inductive bias &amp;quot;exists only in the eye of us beholders. Nevertheless, it is a perfectly well-defined set of assertions&amp;quot; (Mitchell, p. 44).&lt;/p&gt;
&lt;p&gt;The so-called induction was deduction all along.&lt;/p&gt;
&lt;h2&gt;What This Means&lt;/h2&gt;
&lt;p&gt;Let me be blunt about the implications.&lt;/p&gt;
&lt;p&gt;Mitchell has shown that every &amp;quot;inductive&amp;quot; learning algorithm is, underneath, a deductive system operating on unstated assumptions. The assumptions are doing the real work. The data merely selects among the possibilities that the assumptions have already circumscribed. Without those assumptions, we saw what happens: the unbiased learner is paralyzed, unable to classify a single new instance.&lt;/p&gt;
&lt;p&gt;This is precisely what Popper argued from the philosophy side. You cannot derive general theories from observations alone. You always need a prior theoretical framework—what Kant called imposing laws upon nature—to make sense of the data. The data doesn't speak for itself. It never has.&lt;/p&gt;
&lt;p&gt;But here is the part that both the machine learning community and many Popperians seem to miss. Popper proved that you can't generalize from observations &lt;em&gt;alone&lt;/em&gt;. He did &lt;em&gt;not&lt;/em&gt; prove that you can't generalize at all. Mitchell's work shows exactly when and how generalization becomes possible: when you bring background knowledge—an inductive bias—to the table. That bias, combined with observations, lets you deduce conclusions you couldn't have reached with either one alone.&lt;/p&gt;
&lt;p&gt;The learner doesn't start from a blank slate and induce its way to knowledge. It starts with a constrained space of possibilities and uses observations to falsify the wrong ones. That is not &amp;quot;induction&amp;quot; in the classical Baconian sense that Popper demolished. It is conjecture and refutation, running on silicon.&lt;/p&gt;
&lt;p&gt;Bias-free learning is futile. But &lt;em&gt;biased&lt;/em&gt; learning—learning with prior theoretical commitments—is not only possible, it is the &lt;em&gt;only&lt;/em&gt; kind of learning there is.&lt;/p&gt;
&lt;p&gt;This is a companion post to a &lt;a href="https://open.spotify.com/episode/5bnUoJP1D8nDLwFVK4yCaq"&gt;podcast episode&lt;/a&gt; where I discuss these ideas in more depth, including how they relate to Karl Popper's epistemology and David Deutsch's interpretation of it. All page references to Mitchell are from &lt;a href="https://www.cs.cmu.edu/~tom/files/MachineLearningTomMitchell.pdf"&gt;&lt;em&gt;Machine Learning&lt;/em&gt; (McGraw-Hill, 1997)&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;If you need help with your &lt;a href="https://www.mindfiretechnology.com/services/artificial-intelligence/"&gt;Artificial Intelligence solutions, we're here to help&lt;/a&gt;.&lt;/p&gt;
</description>
      <pubDate>Thu, 12 Mar 2026 16:55:14 -0600</pubDate>
      <a10:updated>2026-03-12T16:55:14-06:00</a10:updated>
    </item>
  </channel>
</rss>