Machine-Learning-Collection
A resource for learning about Machine learning & Deep Learning
A hands-on collection of Python and PyTorch machine learning tutorials with companion YouTube videos, covering classic algorithms through advanced neural network architectures.
Machine Learning Collection is a repository of code tutorials and projects covering machine learning and deep learning, created as a learning resource. The author accompanies most entries with video explanations on YouTube so you can watch a walkthrough alongside the code if you prefer that format. The goal is to give people a clear, readable reference they can return to when they need to implement a specific technique.
The content is organized into two main areas. The first is a set of classic machine learning algorithms implemented from scratch in Python, including linear regression, logistic regression, K-nearest neighbors, K-means clustering, support vector machines, naive Bayes, decision trees, and a basic neural network. Each one links to a corresponding YouTube video.
The second and larger area is a collection of PyTorch tutorials. PyTorch is a widely used Python library for building and training neural networks. The tutorials start with basics: working with tensors (the fundamental data structures PyTorch uses), building simple neural network types, loading custom datasets, applying data augmentation, and using transfer learning (adapting a pre-trained model for a new task). From there the collection moves into more advanced topics, including text generation, semantic segmentation (labeling every pixel in an image), and object detection. There is a dedicated section on generative adversarial networks, which are a type of model that learns to produce new images or data by having two networks compete against each other. The collection also covers several well-known neural network architectures and includes tutorials on PyTorch Lightning, a library that simplifies training code.
A separate section covers TensorFlow, another popular deep learning library, with beginner tutorials and examples of common CNN architectures. CNN stands for convolutional neural network, a design commonly used for image-related tasks.
The repository is open source under the MIT license and accepts contributions.
Where it fits
- Learn to build and train neural networks in PyTorch by following working code examples paired with YouTube walkthroughs.
- Implement classic ML algorithms like K-nearest neighbors or SVMs from scratch in Python to understand how they work.
- Use the GAN tutorial code as a starting point for training your own image-generation model.
- Reference the transfer learning examples when adapting a pre-trained model for a custom image classification task.