iT邦幫忙

2022 iThome 鐵人賽

DAY 6
0
AI & Data

初學者介紹TensFlow.js系列系列 第 6

[Day6]張量的操作

  • 分享至 

  • xImage
  •  

昨天我們談到了如何建立張量,今天我們則要來談談如何釋放他
張量提供我用更快的速度計算矩陣,提供我們存取任何格式的資料,但他方便的同時也伴隨著額外成本,通常我們執行完javascript後當該變數的所有參照都執行完時他所占用的記憶體東常會自動被釋放出來,此過程被稱為AGDC。
但我們所創的張量並不會如此。
當張量被執行完後他所占用的資源仍會在記憶體中儲存很長一段時間,因此我們必須手動釋放他們。

該如何進行清理
我們可以使用tidy()來進行清理,當我們用tidy建立一個encapsulation時(我忘記他中文是啥了),將會清理所有未回傳或未由keep()標記應該保留的張量。

範例:
https://ithelp.ithome.com.tw/upload/images/20220918/20152506jC9McRHABn.png

又或者我們可以混合使用javascript和張量,建立一個一般javascript陣列,接著我們便可輕鬆檢索定特定的張量。
https://ithelp.ithome.com.tw/upload/images/20220918/201525066070DKyXKQ.png
接著使用tf.dispose(tensorArray)便可輕鬆地毀掉整個集合

今天就講到這裡了,謝謝大家


上一篇
[Day5]建立一個張量
下一篇
[Day7]張量操作2
系列文
初學者介紹TensFlow.js系列30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言