HTML 🌎 machine learning algorithms tutorials (mainly in Python3)
machine-learning
This is one of the continuously updated repositories that documents personal journey on learning data science related topics. Currently, contents are organized into two separate repositories based on the following table's description.
All other data analytic related stuffs, e.g. concepts, statistics, visualizations (R, Python)
Within each section, documentations are listed in reverse chronological order of the start date (the date when the first notebook in that folder was created, if the notebook happened to be updated, then the actual date will be at the top of each notebook). Each of them are independent of one another unless specified.
Documentation Listings
model_selection : 2017.06.12
Methods for selecting, evaluating models/algorithms.
K-fold cross validation, grid/random search from scratch. [nbviewer]
spark : 2017.06.07
Note that the following notebook is not a tutorial on the basics of spark, it assumes you're already somewhat familar with it or can pick it up quickly by checking documentations along the way. For those interested there's also a pyspark cheatsheet that may come in handy.
Principal Component Analysis (PCA) from scratch. [nbviewer]
recsys : 2016.12.17
Recommendation System. Starters into the field should go through the first notebook to understand the basics of matrix factorization methods. Then the second notebook - "ALS-WR for implicit feedback data" and third notebook - "Bayesian Personalized Ranking" are independent of one another as they are simply different algorithms.
Alternating Least Squares with Weighted Regularization (ALS-WR) from scratch. [nbviewer]
ALS-WR for implicit feedback data from scratch & mean average precision at k evaluation. [nbviewer]
Bayesian Personalized Ranking (BPR) from scratch & AUC evaluation. [nbviewer]
trees : 2016.12.10
Tree-based models for both regression and classification tasks.
Walking through keras, a high-level deep learning library. Note that this is only a API walkthrough, not a tutorial on the details of deep learning. For those interested there's also a keras cheatsheet that may come in handy.
Walking through H2O 2015 World Training GitBook.The walkthrough does basically zero feature engineering with the example dataset, as it is just browsing through its function calls and parameters. Apart from that, H2o Resources also contains booklets on each of the models.
Choosing the optimal cutoff value for logistic regression using cost-sensitive mistakes (meaning when the cost of misclassification might differ between the two classes) when your dataset consists of unbalanced binary classes. e.g. Majority of the data points in the dataset have a positive outcome, while few have negative, or vice versa. The notion can be extended to any other classification algorithm that can predict class’s probability, this documentation just uses logistic regression for illustration purpose.
Visualize two by two standard confusion matrix and ROC curve with costs using ggplot2.
A collection of scattered old clustering documents in R.
2015.12.08 | Toy sample code of the LDA algorithm (gibbs sampling) and the topicmodels library. [Rmarkdown]
2015.11.19 | k-shingle, Minhash and Locality Sensitive Hashing for solving the problem of finding textually similar documents. [Rmarkdown]
2015.11.17 | Introducing tf-idf (term frequency-inverse document frequency), a text mining technique. Also uses it to perform text clustering via hierarchical clustering. [Rmarkdown]
2015.11.06 | Some useful evaluations when working with hierarchical clustering and K-means clustering (K-means++ is used here). Including Calinski-Harabasz index for determine the right K (cluster number) for clustering and boostrap evaluation of the clustering result’s stability. [Rmarkdown]
linear_regression : 2015.10.30
Training Linear Regression with gradient descent in R.
Briefly covers the interpretation and visualization of linear regression's summary output.