iT邦幫忙

2023 iThome 鐵人賽

DAY 11
1
AI & Data

深度學習-TensorFlow系列 第 11

DAY11-初學者的TensorFlow 2.0教程(運用colab訓練模型)

  • 分享至 

  • xImage
  •  

今天我們來試試TensorFlow官方推出的教學,實體操作運用Google Colaboratory教你簡單訓練出一個能夠對影像進行分類的神經網路模型。/images/emoticon/emoticon08.gif

https://ithelp.ithome.com.tw/upload/images/20230926/20162982QllouFEjgu.png
1.設定TensorFlow
https://ithelp.ithome.com.tw/upload/images/20230926/20162982wUIvOm4g7p.png
先將TensorFlow匯入程式中

2.匯入資料集
https://ithelp.ithome.com.tw/upload/images/20230926/201629820O8NNuuxZs.png
載入並準備MNIST資料集(將樣本資料從整數轉換為浮點數)

3.建構機器學習模型
https://ithelp.ithome.com.tw/upload/images/20230926/20162982U40BhDGWli.png
透過堆疊層來建構tf.keras.Sequential模型

https://ithelp.ithome.com.tw/upload/images/20230926/20162982TvKzVg5wRY.png
每個樣本都會回傳一個包含logitslog-odds分數的向量(一個類別回傳一個)

https://ithelp.ithome.com.tw/upload/images/20230926/20162982ClBiFE7KlR.png
tf.nn.softmax函數將這些logits轉換為每個類別的機率

https://ithelp.ithome.com.tw/upload/images/20230926/20162982U4fBbUyOxb.png
使用losses.SparseCategoricalCrossentropy為訓練定義損失函數,它能夠接受logits向量和True索引,並為每個樣本傳回一個標量損失

https://ithelp.ithome.com.tw/upload/images/20230926/201629829XaNcDqLzl.png****
(此損失等於true類別的負對數機率,如果模型確定類別正確,則損失為0)

https://ithelp.ithome.com.tw/upload/images/20230926/201629820WWav3oOXO.png
開始訓練之前,使用Keras Model.compile配置和編譯模型。將optimizer類別設為adam,將loss設定為先前定義的loss_fn函數,並透過將metrics參數設為來accuracy指定要為模型評估的指標。

4.訓練並評估模型
使用Model.fit方法來調適模型參數並最小化損失
https://ithelp.ithome.com.tw/upload/images/20230926/20162982xEBrKdq1lE.png
(Model.evaluate方法通常在Validation-setTest-set上檢查模型效能)

https://ithelp.ithome.com.tw/upload/images/20230926/201629829E6JIVT0NG.png
(目前的準確率為0.9777loss0.0729)

5.傳回機率
(封裝經過訓練的模型,並將softmax附加到模型中)
https://ithelp.ithome.com.tw/upload/images/20230926/201629824txcfL3nKz.png

https://ithelp.ithome.com.tw/upload/images/20230926/20162982MJ8UQB2DKn.png


上一篇
DAY10-卷積神經網路 CNN(下)
下一篇
DAY12-循環神經網路RNN(上)
系列文
深度學習-TensorFlow30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言