• Stars
    star
    245
  • Rank 165,304 (Top 4 %)
  • Language
  • License
    MIT License
  • Created over 8 years ago
  • Updated over 6 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Curated list to learn the math basics for machine learning

awesomeMLmath

Curated list to learn the math basics for machine learning. Note that this is a biased list from a Deep Learning researcher.

The main topics are Calculus, Linear Algebra, Statistics, Probability and Signal Processing. If you "combine" Probability with Signal Processing you have Stochastic Processes which is the theory behind RNN, Kalman Filters, etc.

Calculus

Khan Academy Calculus

Linear Algebra

Khan Academy Linear Algebra
Linear Algebra MIT
Note that it is good to learn about eigenvalue decomposition, etc (DO NOT stop with just solving system of equations). You will use that to understand Principal Compoenent Analysis and the idea of space transformation which is what feature learning is all about.

Statistics and probability

edx Introduction to Statistics
edx Probability
An exploration of Random Processes for Engineers this is an advanced course but one of my favorites.
Information Theory
Here is the deal, a probability density function (pdf) is as much as we can know about a radom variable. Machine Learning is about estimating "momements" (you should learn that) of a pdf. If your random variable is not Gaussian, you will need more than mean and variance to correctly describe it (mean and var are the 1st and 2nd order moments). Information Theory generalizes all that.

Signal Processing

Signal processing will teach what are convolutions (for you convolutional neural nets). But no worries, signal processing is just linear algebra++. Ex. Fourier Transforms is an eigenvalue decomposition. All is one. If you trully learned linear algebra this part if mostly free.
edx Signals and Systems, part 1
edx Discrete Time Signal Processing
adaptive signal processing this is the basis of neural nets, but I couldn't find modern video material...

Other lists

What are some beginner deep learning projects
What are the best ways to pick up Deep Learning skills as an engineer? answer by Greg Brockman

How to study, the "degrees"

To get a practitioner badge, you should feel good if you can use Keras and XGboost for Kaggle competitions.

A developer level asks for the ability to write your own multilayer perceptron from scratch and contribute new layers to Keras. This means implementing models from papers in Theano or Tensorflow. You should need calculus and linear algebra to understand what you are doing. Maybe some statistics and probability to understand the expectation operators and cost functions.

To get your researcher degree you should be exploring new fields and writing new types of models. I can't tell you what to study to do that. Maybe nothing, maybe everything, if I knew it wouldn't be called research. But if you can understand the "An exploration of Random Processes for Engineers" you may already know most of the basic and intermediary math necessary.

More Repositories

1

seya

Bringing up some extra Cosmo to Keras.
Python
377
star
2

gumbel

Gumbel-Softmax Variational Autoencoder with Keras
Jupyter Notebook
133
star
3

DeepEEG

Deep learning for EEG analysis. This script was used to generate the results of the paper "Joint Optimization of Algorithmic Suites for EEG analysis" at EMBC 2014
Python
57
star
4

projects

things I help(ed) to build
53
star
5

X

X is a temporary name, but here lies RL
Python
40
star
6

Awesome-Distributed-ML

Awesome Distributed Machine Learning Frameworks
30
star
7

EvolutionMVE

minimum viable experiment using evolution strategy to play catch
Python
21
star
8

KerasPlaysCatch

Single file RL example with Keras
Python
13
star
9

hubot-recognizer

Hubot + deep learning = image classification
CoffeeScript
10
star
10

deeplivecoding

Deep Learning presentation and live coding demo
Python
7
star
11

keras_udrl

Keras implementation of Upside Down Reinforcement Learning
Python
6
star
12

adaptive_kernel_methods

Python code for Kernel LMS (KLMS) algorithm with sklearn API. We also implemented neural spike kernels. We also have KLMS and Kernel PCA for neural spike data.
Python
6
star
13

blog

Best Technical Blog NA+BR
4
star
14

blocks_contrib

Contributions related to mila-udem/blocks and bartvm/fuel libraries
Python
3
star
15

FaceCrop

Crop faces in parallel using OpenCV
C++
3
star
16

TwistedFate

Lady TensorFlow smiling
Python
2
star
17

RWTA-UCF101

Unsupervised feature extraction with RWTA for action recognition
Python
2
star
18

rcpn

Recurrent Convolutional Predictive Networks
Python
1
star
19

switch_fun

Nintendo Switch is fun
Python
1
star
20

autocorrentropy

Autocorrentropy function calculation and experiments
Python
1
star
21

dotfiles

dotfiles
Vim Script
1
star
22

edersantana.github.io

HTML
1
star
23

TorchWheels

[WIP] DDPGN Torcs port to Pytorch
Python
1
star