def feed_forward(self,sigma=.1):
'''Generate random feedforward wrec (lower triangular)'''
N_in = self.N_in
N_rec = self.N_rec
N_out = self.N_out
weights_path = self.init_weights_path
#Uniform between -.1 and .1
W_in = .2*np.random.rand(N_rec,N_in) - .1
W_out = .2*np.random.rand(N_out,N_rec) - .1
b_rec = np.zeros(N_rec)
b_out = np.zeros(N_out)
init_state = .1 + .01*np.random.randn(N_rec)
W_rec = np.tril(sigma*np.random.randn(N_rec,N_rec),-1)
input_Connectivity = np.ones([N_rec,N_in])
rec_Connectivity = np.ones([N_rec,N_rec])
output_Connectivity = np.ones([N_out,N_rec])
if not self.autapses:
W_rec[np.eye(N_rec)==1] = 0
rec_Connectivity[np.eye(N_rec)==1] = 0
np.savez(weights_path, W_in = W_in,
W_rec = W_rec,
W_out = W_out,
b_rec = b_rec,
b_out = b_out,
init_state = init_state,
input_Connectivity = input_Connectivity,
rec_Connectivity= rec_Connectivity,
output_Connectivity=output_Connectivity)
return weights_path
weight_initializer.py 文件源码
python
阅读 74
收藏 0
点赞 0
评论 0
评论列表
文章目录