Doğukan Tuna profile photo

Dogukan Tuna

Reach out:

Find me:

hi!! I usually go by the "dthinky!" alias, though my name is Doğukan.

>> doing research.

>>> self-improving systems, RL/CUDA kernels & pretraining autoresearch.

building two things:

  • Ultraresearch, a research lab building self-improving systems, starting with AI and physics. Two things so far: Super Turing, a massively parallel RL system running thousands of environments at once on your own compute, and Epos, which runs the loop above it — putting up to a thousand agents on a single problem and keeping what works. Each run starts from the best of the last.
  • Manuel AI, superhuman HVAC & energy reasoning.

excited about flourishing in a world with MAS at 100 trillion params, together.

staring at nature · thinking about thinking machines · prob. rn making fun with fable 5

Research

A running log of posts, experiments, and longer notes from the work. View all

Neural Networks & New Kinds

Compression is how I think about learning. The tighter a model can compress its inputs, the more structure it has actually found. Kolmogorov complexity makes this precise. It measures the length of the shortest program that produces a given output, which turns out to be the theoretical floor for any compressor.

The Ultimate Compressor

K(X) = length of the shortest program that outputs X. For any computable compressor C and all strings X:

K(X) ≤ |C(X)| + K(C) + O(1)

via the simulation argument: run C inside a universal machine

The Catch

K(X) is uncomputable. You can never know the true shortest program. But a deep network is a finite parallel computer that approximates it with bounded resources.

Why Neural Nets are Compressors

  1. Neural nets can simulate arbitrary programs.
  2. They are small computers, circuits wired by data.
  3. SGD searches over the space of programs they can express.

Micro-Kolmogorov Complexity

Fix an architecture, then fit a network with SGD. The bit-length of the resulting weights is a practical proxy for description length:

minf ∈ F [ loss(f) + λ · micro-K(f) ]

micro-K(f) ≈ bit-length of weights in a fixed architecture

Shorter description length → better generalization.

I'm deeply invested in methods that make learning systems compress harder and generalize further.