Skip to content

Instantly share code, notes, and snippets.

View DuaneNielsen's full-sized avatar
👾
Happy!

Duane DuaneNielsen

👾
Happy!
View GitHub Profile
from vpython import sphere, vector, rate, color, arrow, canvas, cross, triangle, vertex
from math import sqrt
G = 6.67e-11 # N kg^-2 m^2
au = 1.495978707e11
day = 60 * 60 * 24
year = day * 365.25
earth_mass = 5.972e24 # kg
import glfw
from OpenGL.GL import *
from OpenGL.GL.shaders import compileProgram, compileShader
import numpy as np
import pyrr
def init_window(width, height, title="My OpenGL window"):
# initializing glfw library
if not glfw.init():
@DuaneNielsen
DuaneNielsen / em_algo_2D.py
Created January 19, 2020 00:37
Expectation Max algo Pytorch
import torch
from torch import tensor
from torch.distributions.multivariate_normal import MultivariateNormal
import matplotlib.pyplot as plt
from matplotlib.patches import Ellipse
import matplotlib.patches as mpatches
from math import acos, degrees
from matplotlib.pyplot import cm
"""
@DuaneNielsen
DuaneNielsen / batched_normal_distributions.py
Created January 16, 2020 21:09
Constructing batched distributions from data in pytorch and sampling from them
import torch
from torch.distributions.normal import Normal
from torch.distributions.multivariate_normal import MultivariateNormal
"""
Example of computing c batched Normal and Multivariate distributions from data
and sampling batches from them
"""
@DuaneNielsen
DuaneNielsen / em_algo.py
Created January 15, 2020 05:53
EM algorithm - 1D Uses logprob bayes update for numerical stability
import torch
from torch.distributions.normal import Normal
import matplotlib.pyplot as plt
"""
EM algo demo, in pytorch
"""
n = 40 # must be even number
@DuaneNielsen
DuaneNielsen / bayesian_update.py
Created January 14, 2020 20:28
Hypothesis testing using Bayesian inferance.
import torch
from torch.distributions.normal import Normal
import matplotlib.pyplot as plt
"""
Using Bayes to estimate the relative probability of 2 Hypotheses given the value of a single data point
Both hypothesis given equal prior probability of being correct
"""
@DuaneNielsen
DuaneNielsen / plot_multivariate_normal.py
Created January 13, 2020 22:14
Example of plotting MV Norm distribution in Pytorch
import torch
from torch.distributions.normal import Normal
from torch.distributions.multivariate_normal import MultivariateNormal
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D
d = Normal(0.0, 1.0)
x = torch.linspace(-4, 4.0, 50)
y = torch.exp(d.log_prob(x))
plt.plot(x, y)
@DuaneNielsen
DuaneNielsen / mp_scratch.py
Created January 13, 2020 20:01
Multiprocessing in python
import multiprocessing as mp
import os
import numpy as np
import multiprocessing.spawn
def info(title):
print(title)
print('module name:', __name__)
print('parent process:', os.getppid())
print('process id:', os.getpid())
@DuaneNielsen
DuaneNielsen / k_means2D.py
Created January 13, 2020 06:01
k-means 2D in pytorch
import torch
import matplotlib.pyplot as plt
"""
K means 2D demo, in pytorch
"""
n = 30 # must be even number
k = 3
@DuaneNielsen
DuaneNielsen / Short version
Last active December 1, 2019 01:05
Setting up Jupyter notebook kernels for multiple CUDA versions.
jupyter kernelspec list
Available kernels:
python2 /home/duane/PycharmProjects/.venv/imm/share/jupyter/kernels/python2
cd /home/duane/PycharmProjects/.venv/imm/share/jupyter/kernels/python2
vi kernel.json
{