This repository is designed to be a future source of the fundamental concepts concerning Machine Learning technics. The contents are divided into the basic concepts, providing state-of-art code for some models found in Fundamental-concepts
folder, whereas in Hands-on-ML
modern ML tools (Scikit-Learn, Tensorflow, and Keras) are explored (based on the book "Hands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow").
Brief description of the Jupyter notebooks in the Fundamental-concepts
:
simple_linear_regression.ipynb
: explains how to implement a cost function to fit data to a linear model (also using scikit-learn)multiple_linear_regression.ipynb
: the same of latter notebook, but using multiple featureslinear_logistic_regression.ipynb
: apply the linear logistic regression for classificationpolinomial_logistic_regression.ipynb
: same as latter, but for polinomial logistic regressionneurons_and_layers_tensorflow.ipynb
: shows the concepts of units and layers with tensorflowneural_net_from_scratch.ipynb
: implpementation from the scratch of a simple neural networkbinary_digit_classification.ipynb
: use neural networks with tensorflow and keras to recognize handwritten 0 and 1 imagesmulti_class_digit_classification.ipynb
: same as latter, but for digits from 0 to 9decision_trees.ipynb
: classification of credit score (Poor, Standard and Good) using a decision trees, random forest and XGBoost
In the Hands-on-ML
it is provided a series of notebooks using more suited ML tools (Scikit-Learn, Tensorflow, and Keras) with similar but more extensive topics. It worth highlighting the classical analysis of the Titanic dataset in titanic.ipynb
, as well as the implementation of a simple e-mail SPAM classifier in spam-classifier.ipynb
with >99% of tested accuracy (100% precision and >96% of recall) to detect SPAM e-mails in the Apache SpamAssassin’s dataset.