neural networks start with a math paper. "a logical calculus of the ideas immanent in nervous activity".
in 1943, warren mcculloch and walter pitts published a model of a neuron that took binary inputs, summed them, and fired 1 if the sum crossed a threshold, else fired 0. no learning, no weights adjusting, just fixed logic.
it proved something important: a network of these simple units could compute and, or, and not(gates logic). that's the first proof that computation and neurons could be described in the same language.
six years later, donald hebb gave the field its learning rule. his idea, "neurons that fire together wire together," said that the connection between two neurons should strengthen every time they activate together.
this became the theoretical seed for basically every learning rule that came after, including gradient-based ones. hebb had no computer to test it on, but the idea outlived the era.
frank rosenblatt turned this into a working machine in 1958. his perceptron added adjustable weights to mcculloch-pitts neurons.
the key shift: instead of a human setting the weights, the machine updated them itself based on prediction error.
that's the actual birth of supervised learning as a computational process, not just a theory. rosenblatt built physical hardware for it, the mark i perceptron, wired to a 20x20 grid of photocells so it could classify simple shapes. the press coverage at the time way overshot reality, comparing it to a walking, talking, self-aware machine.
the perceptron's limitation turned out to be mathematical, not just practical.
in 1969 minsky and papert proved a single-layer perceptron cannot solve xor operation, a basic non-linear problem.
the fix, stacking layers, was theoretically obvious but practically unsolved: nobody had a reliable way to update weights across hidden layers. funding dried up. this is the first ai winter, and it lasted over a decade.
the fix came from calculus, not new hardware. backpropagation, popularized by rumelhart, hinton, and williams in 1986 (paper - learning representations by back-propagating errors).
it used the chain rule to push error gradients backward through every layer of a network, updating each weight in proportion to its contribution to the mistake.
this is still the core training mechanism under basically every modern neural net, including transformers. the algorithm existed in pieces earlier (linnainmaa, werbos) but the 1986 paper is what made it standard practice.
vision architecture developed in parallel. fukushima's neocognitron (1980) borrowed directly from hubel and wiesel's biological studies of the visual cortex, introducing the idea of stacking layers that detect local features and pool them into more abstract ones.
lecun combined this structure with backpropagation in 1989 to build lenet, a working convolutional network that banks actually used to read handwritten digits on checks. this is the first time deep learning shipped in a real product.
despite all this, neural nets stayed a secondary method through the 90s.
support vector machines were cheaper to train, easier to reason about mathematically, and performed just as well on the small datasets available at the time.
neural nets needed scale to prove their advantage, and scale wasn't there yet, not in data or in compute.
2012 is when scale finally arrived. krizhevsky, sutskever, and hinton entered alexnet into imagenet, training a deep cnn on gpus(two nvidia gtx 580) with relu activations and dropout for regularization.
it beat the previous best by 10.8 percentage points(huge), a margin big enough that it couldn't be dismissed as noise.
this is the moment deep learning shifted from a fringe method to the default approach in computer vision, and soon after, in most of ml.
the next real architectural leap was recurrent nets hitting a ceiling.
rnns and lstms could handle sequences, but they processed tokens one at a time, which made long-range dependencies hard to learn and training slow to parallelize.
attention mechanisms were bolted onto rnns first, letting the model weigh earlier tokens directly instead of relying on a single compressed hidden state. but the problem of recurrence was there.
then in 2017, vaswani et al. released "attention is all you need," removing recurrence entirely.
the transformer used self-attention as the only mechanism for mixing information across a sequence, which meant full parallelization during training and much better scaling with data and compute.
this single design choice is why gpt, sonnert, opus, and basically every modern llm exist.
the line from mcculloch-pitts' threshold neuron to a transformer block is direct: better math for learning, better architecture for structure, and eventually enough compute to let both run at scale.
this was bit about history of neural nets. how we got here? this was a brief answer.
Lately I’ve been learning math with ChatGPT (Astra) as my tutor, using this document scanning camera and a vibecoded tool that pastes the captured image right into the chat.
This way, I just work problems on paper and ChatGPT gives feedback. It’s really nice.
Introducing Gemini 4 Argon – our new frontier model.
It’s built for complex workflows across coding, enterprise knowledge work, and cybersecurity defense – rolling out today to a set of trusted testers through our Fairwind Program.
@wafer_ai I have read the first few chapters, I want to know what is the best way to read and understand this book? it was really a great learning and experience.
we launched the most comprehensive ai performance engineering repo in the world
now we'll be posting every single resource
this is Wafer's ai performance engineering series
save this to keep up with the series. links in thread 🧵
part 3: "Intro to CUDA C++" from NVIDIA's CUDA Programming Guide.
NVIDIA covers the execution model, memory movement, and correctness checks behind CUDA programs:
- kernel launches, grid dimensions, and the organization of threads into blocks.
- thread indexing and work assignment, including bounds checks for inputs that aren't multiples of the block size.
- unified memory and explicit memory management, including control over data placement and transfers between CPU and GPU.
- asynchronous kernel execution and synchronization before the CPU uses GPU results.
- shared memory and block-level synchronization for threads that need to exchange data and coordinate their work.
- runtime initialization and the setup costs that can affect measurements of the first runtime calls.
- error handling for kernel launches and execution, including failures that surface in later API calls.
- checking GPU results against a CPU implementation with a floating-point tolerance.
the worked examples connect these concepts in a complete vector addition program, showing how to divide the work, manage its memory, and check the results before moving on to more complex kernels.
figure from An Even Easier Introduction to CUDA (Updated)
in 1959, hubel and wiesel poked electrodes into a cat's visual cortex and found cells that fired only for specific patterns like lines and edges, arranged in a hierarchy of simple to complex.
they won a nobel prize, planted a seed: maybe vision is built in layers.
fukushima tried to build a machine version in 1980 called the neocognitron.
local pattern detectors pooled together, mimicking biology. it worked conceptually, but had no clean learning algorithm, just a hand-tuned skeleton waiting for life.
yann lecun gave it that life in 1989. he combined fukushima's convolutional structure with backpropagation, creating lenet.
it read handwritten digits well enough that US banks actually used it to process checks.
first time a neural net did a real job in the real world.
then the field stalled for a decade. not enough data, not enough compute. support vector machines took over, and neural nets were written off as a dead end.
scale changed everything in 2012.
alex krizhevsky, sutskever, and hinton built alexnet, a much deeper cnn trained on imagenet using gaming gpus.
it demolished the field by halving the error rate. deep learning's big bang.
a mad dash followed. vggnet proved deep stacking works. googLeNet optimized filter sizes.
then resnet in 2015 solved the vanishing gradient problem with skip connections, letting networks go hundreds of layers deep and becoming the ultimate vision backbone.
we use now these same skip (residual connections) in language models.
then the plot twist in 2020: vision transformers.
after 40 years of convolutional dominance, the field realized that with enough data, you can strip away the structural assumption of local filters entirely and let scale do the work. full circle.
in 1959, hubel and wiesel poked electrodes into a cat's visual cortex and found cells that fired only for specific patterns like lines and edges, arranged in a hierarchy of simple to complex.
they won a nobel prize, planted a seed: maybe vision is built in layers.
fukushima tried to build a machine version in 1980 called the neocognitron.
local pattern detectors pooled together, mimicking biology. it worked conceptually, but had no clean learning algorithm, just a hand-tuned skeleton waiting for life.
yann lecun gave it that life in 1989. he combined fukushima's convolutional structure with backpropagation, creating lenet.
it read handwritten digits well enough that US banks actually used it to process checks.
first time a neural net did a real job in the real world.
then the field stalled for a decade. not enough data, not enough compute. support vector machines took over, and neural nets were written off as a dead end.
scale changed everything in 2012.
alex krizhevsky, sutskever, and hinton built alexnet, a much deeper cnn trained on imagenet using gaming gpus.
it demolished the field by halving the error rate. deep learning's big bang.
a mad dash followed. vggnet proved deep stacking works. googLeNet optimized filter sizes.
then resnet in 2015 solved the vanishing gradient problem with skip connections, letting networks go hundreds of layers deep and becoming the ultimate vision backbone.
we use now these same skip (residual connections) in language models.
then the plot twist in 2020: vision transformers.
after 40 years of convolutional dominance, the field realized that with enough data, you can strip away the structural assumption of local filters entirely and let scale do the work. full circle.
but implementing this world widely is difficult I guess due to certain factors like:
you can't trust everyone to stop: one country stops, another keeps going.
AI is becoming a geopolitical weapon: governments won't willingly give up a possible strategic advantage.
nobody can fully verify it: a country can secretly keep training models behind closed doors.
huge economic incentives: companies and countries can make enormous money by moving faster.
competitive pressure: if you believe your rival is secretly continuing, you have a strong reason to continue too.
different governments, different values: democracies and authoritarian states won't easily agree on the same rules.
no global authority with real enforcement power: there is no “world AI police” that can reliably inspect every datacenter.
AI progress is hard to measure: what exactly counts as “halting”? training? deployment? research? smaller experiments?
existing models can keep improving through use: you can't simply freeze the entire ecosystem.
fear of falling behind: acountry may think: “If we stop and they don't, we're screwed.
we should not let AI capabilities outrun our ability to understand and control them. if it get the control, there is no off switch then.
We Must Pace the Frontier: I’ve written a new essay on why the AI industry should slow down, with a three-part plan for doing so.
Anthropic is unilaterally committing to the first of these steps. We’ll provide third-party evaluators with permanent, employee-level access to our systems, so that they can verify adherence to our safety measures, report on incidents, and assess models’ alignment during training.
You can read the full post here: https://t.co/OGyPb7yaYt