Everything I built

10 projects, from a neural network in raw NumPy to planets you can slingshot around a sun. Open any one for the details.

Bayan (بيان)

Samsung Innovation Campus capstone with a team of six: an Android app that simplifies hard Arabic text, adds diacritics and reads it aloud, all on the phone. I worked on the app.

Loading preview...

A Pygame gravity sandbox: drag to aim, release, and Newton's law decides whether the planet orbits, escapes or falls in.

10% → 80%

Test accuracy: ReLU, then LeakyReLU

A two-layer network that reads handwritten digits, written in raw NumPy with hand-derived backpropagation.

Outlook
|-- Sunny
|   Humidity
|   |-- High   -> No
|   `-- Normal -> Yes
|-- Overcast   -> Yes
`-- Rain
    Wind
    |-- Weak   -> Yes
    `-- Strong -> No

Shannon entropy and information gain worked by hand, then automated into a recursive ID3 builder that prints the tree.

× mean centroid · ○ medoid · orange: outlier

Both clustering algorithms from first principles, compared on how they handle noise and outliers.

VIF = 1 / (1 − R²)

AveRooms and AveBedrms: r ≈ 0.85

OLS, SGD, Lasso and Ridge compared on California house values, with a VIF diagnosis of correlated features.

Skew 177

187K listings · 20 columns · price distribution

Exploratory analysis of a 20-column housing dataset: cleaning, missing data and a price column with a skew of 177.

Planets that pull on each other in a VPython 3D scene, with collisions and labelled bodies.

A 3D ball thrown at any angle, slowed by drag and friction, bouncing with set elasticity.

w ← w + η(y − ŷ)x

x₁x₂OR
00-1
011
101
111

A single neuron that learns logic gates, starting from random weights and stopping at zero error.

Mohamed Thabet: Machine learning and simulation engineer

I'm 19 and I learn by rebuilding things from first principles: neural networks, decision trees and clustering in raw NumPy, and gravity you can throw planets into. If I can't write it from scratch, I don't consider it understood yet.

I started with physics simulations: a ball thrown with drag and bounce, a solar system in VPython, and a Pygame window where you slingshot planets around a sun. That turned into machine learning, where I write every algorithm by hand before touching a library. My MNIST network is NumPy matrix maths with hand-derived gradients, and switching ReLU to LeakyReLU took it from 10% to about 80% accuracy. I also do exploratory data analysis on real datasets, such as 187,000 house listings, using Pandas and Seaborn. At Samsung Innovation Campus I studied AI and machine learning, and in a team of six built Bayan, an Android app that simplifies Arabic text for readers with dyslexia.

Projects