![]() |
|
|
A communique to a colleague of Ray Solomonoff’s regarding mdllosstorch, who has been working on the philosophy of causality from a POV/ansatz that I consider a potential rival of Solomonoff’s:
I’m spelunking the tunnel reality of Solomonoff’s POV: Turing Machines are the ansatz of natural science. With a minor diversion into Goedelian refinement of Kolmogorov Complexity* my purpose has been to follow that tunnel to its logical end:
Discovery of causation, not from experimental controls but from the data itself through program search for the smallest generative algorithm (ie: Algorithmic Information Criterion for causal model selection) of a given dataset.
This tunnel reality of mine has its limitations. Any science that lacks experimental controls to discern causation must grapple with this limitation. They all, even though they refuse to admit it, adopt Solomonoff’s prior. So I feel my spelunking this particular tunnel has merit. Yes, it may be a dead end. Reductio ad absurdum has precisely such merit.
Give my aforementioned humility, please indulge my fantasy as an aside to your quest for a philosophy of causality:
Yesterday I released a Python package called mdllosstorch that is my effort to gently guide the machine learning industry’s multi-hundred billion dollar juggernaut to a more Solomonoff-esque definition of “loss function”. It provides a differentiable form of minimum description length. This approximates algorithmic information when applied to state space neural network models (those used by Anthropic’s Claude among others). It does so by approximating my Goedelian refinement of Kolmogorov: Any recurrent neural network can approximate a Directed CYCLIC Graph of N-input NOR gates – hence my Goedelian trick.
As I’m quite aware, you are on the warpath against diagonalization. To the extent Goedel’s trick, hence my own, may rely on just such a fallacy, I’m not here to expound on the virtues of what I’ve accomplished except within the aforementioned humility.
– Jim
* TLDR: Write a program, in a chosen instruction set, that simulates the directed cyclic graph of NiNOR (or NiNAND) gates that provides the chosen instruction set, including the memory that holds the program. Use that instruction set to write a program that, when executed by the instruction set simulation program, outputs the given dataset. The minimum sum of the length, in bits, of these two programs is the NiNOR-Complexity.