Topics To learn

--- MUST READ ---

Papers published at the Neural Information Processing Systems Conference. (NIPS)


Design and Analysis of Algorithms MIT(X)

Great introduce to algorithm design. (Best to learn in parallel with SICP)

Algorithmic Aspects of Machine Learning MIT(X)

Nonnegative matrix factorization, tensor decomposition, sparse coding, learning mixture models, matrix completion and inference in graphical models. et.c

Introduction to Mathematical Programming MIT(X)

This course is an introduction to linear optimization and its extensions emphasizing the underlying mathematical structures, geometrical ideas, algorithms and solutions of practical problems. The topics covered include: formulations, the geometry of linear optimization, duality theory, the simplex method, sensitivity analysis, robust optimization, large scale optimization network flows, solving problems with an exponential number of constraints and the ellipsoid method, interior point methods, semidefinite optimization, solving real world problems problems with computer software, discrete optimization formulations and algorithms.

Scientific efficient computation (Bremen course)


  1. Nervana Graph (Intel nGraph) DOC
  2. NGraph Github
  3. Nervana home page
  4. Intel(R) Math Kernel Library for Deep Neural Networks (Intel(R) MKL-DNN)
  5. NervanaSystems Neon Github


TensorRT developer Guide

Nvidia lib for improve computations.


The NVIDIA Deep Learning Accelerator (NVDLA) is a free and open architecture that promotes a standard way to design deep learning inference accelerators. With its modular architecture, NVDLA is scalable, highly configurable, and designed to simplify integration and portability. The hardware supports a wide range of IoT devices. Delivered as an open source project under the NVIDIA Open NVDLA License, all of the software, hardware, and documentation will be available on GitHub. Contributions are welcome.

Nvidia Teaching Kits

Software optimization resources

Best optimizing manuals resource
Performance Engineering of Software Systems MIT(X) Course

This class is a hands-on, project-based introduction to building scalable and high-performance software systems. Topics include performance analysis, algorithmic techniques for high performance, instruction-level optimizations, cache and memory hierarchy optimization, parallel programming, and building scalable distributed systems.

CE459: Programming for Performance, version 3 (Caltech)

ComputerVision NanoDegree 1000

In this program, you’ll learn the underlying math and programming concepts that drive pattern recognition, object and image classification tasks, and object tracking systems. This course will cover the latest in deep learning architectures used in industry, and you’ll combine current computer vision and deep learning techniques to power a variety of applications. With the practical skills you gain in this course, you’ll be able to program your own applications, extract information from any kind of image and spatial data, and solve real-world challenges.

Course Home

DeepLearning NanoDegree 600

Become an expert in neural networks, and learn to implement them in Keras and TensorFlow. Build convolutional networks for image recognition, recurrent networks for sequence generation, generative adversarial networks for image generation, and more.

Course Home

ComputerVision Robotics MicroMasters

Course Home

Computer Vision / CG Python (OLD)

CV Лекции и материалы - Общее:

  1. "Введение в компьютерное зрение и глубокое обучение" ВМК МГУ весна 2017
  2. "Введение в компьютерное зрение и глубокое обучение" ВМК МГУ 2008
  3. Курсы лаборатории компьютерной графики при ВМК МГУ


  1. GStreamer features
  2. Live stream with GStreamer примеры для gst-launch
  3. Howto
  4. GStreamer, RTP and live streaming, примеры для python
  5. Коллекции платных кодеков
  6. Hello World GStreamer на языке С


  1. Fast Event-based Corner Detection

CPython internals: A ten-hour codewalk through the Python interpreter source code

Course Home

Functional Programming on python with stepik

Course Home

Khan Academy courses

  1. Precalculus
  2. Multivariable Calculus


  1. Backprop2
  2. Backprop video
  3. Gradient Descent improving

Pro Tips about Human Face Detection

Here are some documents that provide information on Haar cascades.

More about hyperparameters, these are some great resources:

More specialized sources: