如何在 Python 中使用 TensorFlow 構建 Fashion MNIST 資料集的模型?
Tensorflow 是 Google 提供的一個機器學習框架。它是一個開源框架,與 Python 結合使用以實現演算法、深度學習應用程式等等。它用於研究和生產目的。
可以使用以下程式碼行在 Windows 上安裝“tensorflow”包:
pip install tensorflow
張量是 TensorFlow 中使用的一種資料結構。它有助於連線流圖中的邊。此流圖稱為“資料流圖”。張量只不過是多維陣列或列表。
“Fashion MNIST”資料集包含各種服裝的影像。它包含超過 70,000 件屬於 10 個不同類別的服裝的灰度影像。這些影像是低解析度的(28 x 28 畫素)。我們正在使用 Google Colaboratory 來執行以下程式碼。
Google Colab 或 Colaboratory 幫助透過瀏覽器執行 Python 程式碼,無需任何配置即可免費訪問 GPU(圖形處理單元)。Colaboratory 建立在 Jupyter Notebook 之上。
以下是使用 Python 為 Fashion MNIST 資料集構建模型的程式碼片段:
示例
model = tf.keras.Sequential([
tf.keras.layers.Flatten(input_shape=(28, 28)),
tf.keras.layers.Dense(128, activation='relu'),
tf.keras.layers.Dense(10)
])
print("Sequential model is being built")
model.compile(optimizer='adam', loss=tf.keras.losses.SparseCategoricalCrossentropy(from_logits=True), metrics=['accuracy'])
print("Sequential model is being compiled")程式碼來源 − https://www.tensorflow.org/tutorials/keras/classification
輸出
Sequential model is being built Sequential model is being compiled
解釋
模型中的層已配置。
層是神經網路的基本構建塊,它從作為輸入資料提供給層的的資料中提取表示。
許多簡單的層組合在一起。
某些層還具有引數,這些引數在訓練階段調整以達到最佳值。
第一層“Flatten”將影像從 2D 轉換為 1D 陣列。
此層沒有任何需要學習的引數。
畫素展平後,將構建兩個“Dense”層,其中每個密集層具有 128 個神經元。最後一層返回一個長度為 10 的 logits 陣列。
每個神經元/節點包含一個值,該值是分數,表示影像屬於哪個類別。
然後編譯模型。
資料結構
網路
關係資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP