pytorch之 activation funcion

 1 import torch
 2 import torch.nn.functional as F
 3 from torch.autograd import Variable
 4 import matplotlib.pyplot as plt
 5 
 6 # fake data
 7 x = torch.linspace(-5, 5, 200)  # x data (tensor), shape=(100, 1)
 8 x = Variable(x)
 9 x_np = x.data.numpy()   # numpy array for plotting
10 
11 # following are popular activation functions
12 y_relu = torch.relu(x).data.numpy()
13 y_sigmoid = torch.sigmoid(x).data.numpy()
14 y_tanh = torch.tanh(x).data.numpy()
15 y_softplus = F.softplus(x).data.numpy() # there's no softplus in torch
16 # y_softmax = torch.softmax(x, dim=0).data.numpy() softmax is a special kind of activation function, it is about probability
17 
18 # plt to visualize these activation function
19 plt.figure(1, figsize=(8, 6))
20 plt.subplot(221)
21 plt.plot(x_np, y_relu, c='red', label='relu')
22 plt.ylim((-1, 5))
23 plt.legend(loc='best')
24 
25 plt.subplot(222)
26 plt.plot(x_np, y_sigmoid, c='red', label='sigmoid')
27 plt.ylim((-0.2, 1.2))
28 plt.legend(loc='best')
29 
30 plt.subplot(223)
31 plt.plot(x_np, y_tanh, c='red', label='tanh')
32 plt.ylim((-1.2, 1.2))
33 plt.legend(loc='best')
34 
35 plt.subplot(224)
36 plt.plot(x_np, y_softplus, c='red', label='softplus')
37 plt.ylim((-0.2, 6))
38 plt.legend(loc='best')
39 
40 plt.show()

 

posted @ 2019-10-26 13:24  _Meditation  阅读(354)  评论(0编辑  收藏  举报