Optimisation: Selective versus Predictive
Looking over my favourite posts, I notice that many of them are making specific versions of a more general claim, which is essentially: don’t confuse selective processes for predictive processes.Here, I’m going to try to make that more general claim, rehash some examples in light of it, and end with a few ambient confusions I think this framework can help with, for the reader to ponder.When you encounter an entity that is very good at achieving some outcome, there are two very different processes that could be going on under the hood:The entity’s behaviour could be guided by predictions about how to achieve the outcome[1]The entity’s behaviour could be selected to achieve that outcomeIt’s not a perfect binary, and often what you see is a mix of the two. In particular, all predictive optimisers have emerged from selective optimisation and often retain some fingerprint.SelectivePredictiveWeird MixBacteria developing antibiotic resistanceHacker finding a way to penetrate a secure systemHumans evolving to be good at lyingGradient descent on Atari gamesTree searching Connect FourAlphaZero training a policy on its own rolloutsFlowers co-evolving with their pollinatorsHumans genetically modifying cropsHumans selectively breeding dogsHuman brains seem to be hardwired to reason about intent, in the same way that we see faces everywhere. The problem is, selective processes behave a bit differently. For example:Predictive optimisers generalise to achieve their goal (within some world model); selective optimisation creates things which generalise pretty poorly out of distributionPredictive optimisers intend to achieve an outcome; selective optimisation creates things which needn't intend to achieve the outcomes they consistently reachIf you miss the presence of selective optimisation, you might underrate the amount of computation that has gone into searching for solutionsSo when you try to interpret a system as purely predictive when it’s at least partly selective, you might mi