有没有更好的方法来实现gpu的selu激活功能?

时间:2017-11-15 20:40:13

标签: optimization theano

因此,我尝试在此papertheano中实施selu激活。 我目前的实施是:

def selu(x):                                                                    
    alpha = 1.6733                                                              
    lambda_ = 1.0507                                                            
    inds = x <= 0                                                               
    selu = (alpha * theano.theano.tensor.exp(x) - alpha)                        
    x = theano.tensor.set_subtensor(x[inds.nonzero()],selu[inds.nonzero()])        
    x = lambda_ * x                                                             
    return x

不幸的是我&#34;不能&#34;使用流行的框架Keras所以我已经开始尝试自己实现它了。 我不熟悉使函数gpu友好所需的技术,因此我正在寻求帮助。谢谢!

1 个答案:

答案 0 :(得分:0)

以下是更快的解决方案:

import theano                                                                   
def selu(x):                                                                    
    alpha = 1.6733                                                              
    lambda_ = 1.0507                                                            
    return lambda_ * theano.tensor.nnet.elu(x, alpha=alpha)