如何在Python中使用TensorFlow訓練Fashion MNIST資料集的模型?
TensorFlow是谷歌提供的機器學習框架。它是一個開源框架,與Python結合使用,可以實現演算法、深度學習應用等等。它用於研究和生產用途。
可以使用以下程式碼行在Windows上安裝“tensorflow”包
pip install tensorflow
張量是TensorFlow中使用的資料結構。它有助於連線流圖中的邊。此流圖稱為“資料流圖”。張量只不過是多維陣列或列表。
“Fashion MNIST”資料集包含各種服裝的影像。它包含超過7萬件屬於10個不同類別的服裝的灰度影像。這些影像是低解析度的(28 x 28畫素)。
我們使用Google Colaboratory執行以下程式碼。Google Colab或Colaboratory有助於在瀏覽器上執行Python程式碼,無需任何配置,並且可以免費訪問GPU(圖形處理單元)。Colaboratory構建在Jupyter Notebook之上。以下是程式碼:
示例
print("The model is fit to the data")
model.fit(train_images, train_labels, epochs=15)
print("The accuracy is being computed")
test_loss, test_acc = model.evaluate(test_images, test_labels, verbose=2)
print('\nThe test accuracy is :', test_acc)程式碼來源 − https://www.tensorflow.org/tutorials/keras/classification
輸出
The model is fit to the data Epoch 1/15 1875/1875 [==============================] - 4s 2ms/step - loss: 0.6337 - accuracy: 0.7799 Epoch 2/15 1875/1875 [==============================] - 3s 2ms/step - loss: 0.3806 - accuracy: 0.8622 Epoch 3/15 1875/1875 [==============================] - 3s 2ms/step - loss: 0.3469 - accuracy: 0.8738 Epoch 4/15 1875/1875 [==============================] - 3s 2ms/step - loss: 0.3131 - accuracy: 0.8853 Epoch 5/15 1875/1875 [==============================] - 3s 2ms/step - loss: 0.2962 - accuracy: 0.8918 Epoch 6/15 1875/1875 [==============================] - 3s 2ms/step - loss: 0.2875 - accuracy: 0.8935 Epoch 7/15 1875/1875 [==============================] - 3s 2ms/step - loss: 0.2705 - accuracy: 0.8998 Epoch 8/15 1875/1875 [==============================] - 3s 2ms/step - loss: 0.2569 - accuracy: 0.9023 Epoch 9/15 1875/1875 [==============================] - 3s 2ms/step - loss: 0.2465 - accuracy: 0.9060 Epoch 10/15 1875/1875 [==============================] - 3s 2ms/step - loss: 0.2440 - accuracy: 0.9088 Epoch 11/15 1875/1875 [==============================] - 3s 2ms/step - loss: 0.2300 - accuracy: 0.9143 Epoch 12/15 1875/1875 [==============================] - 3s 2ms/step - loss: 0.2255 - accuracy: 0.9152 Epoch 13/15 1875/1875 [==============================] - 3s 2ms/step - loss: 0.2114 - accuracy: 0.9203 Epoch 14/15 1875/1875 [==============================] - 3s 2ms/step - loss: 0.2101 - accuracy: 0.9211 Epoch 15/15 1875/1875 [==============================] - 3s 2ms/step - loss: 0.2057 - accuracy: 0.9224 The accuracy is being computed 313/313 - 0s - loss: 0.3528 - accuracy: 0.8806 The test accuracy is : 0.8805999755859375
解釋
模型的訓練首先是饋送訓練資料並構建模型。“train_images”和“train_labels”是輸入資料的陣列。
模型學習將影像與其相應的標籤對映。
“test_images”儲存測試資料。
一旦使用測試資料集,所做的預測就會與測試資料集中資料的實際標籤相匹配。
呼叫“model.fit”方法以便它可以將模型擬合到訓練資料集。
“model.evaluate”函式給出與訓練相關的準確性和損失。
廣告
資料結構
網路
關係資料庫管理系統 (RDBMS)
作業系統
Java
iOS
HTML
CSS
Android
Python
C語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP