Tensorflow2-tensorflow-keras-深度神經網絡(DNN)_更改激活函數

激活函數

af

  • 它們將非線性特性引入到網絡中。其主要目的是將A-NN模型中一個節點的輸入信號轉換成一個輸出信號。該輸出信號現在被用作堆疊中下一個層的輸入
    • 輸入(X)和它們對應的權重(W)的乘積之和,並將激活函數f(x)應用於其獲取該層的輸出並將其作為輸入饋送到下一個層
    • https://kknews.cc/news/4mlnr82.html

使用selu激活函數

其在加入全連接層網絡(Dense)時可使用selu激活函數(其自帶標準化的功能)

1
2
3
4
5
6
7
model_selu_act = keras.models.Sequential()
model_selu_act.add(keras.layers.Flatten(input_shape = [28,28]))
for _ in range(20):
model_selu_act.add(keras.layers.Dense(100, activation="selu"))

else:
model_selu_act.add(keras.layers.Dense(10,activation="softmax"))

更改激活函數神經網絡示例


Result

  • 一開始訓練就有比較好的效果
  • 訓練時間較短