首頁 > 後端開發 > Python教學 > 儘管我有 60,000 個樣本,為什麼 Keras 只對我的資料集的一部分進行訓練?

儘管我有 60,000 個樣本,為什麼 Keras 只對我的資料集的一部分進行訓練?

Patricia Arquette
發布: 2024-10-29 10:37:30
原創
869 人瀏覽過

Why is Keras only training on a portion of my dataset, even though I have 60,000 samples?

使用有限資料集進行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中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板