如何使用Tensorflow為MNIST資料集定義模型?
Tensorflow是由Google提供的機器學習框架。它是一個開源框架,與Python結合使用,用於實現演算法、深度學習應用程式等等。它擁有最佳化技術,可以幫助快速執行復雜的數學運算。這是因為它使用了NumPy和多維陣列。這些多維陣列也稱為“張量”。該框架支援使用深度神經網路。
可以使用以下程式碼行在Windows上安裝“tensorflow”包:
pip install tensorflow
張量是TensorFlow中使用的資料結構。它有助於連線流圖中的邊。這個流圖被稱為“資料流圖”。張量不過是多維陣列或列表。
Keras是一個用Python編寫的深度學習API。它是一個高階API,具有高效的介面,可以幫助解決機器學習問題。它執行在Tensorflow框架之上。它的構建是為了幫助快速進行實驗。Keras已經存在於Tensorflow包中。可以使用以下程式碼行訪問它。
import tensorflow from tensorflow import keras
我們使用Google Colaboratory執行以下程式碼。Google Colab或Colaboratory有助於在瀏覽器上執行Python程式碼,無需任何配置,並且可以免費訪問GPU(圖形處理單元)。Colaboratory構建在Jupyter Notebook之上。以下是程式碼片段:
示例
print("Defining a sequential model") def create_model(): model = tf.keras.models.Sequential([ keras.layers.Dense(512, activation='relu', input_shape=(784,)), keras.layers.Dropout(0.2), keras.layers.Dense(10) ]) model.compile(optimizer='adam', loss=tf.losses.SparseCategoricalCrossentropy(from_logits=True), metrics=[tf.metrics.SparseCategoricalAccuracy()]) return model print("Creating a model instance") model = create_model() print("Displaying the architecture of the sequential model") model.summary()
程式碼來源 - https://www.tensorflow.org/tutorials/keras/save_and_load
輸出
解釋
使用Keras建立一個順序模型。
建立“密集”層。
編譯此模型。
建立此模型的例項。
使用“summary”方法在螢幕上顯示有關此模型的詳細資訊。
廣告