/in_simple_english

Small projects to clarify big concepts

Primary LanguageJupyter Notebook

Small projects to clarify big concepts

In this project, I try to clarify for myself and others the big mathematical (and not only) concepts. I try to find the simplest possible example and roll from there by asking a lot of "simple/obvious/stupid" questions. Here you can find a collection of Jupyter notebooks with different amount of content in them.

The links below will render the notebooks in nbviewer.

Main finished notebooks

gradient_descent - simplistic visualization of 1D and 2D gradient descent.

bag_of_visual_words - tf-idf reweighting for visual bag of words in pictures.

homogeneous_coords - couple of geometric operation for homogeneous points.

Interpolation - mainly thoughts about cubic interpolation and how to apply interpolations for scaling up images.

system_of_linear_equations - overview of how to solve Ax=b and Ax=0

local_image_operators - local image operators. Applying Binomial, Box and Sobel filter.

topological_sorting - code snippet to practice graph search using topological sorting.

Kullback_Leibler - an example of comparing two 1D discrete distribution using Kullback-Leibler divergence.

ml_regression - maximum likelihood estimation for linear regression. Bundle adjustment as a ML estimation method

Folder in_progress

This folder contains more complicated topics which were not completely simplified yet.

Gaussian Processes (gp)

* **GP_starting example**  - implementing GP from scratch
* **Gaussian_processes_functional** - GP implementation using funtional programming and multi dimensional input
* **SkLearn_example** - model selection and first steps for optimal parameter selection using sklearn framework