How I entered the machine learning world
summary
Implements a neural network from scratch in Crystal/Ruby style and trains it on a 28x28 grayscale digit dataset provided by Jung Yeo Kyung, using matrix multiplications and sigmoid activation. Uses a genetic algorithm with a 1000-member population, selection, crossover and mutation to evolve weight matrices instead of backpropagation. Logs per-generation best scores and sometimes reaches perfect fits but with unstable results due to overfitting and noisy data. Includes a CSV loader, builder, mutator and nursery components and shows working but variable accuracy.
AI-written summary · about
chapters (12)
- 0:00Introduction
- 1:09AI vs machine learning
- 4:32Genetic algorithms
- 6:53Overfitting and underfitting
- 10:12Neural networks basics
- 13:32Matrix operations in ML
- 16:17ML algorithms overview
- 17:45Crystal code example
- 20:20Genetic algorithm implementation
- 23:18Neural network scoring
- 26:12Neural network reproduction
- 28:14Summary and Q&A
related talks
51mMachine Learning with Ruby
33mAlpha2048 - how I taught my computer to play 1024
51mMachine Learning Exposed Deep and Reinforcement Learning
28mMachine Learning Live
42mDōmo arigatō, Mr. Roboto: Machine Learning with Ruby
34mML from a software engineer's perspective
43mA Gentle Introduction to Neural Networks
44mMachine Learning: The Bare Math Behind Libraries
