def lyr_linear(
self, name_,
s_x_,
idim_, odim_,
init_=None, bias_=0., params_di_='params'):
'''
dense matrix multiplication, optionally adding a bias vector
'''
name_W = name_+'_w'
name_B = name_+'_b'
self.set_vars(params_di_)
if init_ is None:
init_ = dict(init_=[1.4/sqrt(idim_+odim_)])
v_W = self.get_variable(name_W, (idim_,odim_), **init_)
if bias_ is None:
s_ret = T.dot(s_x_, v_W)
else:
v_B = self.get_variable(name_B, (odim_,), bias_)
s_ret = T.dot(s_x_, v_W) + v_B
return s_ret
评论列表
文章目录