日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

1.TensorFlow快速入门

發布時間:2023/12/8 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 1.TensorFlow快速入门 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

TensorFlow 2.0

前言

Tensorflow是Google推出的機器學習開源神器,對Python有著良好的語言支持,支持CPU,GPU和Google TPU等硬件,并且已經擁有了各種各樣的模型和算法。目前,Tensorflow已被廣泛應用于文本處理,語音識別和圖像識別等多項機器學習和深度學習領域。基礎框架分為三層:應用層、接口層和核心層。
應用層:提供了機器學習相關的訓練庫、預測庫和針對Python、C++和Java等變成語言的編程環境,類似于web系統的前端,主要實現了對計算圖的構造。
接口層:對Tensorflow功能模塊的封裝,便于其它語言平臺的調用。
核心層:最重要的部分,包括設備層、網絡層、數據操作層和圖計算層,執行應用層的計算。

  • 設備層:包括Tensorflow在不同硬件設備上的實現,主要支持CPU、GPU和Mobile等設備,在不同硬件設備上實現計算命令的轉換,給上層提供統一的接口,實現程序的跨平臺功能。
  • 網絡層:網絡層主要包括RPC和RDMA通信協議,實現不同設備之間的數據傳輸和更新,這些協議都會在分布式計算中用到。
  • 數據操作層:以tensor為處理對象,實現tensor的各種操作和計算。
  • 圖計算層:包括分布式計算圖和本地計算圖的實現,實現圖的創建、編譯、優化和執行等。
  • 面對初學者的快速入門

    我們首先將TensorFlow 2.0安裝的電腦中,我用的是Jupyter Notebook,來實現下述代碼的。我們首先將TensorFlow載入到程序,然后載入并準備好MNIST測試集。將樣本從整數轉換為浮點數。將模型的各層堆疊起來,以搭建tf.keras.Sequential模型,以訓練選擇優化器和損失函數,最后進行訓練并驗證模型。

    import tensorflow as tf #程序中引入tensorflow庫

    以下代碼為數據集的引入:

    mnist = tf.keras.datasets.mnist #引入數據集 (x_train, y_train), (x_test, y_test) = mnist.load_data() x_train, x_test = x_train/255.0, x_test/255.0 model = tf.keras.models.Sequential([tf.keras.layers.Flatten(input_shape=(28,28)),tf.keras.layers.Dense(128, activation='relu'),tf.keras.layers.Dropout(0.2),tf.keras.layers.Dense(10, activation='softmax') ])model.compile(optimizer='adam',loss='sparse_categorical_crossentropy',metrics=['accuracy'])

    tf.keras.models.Sequential()用法

    tf.keras.models.Sequential([網絡結構])#描述各層的網絡
    網絡結構舉例:
    ①拉直層:tf.keras.layers.Flatten()# 拉直曾可以變換張量的尺寸,把輸入特征拉直為一維數組,其不含計算參數。
    ②全連接層tf.keras.layers.Dense(神經元的個數, activation=‘激活函數’,kernel_regularizer=‘正則化方式’)
    ③tf.keras.layers.Dropout()為將Dropout應用到輸入,其有三個參數。

    model.fit(x_train, y_train, epochs=5) model.evaluate(x_test, y_test, verbose=2) Epoch 1/5 1875/1875 [==============================] - 4s 2ms/step - loss: 0.0669 - accuracy: 0.9783 Epoch 2/5 1875/1875 [==============================] - 4s 2ms/step - loss: 0.0604 - accuracy: 0.9808 Epoch 3/5 1875/1875 [==============================] - 5s 2ms/step - loss: 0.0551 - accuracy: 0.9822 Epoch 4/5 1875/1875 [==============================] - 4s 2ms/step - loss: 0.0502 - accuracy: 0.9836 Epoch 5/5 1875/1875 [==============================] - 4s 2ms/step - loss: 0.0449 - accuracy: 0.9853 313/313 - 1s - loss: 0.0682 - accuracy: 0.9802 - 600ms/epoch - 2ms/step[0.06823256611824036, 0.9801999926567078]

    model.fit(訓練集的輸入特征,訓練集的標簽,batch_size #每個batch的大小,epochs,#迭代次數,validation_data=(測試集的輸入特征,測試集的標簽),validation_split=從測試集中劃分多少比例給訓練集,validation_freq=測試的epoch間隔數)#用于執行訓練過程

    model.evaluate(輸入測試數據, 真實標簽,控制日志顯示的方式(verbose:'0’不在標準輸出流輸出日志信息’1’輸出進度條記錄’2’每個epoch輸出一行記錄,默認值為1) )

    總結

    以上是生活随笔為你收集整理的1.TensorFlow快速入门的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。