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定义...

 

posted on 2022-08-02 15:18  Jolyne123  阅读(36)  评论(0)    收藏  举报