我就废话不多说了,大家还是直接看代码吧~
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
import matplotlib.pyplot as plt
import numpy as np
def sigmoid(x):
# 直接返回sigmoid函数
return 1. / ( 1. + np.exp( - x))
def plot_sigmoid():
# param:起点,终点,间距
x = np.arange( - 8 , 8 , 0.2 )
y = sigmoid(x)
plt.plot(x, y)
plt.show()
if __name__ = = '__main__' :
plot_sigmoid()
|
如图:
补充知识:python:实现并绘制 sigmoid函数,tanh函数,ReLU函数,PReLU函数
如下所示:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
|
# -*- coding:utf-8 -*-
from matplotlib import pyplot as plt
import numpy as np
import mpl_toolkits.axisartist as axisartist
def sigmoid(x):
return 1. / ( 1 + np.exp( - x))
def tanh(x):
return (np.exp(x) - np.exp( - x)) / (np.exp(x) + np.exp( - x))
def relu(x):
return np.where(x< 0 , 0 ,x)
def prelu(x):
return np.where(x< 0 , 0.5 * x,x)
def plot_sigmoid():
x = np.arange( - 10 , 10 , 0.1 )
y = sigmoid(x)
fig = plt.figure()
# ax = fig.add_subplot(111)
ax = axisartist.Subplot(fig, 111 )
ax.spines[ 'top' ].set_color( 'none' )
ax.spines[ 'right' ].set_color( 'none' )
# ax.spines['bottom'].set_color('none')
# ax.spines['left'].set_color('none')
ax.axis[ 'bottom' ].set_axisline_style( "-|>" ,size = 1.5 )
ax.spines[ 'left' ].set_position(( 'data' , 0 ))
ax.plot(x, y)
plt.xlim([ - 10.05 , 10.05 ])
plt.ylim([ - 0.02 , 1.02 ])
plt.tight_layout()
plt.savefig( "sigmoid.png" )
plt.show()
def plot_tanh():
x = np.arange( - 10 , 10 , 0.1 )
y = tanh(x)
fig = plt.figure()
ax = fig.add_subplot( 111 )
ax.spines[ 'top' ].set_color( 'none' )
ax.spines[ 'right' ].set_color( 'none' )
# ax.spines['bottom'].set_color('none')
# ax.spines['left'].set_color('none')
ax.spines[ 'left' ].set_position(( 'data' , 0 ))
ax.spines[ 'bottom' ].set_position(( 'data' , 0 ))
ax.plot(x, y)
plt.xlim([ - 10.05 , 10.05 ])
plt.ylim([ - 1.02 , 1.02 ])
ax.set_yticks([ - 1.0 , - 0.5 , 0.5 , 1.0 ])
ax.set_xticks([ - 10 , - 5 , 5 , 10 ])
plt.tight_layout()
plt.savefig( "tanh.png" )
plt.show()
def plot_relu():
x = np.arange( - 10 , 10 , 0.1 )
y = relu(x)
fig = plt.figure()
ax = fig.add_subplot( 111 )
ax.spines[ 'top' ].set_color( 'none' )
ax.spines[ 'right' ].set_color( 'none' )
# ax.spines['bottom'].set_color('none')
# ax.spines['left'].set_color('none')
ax.spines[ 'left' ].set_position(( 'data' , 0 ))
ax.plot(x, y)
plt.xlim([ - 10.05 , 10.05 ])
plt.ylim([ 0 , 10.02 ])
ax.set_yticks([ 2 , 4 , 6 , 8 , 10 ])
plt.tight_layout()
plt.savefig( "relu.png" )
plt.show()
def plot_prelu():
x = np.arange( - 10 , 10 , 0.1 )
y = prelu(x)
fig = plt.figure()
ax = fig.add_subplot( 111 )
ax.spines[ 'top' ].set_color( 'none' )
ax.spines[ 'right' ].set_color( 'none' )
# ax.spines['bottom'].set_color('none')
# ax.spines['left'].set_color('none')
ax.spines[ 'left' ].set_position(( 'data' , 0 ))
ax.spines[ 'bottom' ].set_position(( 'data' , 0 ))
ax.plot(x, y)
plt.xticks([])
plt.yticks([])
plt.tight_layout()
plt.savefig( "prelu.png" )
plt.show()
if __name__ = = "__main__" :
plot_sigmoid()
plot_tanh()
plot_relu()
plot_prelu()
|
以上这篇Python3 用matplotlib绘制sigmoid函数的案例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持服务器之家。
原文链接:https://blog.csdn.net/hiudawn/article/details/79876726