使用有限資料集進行Keras 訓練
在嘗試使用Keras 訓練神經網路時,您注意到它僅利用了可用資料集的一部分資料集,儘管可以存取60,000 個樣本。當您遵循官方 TensorFlow 指南時,訓練過程會出現差異。本文旨在解釋 Keras 為什麼會出現這種行為並提供解決方案。
部分資料集使用背後的原因
模型擬合過程中遇到的數字「1875」確實不代表訓練樣本的數量;相反,它表示批次的數量。預設情況下,Keras 在訓練期間使用的批量大小為 32。對於包含 60,000 個樣本的資料集,這相當於:
60,000 / 32 = 1875
因此,Keras 將資料集分為 1875 個批次,每個批次包含 32 個樣本。因此,每個 epoch 都會迭代這 1875 個批次,而不是整個資料集。
解決方案
要利用整個資料集,您可以將批次大小明確設定為樣本總數:
<code class="python">model.fit(train_images, train_labels, epochs=10, batch_size=60000)</code>
透過這樣做,Keras 將在整個資料集上訓練模型,這可能會提高效能。
以上是儘管我有 60,000 個樣本,為什麼 Keras 只對我的資料集的一部分進行訓練?的詳細內容。更多資訊請關注PHP中文網其他相關文章!