GPy/GPy/util/initialization.py

24 lines
493 B
Python
Raw Normal View History

2014-02-24 14:56:28 +00:00
'''
Created on 24 Feb 2014
@author: maxz
'''
import numpy as np
2014-03-24 11:16:57 +00:00
from GPy.util.pca import pca
2014-02-24 14:56:28 +00:00
def initialize_latent(init, input_dim, Y):
2014-05-06 16:30:17 +01:00
Xr = np.asfortranarray(np.random.randn(Y.shape[0], input_dim))
2014-02-24 14:56:28 +00:00
if init == 'PCA':
2014-03-24 11:16:57 +00:00
p = pca(Y)
PC = p.project(Y, min(input_dim, Y.shape[1]))
2014-02-24 14:56:28 +00:00
Xr[:PC.shape[0], :PC.shape[1]] = PC
2014-05-13 09:33:35 +01:00
var = p.fracs[:input_dim]
2014-02-24 14:56:28 +00:00
else:
2014-03-24 13:32:18 +00:00
var = Xr.var(0)
2014-05-13 08:33:26 +01:00
Xr -= Xr.mean(0)
Xr /= Xr.var(0)
2014-05-15 12:17:21 +01:00
return Xr, var/var.max()