def init_weights(self, a0, b0):
    w1 = ((1.0 / np.sqrt((self.d + 1))) * np.random.randn(self.d, self.n_hidden))
    b1 = np.zeros((self.n_hidden,))
    w2 = ((1.0 / np.sqrt((self.n_hidden + 1))) * np.random.randn(self.n_hidden))
    b2 = 0.0
    loggamma = np.log(np.random.gamma(a0, b0))
    loglambda = np.log(np.random.gamma(a0, b0))
    return (w1, b1, w2, b2, loggamma, loglambda)
def init_weights(self, a0, b0):
    w1 = ((1.0 / np.sqrt((self.d + 1))) * np.random.randn(self.d, self.n_hidden))
    b1 = np.zeros((self.n_hidden,))
    w2 = ((1.0 / np.sqrt((self.n_hidden + 1))) * np.random.randn(self.n_hidden))
    b2 = 0.0
    loggamma = np.log(np.random.gamma(a0, b0))
    loglambda = np.log(np.random.gamma(a0, b0))
    return (w1, b1, w2, b2, loggamma, loglambda)