[英]Can sigmoid function graph be linear?
我想我有一個“愚蠢”的問題。 我有一個計算sigmoid函數的python代碼:
def sigmoid(z):
return 1 / (1 + np.exp(-z))
我想看看具有給定數據的S型函數是哪種圖形,因此我將函數更改為此:
def sigmoid(z):
s = 1 / (1 + np.exp(-z))
plt.plot(s)
plt.title("Sigmoid")
plt.show()
return s
我得到的是:
數據來自https://www.kaggle.com/azzion/credit-card-fraud-detection-using-neural-network
所以問題是:S型函數是否可以與某些特定參數成線性關系,或者我做錯了什么?
不,它不能是線性的。 我沒有完整的代碼,但請嘗試
x = np.linspace(-3, 3)
y = sigmoid(x)
plt.plot(x, y)
看形狀
您看到的是繪制S型曲線的范圍內的偽影。 考慮以下三個繪圖范圍。 如您所見,第一個圖看起來或多或少是線性的。 此外,當你做你正在策划只乙狀結腸plt.plot(s)
因此,基本上,當您這樣做時,您將丟棄s
和z
之間s
所有關系。 您應該將因變量和自變量繪制為ax.plot(z, s)
fig, axes = plt.subplots(nrows=1, ncols=3, figsize=(14, 3))
z1 = np.linspace(0, 1, 100)
z2 = np.linspace(-5, 5, 100)
z3 = np.linspace(-50, 50, 100)
def sigmoid(z, ax):
s = 1 / (1 + np.exp(-z))
ax.plot(z, s)
ax.set_title("Sigmoid")
return
for ax, z in zip(axes.flatten(), [z1, z2, z3]):
sigmoid(z, ax)
plt.tight_layout()
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.