说明:绘制激活函数sigmoid,tanh,relu,elu,直观上了解一下。
# __author__ = 'czx'
# coding=utf-8
import numpy as np
from numpy import *
import matplotlib
import matplotlib.pyplot as plt
def sigmoid(x):
return 1.0/(1.0+exp(-x))
def tanh(x):
return 2.0/(1.0+exp(-2*x))-1
def relu(x):
y = x.copy()
y[y<0]=0
return y
def elu(x,a):
y = x.copy()
for i in range(y.shape[0]):
if y[i]<0:
y[i] = a * (exp(y[i])-1)
return y
if __name__=='__main__':
x= arange(-3.0,3.0,0.01)
y_sigmoid = sigmoid(x)
y_tanh = tanh(x)
y_relu = relu(x)
y_elu = elu(x,0.25)
plt.plot(x,y_sigmoid,'r',linewidth=2.5,label=u'sigmoid')
plt.plot(x,y_tanh,'g',linewidth=2.5,label=u'tanh')
plt.plot(x,y_relu,'b',linewidth=2.5,label=u'relu')
plt.plot(x,y_elu,'k',linewidth=2.5,label=u'elu')
plt.ylim([-1,1])
plt.xlim([-1,1])
plt.legend()
plt.grid(color='b' , linewidth='0.3' ,linestyle='--')
plt.show(

本文通过绘制sigmoid、tanh、relu和elu四种激活函数的图像,帮助读者直观理解它们的不同特性及适用范围。
最低0.47元/天 解锁文章
5512

被折叠的 条评论
为什么被折叠?



