Skip to content

Instantly share code, notes, and snippets.

@breakbee
breakbee / regression.py
Created March 7, 2015 18:06
Regularization by Bridge Regression
from sklearn.preprocessing import PolynomialFeatures
import numpy as np
from sklearn import linear_model, grid_search
import matplotlib.pyplot as plt
X = np.linspace(-10, 10, 20)
Y = 0.001 * (X*X*X + X*X + X) + np.random.normal(0, 0.1, len(X))
poly = PolynomialFeatures(degree=10)
X_poly = poly.fit_transform(X[:, np.newaxis])
@breakbee
breakbee / gmm_mcmc.py
Created August 9, 2014 19:22
PyStan Code for GMM
import pystan
import numpy as np
import matplotlib.pyplot as plt
mean1 = 10
mean2 = -10
mean3 = 0
num1 = 200
num2 = 300
num3 = 500
@breakbee
breakbee / gmm_mcmc.stan
Created August 9, 2014 19:21
Gaussian Mixture Model for Stan
data {
int<lower=1> N;
int<lower=1> k;
real X[N];
}
parameters {
simplex[k] theta;
real mu[k];
}
model {
import pymc as pm
import numpy as np
ndims = 2
nobs = 20
n = 1000
y_sample = np.random.binomial(1, 0.5, size=(n,))
x_sample=np.empty(n)
x_sample[y_sample==0] = np.random.normal(-1, 1, size=(n, ))[y_sample==0]
import pymc as pm
import numpy as np
x_sample = np.random.normal(loc=1.0, scale=1.0, size=1000)
with pm.Model() as model:
mu = pm.Normal('mu', mu=0., sd=0.1)
x = pm.Normal('x', mu=mu, sd=1., observed=x_sample)
with model:
@breakbee
breakbee / pca_algorithm.py
Last active August 29, 2015 14:03
Algorithm of PCA
### 主成分分析による次元削減
# 共分散行列を求める
X_bar = np.array([row - np.mean(row) for row in X.transpose()]).transpose()
m = np.dot(X_bar.T, X_bar) / X.shape[0]
# 固有値問題を解く
(w, v) = np.linalg.eig(m)
v = v.T
# 固有値の大きい順に固有値と固有ベクトルをソート