Numerical Methods with Python, Numpy and Matplotlib

Overview

Numerical Bric-a-Brac

Collections of numerical techniques with Python and standard computational packages (Numpy, SciPy, Numba, Matplotlib ...).

Differential Equations

Differential Equations describe many physical systems

Notebooks
implicit_solver
GitHub
Implementation of Baraff's "Large steps in cloth simulation."
spring_integrator
Analytic solution to damped spring
poisson_solver
Diffusion problem
laplace_inpainting
Laplace inpainting to restore an image

Optimizations

Those notebooks are the core algorithms for supervised and unsupervised learning in Machine learning.

Machine Learning Notebooks
Supervised Learning
linear_regression
Linear regression from scratch
polynomial_regression
Polynomial regression from scratch
logistic_regression
Logistic regression from scratch
multiclass_classifiation
Multiclass Classification with Scikit-learn
support_vector_machine
Support Vector Machine (SVM) with Scikit-learn
Unsupervised Learning
k_means
K-means clustering from scratch
Other Notebooks
multivariable_optimizations
Multivariable Optimizations (Gradient Descent and Newton's methods)

Linear Algebra

Standard linear algebra algorithms

Notebooks
inverse_kinematic
Inverse kinematics using least square methods to solve the ill-posed problem
radial_basis_kernels
Interpolation with Radial Basis Functions (RBFs)

Graph Theory

Part of discrete mathematics, graph theory is the study of graphs, a structures used to model pairwise relations between objects. Graph theory includes problems such as the travelling salesman problem and the spectral analysis of graph.

Notebooks
graph_matrix
List matrices describing a finite graph.
graph_coloring
Greedy algorithm for graph coloring.
dijkstra
Find the shortest paths between nodes in a graph.
spectral_graph_theory
Spectral Graph Thoery - PLACEHOLDER (WIP).

Neural Network

Artificial neural networks are composed of artificial neurons organized into layers. Neural networks are employed for regression analysis (function approximation) and classification problems.

Notebooks
ConvNets
face_keypoints
Facial keypoints detection
conv_net
Image classification on CIFAR-10 using CNN
res_net
Image classification on CIFAR-10 using ResNet
Generative Models
ae_fashion_mnist
Autoencoder on Fashion MNIST
variational_autoencoder
Variational autoencoder on MNIST

Stencil Codes

Stencil codes are at the heart of many numerical solvers and physical simulation codes. They are of particular interest in scientific computing research for solving partial differential equations, image processing, cellular automata, etc. The Finite Difference Method (FDM) is closely related to stencil codes.

Notebooks
poisson_solver
Diffusion problem
laplace_inpainting
Laplace inpainting to restore an image
convolution
Image processing with convolution kernels
conway
Cellular automata with Conway's game of life rules

Dimensionality Reduction

Dimensionality reduction is the process of converting data from a high-dimensional space to a low-dimensional space (subspace). A lower dimension representation aids in comprehending meaningful properties (such as latent variables), compressing the data, and removing noise from the original data.

Notebooks
pca_transform
Optimal transformation of a point cloud with PCA
svd_compression
Image compression with Singular Value Decomposition
autoencoder
Autoencoder on Fashion MNIST
eigenfaces
Eigenfaces for face recognition on Olivetti faces dataset

Miscellaneous

Random notebooks about dynamic programming and monte carlo methods

Notebooks
markov_chain
Example of ML pipeline with Snakemake
dynamic_programming
Dynamic programming Examples
monte_carlo_integration
Examples of Monte Carlo integrations
subspace_deformation
Skeletal Subspace Deformation
path_tracing
GitHub
Monte Carlo Path Tracing
markov_chain
Generate authors names from the Collection of Poems from Poetry Foundation
You might also like...
Implementing Graph Convolutional Networks and Information Retrieval Mechanisms using pure Python and NumPy

Implementing Graph Convolutional Networks and Information Retrieval Mechanisms using pure Python and NumPy

A numpy-based implementation of RANSAC for fundamental matrix and homography estimation. The degeneracy updating and local optimization components are included and optional.
A numpy-based implementation of RANSAC for fundamental matrix and homography estimation. The degeneracy updating and local optimization components are included and optional.

Description A numpy-based implementation of RANSAC for fundamental matrix and homography estimation. The degeneracy updating and local optimization co

Technical Indicators implemented in Python only using Numpy-Pandas as Magic  - Very Very Fast! Very tiny!  Stock Market Financial Technical Analysis Python library .  Quant Trading automation or cryptocoin exchange
Technical Indicators implemented in Python only using Numpy-Pandas as Magic - Very Very Fast! Very tiny! Stock Market Financial Technical Analysis Python library . Quant Trading automation or cryptocoin exchange

MyTT Technical Indicators implemented in Python only using Numpy-Pandas as Magic - Very Very Fast! to Stock Market Financial Technical Analysis Python

Composable transformations of Python+NumPy programs: differentiate, vectorize, JIT to GPU/TPU, and more
Composable transformations of Python+NumPy programs: differentiate, vectorize, JIT to GPU/TPU, and more

JAX: Autograd and XLA Quickstart | Transformations | Install guide | Neural net libraries | Change logs | Reference docs | Code search News: JAX tops

Composable transformations of Python+NumPy programs: differentiate, vectorize, JIT to GPU/TPU, and more
Composable transformations of Python+NumPy programs: differentiate, vectorize, JIT to GPU/TPU, and more

JAX: Autograd and XLA Quickstart | Transformations | Install guide | Neural net libraries | Change logs | Reference docs | Code search News: JAX tops

Implements Stacked-RNN in numpy and torch with manual forward and backward functions

Recurrent Neural Networks Implements simple recurrent network and a stacked recurrent network in numpy and torch respectively. Both flavours implement

We evaluate our method on different datasets (including ShapeNet, CUB-200-2011, and Pascal3D+) and achieve state-of-the-art results, outperforming all the other supervised and unsupervised methods and 3D representations, all in terms of performance, accuracy, and training time. Minimal deep learning library written from scratch in Python, using NumPy/CuPy.
Minimal deep learning library written from scratch in Python, using NumPy/CuPy.

SmallPebble Project status: experimental, unstable. SmallPebble is a minimal/toy automatic differentiation/deep learning library written from scratch

 An Ensemble of CNN (Python 3.5.1 Tensorflow 1.3 numpy 1.13)
An Ensemble of CNN (Python 3.5.1 Tensorflow 1.3 numpy 1.13)

An Ensemble of CNN (Python 3.5.1 Tensorflow 1.3 numpy 1.13)

Owner
Vincent Bonnet
Vincent Bonnet
Img-process-manual - Utilize Python Numpy and Matplotlib to realize OpenCV baisc image processing function

Img-process-manual - Opencv Library basic graphic processing algorithm coding reproduction based on Numpy and Matplotlib library

Jack_Shaw 2 Dec 12, 2022
Composable transformations of Python+NumPy programsComposable transformations of Python+NumPy programs

Chex Chex is a library of utilities for helping to write reliable JAX code. This includes utils to help: Instrument your code (e.g. assertions) Debug

DeepMind 506 Jan 8, 2023
MLP-Numpy - A simple modular implementation of Multi Layer Perceptron in pure Numpy.

MLP-Numpy A simple modular implementation of Multi Layer Perceptron in pure Numpy. I used the Iris dataset from scikit-learn library for the experimen

Soroush Omranpour 1 Jan 1, 2022
Using NumPy to solve the equations of fluid mechanics together with Finite Differences, explicit time stepping and Chorin's Projection methods

Computational Fluid Dynamics in Python Using NumPy to solve the equations of fluid mechanics ?? ?? ?? together with Finite Differences, explicit time

Felix Köhler 4 Nov 12, 2022
A PyTorch-based open-source framework that provides methods for improving the weakly annotated data and allows researchers to efficiently develop and compare their own methods.

Knodle (Knowledge-supervised Deep Learning Framework) - a new framework for weak supervision with neural networks. It provides a modularization for se

null 93 Nov 6, 2022
aka "Bayesian Methods for Hackers": An introduction to Bayesian methods + probabilistic programming with a computation/understanding-first, mathematics-second point of view. All in pure Python ;)

Bayesian Methods for Hackers Using Python and PyMC The Bayesian method is the natural approach to inference, yet it is hidden from readers behind chap

Cameron Davidson-Pilon 25.1k Jan 2, 2023
Implementation of temporal pooling methods studied in [ICIP'20] A Comparative Evaluation Of Temporal Pooling Methods For Blind Video Quality Assessment

Implementation of temporal pooling methods studied in [ICIP'20] A Comparative Evaluation Of Temporal Pooling Methods For Blind Video Quality Assessment

Zhengzhong Tu 5 Sep 16, 2022
Linear algebra python - Number of operations and problems in Linear Algebra and Numerical Linear Algebra

Linear algebra in python Number of operations and problems in Linear Algebra and

Alireza 5 Oct 9, 2022
This repository contains numerical implementation for the paper Intertemporal Pricing under Reference Effects: Integrating Reference Effects and Consumer Heterogeneity.

This repository contains numerical implementation for the paper Intertemporal Pricing under Reference Effects: Integrating Reference Effects and Consumer Heterogeneity.

Hansheng Jiang 6 Nov 18, 2022
A series of convenience functions to make basic image processing operations such as translation, rotation, resizing, skeletonization, and displaying Matplotlib images easier with OpenCV and Python.

imutils A series of convenience functions to make basic image processing functions such as translation, rotation, resizing, skeletonization, and displ

Adrian Rosebrock 4.3k Jan 8, 2023