批次大小與批次正規化

Keras 深度學習入門

Miguel Esteban

Data Scientist & Founder

Keras 深度學習入門

Keras 深度學習入門

小批次(Mini-batches)

優點

  • 訓練更快(同時間內更多權重更新)
  • 需用較少 RAM,可訓練超大資料集
  • 雜訊有助跳出局部極小,達到更低誤差

缺點

  • 需要執行更多次迭代
  • 需調整;要找出合適的批次大小
Keras 深度學習入門

1 Stack Exchange
Keras 深度學習入門

Keras 中的批次大小

# Fitting an already built and compiled model
model.fit(X_train, y_train, epochs=100, batch_size=128)
                                        ^^^^^^^^^^^^^^

Keras 深度學習入門

Keras 深度學習入門

Keras 深度學習入門

Keras 深度學習入門

批次正規化的優點

  • 改善梯度流
  • 允許使用更高學習率
  • 降低對權重初始化的依賴
  • 具有額外的正則化效果
  • 限制內部協變量偏移
Keras 深度學習入門

Keras 中的批次正規化

# Import BatchNormalization from keras layers
from tensorflow.keras.layers import BatchNormalization

# Instantiate a Sequential model model = Sequential()
# Add an input layer model.add(Dense(3, input_shape=(2,), activation = 'relu'))
# Add batch normalization for the outputs of the layer above model.add(BatchNormalization())
# Add an output layer model.add(Dense(1, activation='sigmoid'))
Keras 深度學習入門

一起來練習吧!

Keras 深度學習入門

Preparing Video For Download...