Notes, code snippets and scripts from "Machine Learning with PyTorch and Scikit-Learn" by Sebastian Raschka
Here are my personal notes, scripts and code snippets I've collected in the course of reading this book. The publication puts a lot of emphasis on the practical side of machine learning while attempting to cover the theory and stat fundamentals behind machine learning as deeply as possible. A great reading for anyone interested in getting started with machine learning engineering. Below I provide an overview of the chapters as per the book's table of contents linking each specific python file.
NOTE: No python notebooks have been used in here seeing them as unnecessary and an annyoing complication in terms of setup. Instead, I consider a python venv + the use of sys args enough to run the scripts and see what they do. If you really can't do without, refer the author's repository.
$ python -m venv venv && source ./venv/bin/activate
(venv) $ pip install -r requirements.txt
$ python ./ch<2..=19>/main.py <function_to_execute_from_file>
$ python ./ch12/main.py torch_datasets
-
- Introduction to supervised, unsupervised, and reinforcement learning
-
- Implementing and training a perceptron on the Iris dataset
- Adaptive linear neurons and gradient descent
-
- Deep dive into logistic regression, SVMs, decision trees, and K-nearest neighbors
-
- Handling missing data, categorical data, and feature scaling
- Techniques for feature selection and importance
-
- Unsupervised and supervised data compression methods
- Principal component analysis and linear discriminant analysis
-
- Streamlining workflows with pipelines
- Using cross-validation for model evaluation
- Advanced techniques for tuning machine learning models
-
- Techniques for combining classifiers such as bagging, boosting, and ensemble methods
-
- Preparing text data and training models for sentiment analysis
-
- Techniques and challenges in linear and polynomial regression
- Using decision tree and random forest for regression
-
- K-means clustering, hierarchical clustering, and DBSCAN
- Evaluating clustering quality
-
- Basics of neural network architecture and training
- Implementing a multilayer perceptron for classifying handwritten digits
-
- Introduction to PyTorch and its functionalities for neural network training
-
- Deep dive into PyTorch's computation graphs and automatic differentiation
TODO
-
- Building and training CNNs for image classification with PyTorch
TODO
-
- Implementing RNNs for tasks like sentiment analysis and sequence modeling
TODO
-
- Understanding and implementing transformers for NLP tasks
TODO
-
- Fundamentals of GANs and their applications in generating synthetic data
TODO
-
- Basics and applications of graph neural networks
TODO
-
- Introduction to reinforcement learning and its methodologies for complex decision-making tasks
TODO