{"id":22686924,"url":"https://github.com/nonkloq/ml-from-scratch","last_synced_at":"2025-03-29T15:41:14.916Z","repository":{"id":157181591,"uuid":"628189881","full_name":"nonkloq/ml-from-scratch","owner":"nonkloq","description":"Machine Learning Algortihms from scratch.","archived":false,"fork":false,"pushed_at":"2023-12-26T09:38:49.000Z","size":11491,"stargazers_count":1,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-04T16:28:24.026Z","etag":null,"topics":["candidate-elimination-algorithm","decision-trees","expectation-maximization-algorithm","gaussian-mixture-models","kmeans-clustering","linear-classification","linear-regression","ml-from-scratch","multilayer-perceptron","naive-bayes-classifier","random-forest","unsupervised-learning"],"latest_commit_sha":null,"homepage":"","language":"Jupyter Notebook","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/nonkloq.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2023-04-15T07:11:04.000Z","updated_at":"2023-10-17T06:35:30.000Z","dependencies_parsed_at":"2023-12-08T11:28:37.714Z","dependency_job_id":"3deae835-1281-42bb-9177-6b21bd0b9235","html_url":"https://github.com/nonkloq/ml-from-scratch","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nonkloq%2Fml-from-scratch","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nonkloq%2Fml-from-scratch/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nonkloq%2Fml-from-scratch/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nonkloq%2Fml-from-scratch/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/nonkloq","download_url":"https://codeload.github.com/nonkloq/ml-from-scratch/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246207488,"owners_count":20740723,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["candidate-elimination-algorithm","decision-trees","expectation-maximization-algorithm","gaussian-mixture-models","kmeans-clustering","linear-classification","linear-regression","ml-from-scratch","multilayer-perceptron","naive-bayes-classifier","random-forest","unsupervised-learning"],"created_at":"2024-12-09T23:16:15.075Z","updated_at":"2025-03-29T15:41:14.884Z","avatar_url":"https://github.com/nonkloq.png","language":"Jupyter Notebook","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Machine Learning Algorithms From Scratch\n\nImplementations of several machine learning algorithms in python using numpy.\n\n## Notebooks\n\nThe following notebooks are included:\n\n### Supervised Learning\n\n- [Linear Regression](linear%20regression.ipynb)\n    - Simple Least Squares\n    - Oridnary Least Squares\n    - Bayesian Linear Regression\n    - Least Mean Squares\n- [Locally Weighted Regression (LWR)](LWR.ipynb)\n\n- [Linear Classification](linear%20classification.ipynb)\n    - Perceptron Learning Algorithm\n    - Logistic Regression\n    - Naive Bayes Classifier\n    - Support Vector Machine (Not implemented from scratch)\n      \n- [Multilayered Perceptron (Neural Network)](https://github.com/nonkloq/nn_dqn-from-scratch/blob/main/nn-mlp_from_scratch.ipynb)\n\n- [Multinomial \u0026 Gaussian Naive Bayes](Multinomial_and_GaussianNP.ipynb)\n    - Gaussian Naive Bayes (Clone from Linear Classification)\n    - Multinomial Naive Bayes\n\n\n\n#### Inductive Learning\n\n- [Candidate Elimination Algorithm (CEL)](CEL.ipynb)\n\n#### Ensemble Learning\n\n- [Decision Tree and Random Forest](trees_forest.ipynb)\n    - ID3 Algorithm\n    - Random Forest\n\n\n### Unsupervised Learning\n\n- [Unsupervised Learning](unsupervised%20learners.ipynb)\n    - K-Means\n    - K Nearest Neighbours\n      - Brute Force KNN\n      - KD-Tree\n      - Kernels to Compute Weight: ID_weight, Epanechnikov \u0026 Tricube\n    - Expectation Maximisation for Gaussian Mixture Model\n\n- [K-Means and Expectation-Maximisation for Gaussian Mixture Model (Viz)](EM_for_GMM_and_Kmeans.ipynb) (clone from unsupervised learners)\n  - Visual Comparison of K-Means vs. EM for GMM Using 2-Dimensional MNIST Data Reduced by PCA \u0026 Synthetic Data from N Gaussian Distributions.\n    \n- [K-Nearest Neighbors (KNN) for classification (iris dataset)](KNN_for_iris.ipynb) (clone from unsupervised learners)\n\n\n## Usage\n\nThe code is provided in Jupyter Notebook format (.ipynb), which you can either view directly on GitHub or download and run on your local machine. Each notebook contains clear implementations of the algorithms, along with the relevant formulas and pseudo code for that algorithm. For better understanding of the algorithms, check out the specific notebook of interest.\n\n## References\n\n- Pattern Recognition and Machine Learning by Christopher Bishop\n- Machine Learning: An Algorithmic Perspective, Second Edition by Stephen Marsland\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnonkloq%2Fml-from-scratch","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnonkloq%2Fml-from-scratch","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnonkloq%2Fml-from-scratch/lists"}