TensorFlow學習筆記

2022-10-10 07:30:13 字數 2277 閱讀 7317

基於半個學期的深度學習,我將用老師曾經給過的乙個專案來完成一次我的tensorflow的學習筆記

首先,對於tensorflow的理解,tensorflow是一種較為完善的深度學習框架,支援所有流行變成語言開發,可以使用其內建函式使模型的搭建更加緊湊,此外,tensorflow可在多平台上工作,允許將模型部署到工業生產中,並易於使用。

專案名稱為基本分類:對服裝影象進行分類,本專案是用tensorflow搭建乙個神經網路模型,對運動給和襯衫等服裝影象進行分類

首先是匯入該用的庫

然後從keras中匯入資料集

此時載入的資料會返回四個numpy陣列

train_images(資料)和train_labels(標籤)陣列是訓練集,用於模型學習

影象是28x28的的numpy的陣列之間。畫素值介到0到9之間,這些標籤所對應的標籤為

接下來需要預處理資料,通過檢查訓練集的第乙個影象,會發現畫素值處於0到255之間

將這些值縮小到0到1之間,所以,將這些值➗255

接下來構建模型

首先需要設定層

神經網路的基本組成部分是層。層會從向其饋送的資料中提取表示形式。希望這些表示形式有助於解決手頭上的問題。

大多數深度學習都包括將簡單的層鏈結在一起

該網路的第一層tf.keras.layers.flatten將影象格式從二維陣列(28 x 28 畫素)轉換成一維陣列(28 x 28 = 784 畫素)。將該層視為影象中未堆疊的畫素行並將其排列起來。該層沒有要學習的引數,它只會重新格式化資料。

展平畫素後,網路會包括兩個tf.keras.layers.dense層的序列。它們是密集連線或全連線神經層。第乙個dense層有 128 個節點(或神經元)。第二個(也是最後乙個)層會返回乙個長度為 10 的 logits 陣列。每個節點都包含乙個得分,用來表示當前影象屬於 10 個類中的哪一類

接下編譯模型

在對模型進行訓練之前。還需對其進行一些設定:

損失函式: 用於測量模型在訓練期間的準確率

優化器 :決定模型如何根據其看到的資料和自身的損失函式進行更新

指標 - 用於監控訓練和測試步驟

接下來訓練模型:

訓練模型分為四個步驟

將訓練資料饋送給模型。在本例中,訓練資料位於train_imagestrain_labels陣列中。

模型學習將影象和標籤關聯起來。

要求模型對測試集(在本例中為test_images陣列)進行**。

驗證**是否與test_labels陣列中的標籤相匹配  

向模型傳送資料

接下來評估準確率

傳入測試資料,測試標籤,設定為二維

最後進行**

在模型經過訓練後,可以使用它對一些影象進行**

現在做乙個**

**結果是乙個包含 10 個數字的陣列。它們代表模型對 10 種不同服裝中每種服裝的「置信度」

最後驗證**結果

tensorflow學習筆記

tensorflow安裝可以直接通過命令列或者原始碼安裝,在此介紹tensorflow8命令列安裝如下 安裝tensorflow sudo pip install upgrade 另外,解除安裝tensorflow命令為 sudo pip uninstall tensorflow tensorflo...

Tensorflow學習筆記

1.如何在虛擬機器中安裝tensor flow 1 首先安裝pip pip install 2 pip install 2.學習tensorflow需要學習 python and linux 3.使用 tensorflow,你必須明白 tensorflow 1 使用圖 graph 來表示計算任務.2...

TensorFlow學習筆記

1 擬合直線 import the library import tensorflow as tf import numpy as np prepare train data train x np.linspace 1,1,100 temp1 train x,temp2 train x.shape,...