{"id":13414934,"url":"https://github.com/amitkaps/hackermath","last_synced_at":"2025-05-16T13:06:42.312Z","repository":{"id":42187367,"uuid":"59489896","full_name":"amitkaps/hackermath","owner":"amitkaps","description":"Introduction to Statistics and Basics of Mathematics for Data Science - The Hacker's Way","archived":false,"fork":false,"pushed_at":"2017-11-26T06:23:58.000Z","size":26070,"stargazers_count":1450,"open_issues_count":5,"forks_count":286,"subscribers_count":76,"default_branch":"master","last_synced_at":"2025-04-12T09:19:36.896Z","etag":null,"topics":["calculus","linear-algebra","machine-learning","python","statistics"],"latest_commit_sha":null,"homepage":null,"language":"Jupyter Notebook","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/amitkaps.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2016-05-23T14:32:02.000Z","updated_at":"2025-04-07T17:39:59.000Z","dependencies_parsed_at":"2022-09-14T15:51:58.572Z","dependency_job_id":null,"html_url":"https://github.com/amitkaps/hackermath","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/amitkaps%2Fhackermath","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/amitkaps%2Fhackermath/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/amitkaps%2Fhackermath/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/amitkaps%2Fhackermath/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/amitkaps","download_url":"https://codeload.github.com/amitkaps/hackermath/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254535829,"owners_count":22087399,"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":["calculus","linear-algebra","machine-learning","python","statistics"],"created_at":"2024-07-30T21:00:40.042Z","updated_at":"2025-05-16T13:06:42.289Z","avatar_url":"https://github.com/amitkaps.png","language":"Jupyter Notebook","readme":"# HackerMath for Machine Learning\n\n\u003e “Study hard what interests you the most in the most undisciplined, irreverent and original manner possible.”\n― Richard Feynman\n\nMath literacy, including proficiency in Linear Algebra and Statistics,is a must for anyone pursuing a career in data science. The goal of this workshop is to introduce some key concepts from these domains that get used repeatedly in data science applications. Our approach is what we call the “Hacker’s way”. Instead of going back to formulae and proofs, we teach the concepts by writing code. And in practical applications. Concepts don’t remain sticky if the usage is never taught.\n\nThe focus will be on depth rather than breadth. Three areas are chosen - Hypothesis Testing, Supervised Learning and Unsupervised Learning. They will be covered to sufficient depth - 50% of the time will be on the concepts and 50% of the time will be spent coding them.\n\n\n\u003ca href=\"https://www.youtube.com/watch?v=UqwsRzFmu3c\"\u003e\u003cimg src=\"img/hackermath_video.png\"\u003e\u003c/a\u003e\n\n*More details at [http://amitkaps.com/hackermath](http://amitkaps.com/hackermath)*\n\nSee it in action: [![Binder](https://mybinder.org/badge.svg)](https://mybinder.org/v2/gh/amitkaps/hackermath/master)\n\n\n## Module #1: Hypothesis Testing\n\n*Math Concepts*\n\n- Basic Metrics: Mean, Variance, Covariance, Correlation\n- Discrete Probability Distributions: Bernoulli, Binomial\n- Cumulative Mass Function, Probability Mass Function\n- Continuous Probability Distributions: Poisson, Uniform, Normal, Beta, Gamma\n- Cumulative Distribution Function, Probability Density Function\n\n*ML Applications*\n\n- Direct Simulation\n- Shuffling\n- Bootstrapping\n- Application to A/B Testing\n\n## Module #2: Supervised Learning\n\n*Math Concepts*\n\n- Basics of Matrix Operation\n- Matrix Determinant, Inverse\n- Basics of Linear Algebra\n- Solve for `Ax=b` for `nxn`\n- Solve for `Ax=b` for `nxp+1`\n\n*ML Applications*\n\n- Linear Regression\n- L2 Regularization\n- Gradient Descent\n- Linear Classifier\n- Logistic Regression\n\n### Module #3: Unsupervised Learning\n\n*Math Concepts*\n\n- Matrix Projections\n- Solve for `Ax=λx` for `nxn`\n- Eigenvectors \u0026 Eigenvalues\n- Distance in Vector Space\n\n*ML Applications*\n\n- Dimensionality Reduction\n- Principle Component Analysis\n- Cluster Analysis\n\n## Target Audience\n\n- Someone with a background in programming who wants to pick the math needed for data science and get a flavor for different data science problems\n- Someone who is a beginner in data science or has been doing data analysis (at least using Excel at a minimum) and wants to pick skills to take the next step in their data science career\n\n## Pre-requisites\n\n- Having a basic understanding of linear algebra would help. And we know you may have forgotten all about it from your school or college days. So here is an amazing video playlist by @3blue1brown to learn [The Essence of Linear Algebra](https://www.youtube.com/playlist?list=PLZHQObOWTQDPD3MizzM2xVFitgF8hE_ab) in a very visual way.\n- Also, a touch of calculus knowledge would make it also easier. So if you want to brush up your basic calculus skills, then @3blue1brown has another amazing video playlist to learn [The Essence of Calculus](https://www.youtube.com/playlist?list=PLZHQObOWTQDMsr9K-rj53DwVRMYO3t5Yr) in a very visual way.\n- Programming knowledge is mandatory. You should, at the bare minimum, be able to write conditional statements, use loops, be comfortable writing functions and be able to understand code snippets and come up with programming logic. Since we will be using Python - brush up your basics there. Specifically, we expect you to know the first three sections from this: [http://anandology.com/python-practice-book/](http://anandology.com/python-practice-book/)\n\n## Software Requirements\n\nYou will require the Python data stack for the workshop. Please install Ananconda for Python 3.5 for the workshop. That has everything we need for the workshop. For attendees more curious, we will be using Jupyter Notebook as our IDE. We will be introducing numpy, scipy, seaborn, matplotlib, plotnine, statsmodel and scikit-learn.\n\nThe working repo for this workshop is at [https://github.com/amitkaps/hackermath/](https://github.com/amitkaps/hackermath/)\n\n---\n\n**Authors:**\n\n[Amit Kapoor](https://twitter.com/amitkaps/)\n\n[Bargava Subramanian](https://twitter.com/bargava/)\n","funding_links":[],"categories":["Uncategorized","Jupyter Notebook","🔢 Mathematics"],"sub_categories":["Uncategorized","Tools"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Famitkaps%2Fhackermath","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Famitkaps%2Fhackermath","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Famitkaps%2Fhackermath/lists"}