Learning Machine Learning
My ongoing journey for learning Artificial Intelligence / Machine Learning using PyTorch and NumPy.
Technologies
- Python [
3.8
]:
Why PyTorch and NumPy?
Implementing in first PyTroch allows someone to understand at a basic level how a model works, making implementing it in NumPy easier due to having a structured path for implementation.
What have I done?
To start I implemented an estimation of $\sin(x)$ using SGD1 and a simple Neural Network in PyTroch. Then after understanding the code and overall overview of how my approximation of $\sin(x)$ achieved in PyTroch I implemented the same model purely in NumPy. After solving $\sin(x)$ I moved onto MNIST2, which I completed in PyTroch.
Future plans for this project?
I am planning to complete MNIST2 in NumPy and then move on to CIFAR-103, Object classification4 in stream, LLM's5, and autoregressive models6.
Repository: Github
-
Stochastic gradient descent.
$w:=w-\eta \nabla f(x)$ ↩ -
The MNIST database of handwritten digits has a training set of 60,000 examples and a test set of 10,000 examples. ↩↩
-
The CIFAR-10 dataset consists of 60000 32x32 colour images in 10 classes, with 6000 images per class. There are 50000 training images and 10000 test images. ↩
-
Object detection is the task of identifying an object in an image. ↩
-
Large Language Models. ↩
-
Ye ↩