{"id":27942135,"url":"https://github.com/pranabdas/machine-learning","last_synced_at":"2025-07-12T06:36:20.040Z","repository":{"id":48275714,"uuid":"327270110","full_name":"pranabdas/machine-learning","owner":"pranabdas","description":"Machine learning and data science journey.","archived":false,"fork":false,"pushed_at":"2025-06-28T08:47:29.000Z","size":20632,"stargazers_count":2,"open_issues_count":0,"forks_count":3,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-06-28T09:47:08.609Z","etag":null,"topics":["data-science","machine-learning","numpy","pandas","python","sklearn"],"latest_commit_sha":null,"homepage":"https://pranabdas.github.io/machine-learning/","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/pranabdas.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,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2021-01-06T10:00:02.000Z","updated_at":"2025-06-28T08:46:53.000Z","dependencies_parsed_at":"2025-06-28T09:41:26.211Z","dependency_job_id":"6187f822-3c51-4f6f-8f45-d6c72926032b","html_url":"https://github.com/pranabdas/machine-learning","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/pranabdas/machine-learning","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pranabdas%2Fmachine-learning","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pranabdas%2Fmachine-learning/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pranabdas%2Fmachine-learning/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pranabdas%2Fmachine-learning/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pranabdas","download_url":"https://codeload.github.com/pranabdas/machine-learning/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pranabdas%2Fmachine-learning/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":264951610,"owners_count":23687974,"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":["data-science","machine-learning","numpy","pandas","python","sklearn"],"created_at":"2025-05-07T11:26:31.665Z","updated_at":"2025-07-12T06:36:20.022Z","avatar_url":"https://github.com/pranabdas.png","language":"Jupyter Notebook","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003ch1 align=\"center\"\u003eMy Machine Learning Journey\u003c/h1\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://github.com/pranabdas/machine-learning/actions/workflows/deploy-gh-pages.yml\"\u003e\u003cimg src=\"https://github.com/pranabdas/machine-learning/actions/workflows/deploy-gh-pages.yml/badge.svg\" alt=\"Deploy gh-pages status\"\u003e\u003c/a\u003e\n\u003c/p\u003e\n\nI am exploring machine learning by help of numerous resources around the web. In\nthis repository, I am keeping a record for myself and sharing here in case any\nof you find it helpful. The concepts are discussed in this [documentation page](\nhttps://pranabdas.github.io/machine-learning/), while the steps are performed in\njupyter notebooks in this repository. Clone the repository in your computer:\n\n```console\ngit clone --depth 1 https://github.com/pranabdas/machine-learning.git\n```\n\n### Setting up Python/Jupyter environment\nWe will be working on [Jupyter notebooks](https://jupyter.org) and use Python\nprogramming to perform our tasks. The required Python packages for this tutorial\nare listed in the `requirements.txt`. If you have Python 3 and specified\npackages installed in your computer, or know how to setup, go ahead with the\ntutorials. If you have [Python3](https://www.python.org) and pip installed, you\ncan install the required python packages using `requirements.txt`:\n```console\npip install --upgrade -r requirements.txt\n```\n\nIf you prefer running python and jupyter notebook inside a [Docker](\nhttps://www.docker.com) container, I have a [Dockerfile](./Dockerfile) to build\nthe container image. You can go through the Dockerfile and adjust according to\nyour needs. Build the image:\n\n```console\ndocker build -t jupyter .\n```\n\nWe can run the container in interactive mode with shared folder and port\nforwarding with the host:\n\n```console\ndocker run -ti -p 8888:8888 -v ${PWD}:/home jupyter bash\n```\n\nOnce you are inside the container, you can launch jupyter notebook by entering\n`jupyter-lab` and leave the container by typing `exit`.\n\nYou can follow the examples from the [notes](\nhttps://pranabdas.github.io/machine-learning/docs/) or go through them from the\nlinks below.\n\n### Notebooks:\n1.  [Nearest neighbor](./notebooks/01-nn-handwriting-recognition.ipynb) (Nearest\n    neighbor classification, various distance functions, K-nearest neighbors)\n2.  [K-nearest neighbors](./notebooks/02-knn-iris-dataset.ipynb)\n    (K-nearest neighbors to classify Iris flower species)\n3.  [Linear regression](./notebooks/03-linear-regression.ipynb)\n    (Linear regression using car price dataset, handling of missing data,\n    training and test set splitting, linear regression with multiple predictor\n    variable)\n4.  [Ridge regression](./notebooks/04-ridge-regression.ipynb) (we\n    will use regularizer on the above car price dataset)\n5.  [Logistic regression](./notebooks/05-logistic-regression-titanic.ipynb)\n    (predict survival of passengers in Titanic using logistic regression, binary\n    encoding)\n6.  [Naive Bayes](./notebooks/06-naive-bayes-uci-winery-dataset.ipynb) (Naive\n    Bayes or generative model to classify UCI winery dataset)\n7.  [Principal Component Analysis on Iris dataset](\n    ./notebooks/07-pca-iris-dataset.ipynb)\n8.  [Principal Component Analysis on MNIST dataset](\n    ./notebooks/08-pca-mnist-dataset.ipynb)\n9.  [Handwritten digit recognition using TensorFlow deep learning](\n    ./notebooks/09-deep-learning-tf-hw-digit.ipynb)\n10. [Image recognition using TensorFlow deep learning](\n    ./notebooks/10-deep-learning-tf-obj-recognition.ipynb)\n\n### Development of documentation\n```console\ngit clone --depth 1 https://github.com/pranabdas/machine-learning.git\n```\n\nPull upstream changes when you have no local changes:\n```console\ngit pull\n```\n\nIf you have local changes that you want to preserve:\n```console\ngit stash\ngit pull\ngit stash apply\n```\n\nPull the upstream changes and override local changes (be careful if you have\nimportant changes, in that case please make a new branch/commit and merge):\n```console\ngit fetch\ngit reset --hard origin/master\n```\n\nStart docusaurus server:\n```console\nnpm start\n```\n\nBuild docusaurus:\n```console\nnpm run build\n```\n\nDeploy documentation to GitHub pages:\n```console\nnpm run gh-deploy\n```\n\nUpgrade npm packages:\n```console\nnpm upgrade\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpranabdas%2Fmachine-learning","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpranabdas%2Fmachine-learning","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpranabdas%2Fmachine-learning/lists"}