layer()是一个对象
#to define the layer like this:
1 ''' 2 l1 = Layer(inputs,in_size=1,out_size=10,activation_function='relu') 3 #输入层定义 4 l2 = Layer(l1.outputs,10,1,None) 5 #隐藏层,输入是l1的输出,in_size=10,out_size=1,无激励函数 6 '''
coding:
1 class Layer(object): 2 def __init__(self,inputs,in_size,out_size,activation_function=None): 3 self.W = theano.shared(np.random.normal(0,1,(in_size,out_size))) 4 #初始化weights使用random.normal乱序随机效果比全0更好 5 self.b = theano.shared(np.zeros((out_size,))+0.1) 6 #初始化biases 7 self.Wx_plus_b = T.dot(inputs,self.W)+self.b 8 #y=Wx+b 9 #激励一下 10 self.activation_function = activation_function 11 if activation_function is None: 12 self.outpus = self.Wx_plus_b 13 else: 14 self.outputs = activation_function(self.Wx_plus_b)
还有更多的function可以继续def定义...
浙公网安备 33010602011771号