TensorFlow人工智能學(xué)習(xí)張量及高階操作示例詳解
一、張量裁剪
1.tf.maximum/minimum/clip_by_value()
該方法按數(shù)值裁剪,傳入tensor和閾值,maximum是把數(shù)據(jù)中小于閾值的變成閾值。minimum是把數(shù)據(jù)中大于閾值的變成閾值。clip_by_value需要傳入兩個閾值,會把數(shù)據(jù)裁剪到閾值中間。
2.tf.clip_by_norm()
按范數(shù)裁剪,傳入tensor和新的范數(shù)。通過裁剪范數(shù),可以進(jìn)行等比例放縮,使得梯度方向不變,但數(shù)值變小。通過這個方法可以對梯度進(jìn)行裁剪,一次性對所有的參數(shù)的范數(shù)進(jìn)行裁剪,并且保留方向。防止梯度爆炸,梯度彌散。
二、張量排序
1.tf.sort/argsort()
這兩個方法分別返回排序后的值,排序后的索引。有索引之后,可以通過gather方法對數(shù)據(jù)排序。
對于多維tensor,不指定軸的時候,默認(rèn)是對最后一個軸操作。
2.tf.math.topk()
返回前k大的那些數(shù)據(jù),以及索引。比如下面的例子,傳入a,2的意思是前兩個大的值。因此會對每一行,尋找前兩大的數(shù),以及對應(yīng)的索引,存到返回值中。
可以通過這個規(guī)則,求解topk的準(zhǔn)確率。比如下面的例子,對于兩條數(shù)據(jù),預(yù)測概率是prob,根據(jù)預(yù)測概率,得到這兩條數(shù)據(jù)最大值索引是2,1,而實際的值target是2,0。
①通過tf.math.top_k方法,對預(yù)測的概率進(jìn)行排序,讓它返回前三大的值。并得到索引。
②將索引進(jìn)行轉(zhuǎn)置之后,可以方便地閱讀:第一列就是第一條數(shù)據(jù)的預(yù)測值概率索引排序,第二列就是第二條數(shù)據(jù)的預(yù)測值概率索引排序。
③那么,對于兩條數(shù)據(jù)top1的準(zhǔn)確率,就是概率最大的索引,也就是第一行的兩個數(shù)據(jù),2,1,而實際值是2,0,那么top1準(zhǔn)確率就是50%
④top2的準(zhǔn)確率,意思就是,只要前兩名的概率預(yù)測有對的,那就算預(yù)測對了。那么第一行,第一條預(yù)測對了,第二條預(yù)測錯了。而第二行,第一條預(yù)測錯了,第二條預(yù)測對了。
⑤那么,根據(jù)“只要前兩個概率有一個對,那就算對”,top2的準(zhǔn)確率就是100%
三、TensorFlow高階操作
1.tf.where()
如果傳入布爾型數(shù)據(jù),會根據(jù)數(shù)據(jù)返回值為True的數(shù)值的索引。
如果傳入條件數(shù)據(jù),比如where(condition, A, B),condition是一個布爾tensor,會從A里面選擇condition為true的位置所對應(yīng)的數(shù)據(jù),從B里面選擇conditon為false的位置所對應(yīng)的數(shù)據(jù)。
2.tf.scatter_nd()
該方法中,傳入索引,數(shù)據(jù),底板。
底板通常是全0的tensor,索引是和數(shù)據(jù)一一對應(yīng)的,并且索引的長度不超過底板。
傳入的每一個數(shù)據(jù)都對應(yīng)一個索引,然后把數(shù)據(jù)更新到底板上面索引對應(yīng)的位置。
如果底板已經(jīng)有數(shù)據(jù)了,就需要全部清零,再更新。
在二維上面舉例如下:
3.tf.meshgrid()
和numpy里面的meshgrid用法一樣,分別生成的是網(wǎng)格中x和y的數(shù)據(jù)。例子如下:
然后使用stack進(jìn)行一個堆疊,就可以得到所有25個點的坐標(biāo)。
以上就是TensorFlow人工智能學(xué)習(xí)張量及高階操作示例詳解的詳細(xì)內(nèi)容,更多關(guān)于TensorFlow張量高階操作的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
基于Python實現(xiàn)隨機(jī)點名系統(tǒng)的示例代碼
在某些難以抉擇得時候,我們經(jīng)常要用外力來幫助我們做出選擇,比如,梁山出征方臘前沙場點兵,挑選先鋒的場景。所以本文就來用Python做個隨機(jī)點名系統(tǒng)吧,需要的可以參考一下2023-04-04Python數(shù)學(xué)建模學(xué)習(xí)模擬退火算法整數(shù)規(guī)劃問題示例解析
整數(shù)規(guī)劃問題在工業(yè)、經(jīng)濟(jì)、國防、醫(yī)療等各行各業(yè)應(yīng)用十分廣泛,是指規(guī)劃中的變量(全部或部分)限制為整數(shù),屬于離散優(yōu)化問題Discrete Optimization2021-10-10python正則爬取某段子網(wǎng)站前20頁段子(request庫)過程解析
這篇文章主要介紹了python正則爬取某段子網(wǎng)站前20頁段子(request庫)過程解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2019-08-08Jupyter Notebook調(diào)用指定的虛擬環(huán)境的實現(xiàn)示例
本文主要介紹了Jupyter Notebook調(diào)用指定的虛擬環(huán)境的實現(xiàn)示例,,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-07-07Python實現(xiàn)讀取mat、tif和hdr格式數(shù)據(jù)
遙感影像數(shù)據(jù)大多以tif格式或者以hdr格式進(jìn)行存儲,如果以mat格式進(jìn)行存儲,不會保留坐標(biāo)信息,本文將詳細(xì)介紹如何使用python來讀取這三種格式的數(shù)據(jù),需要的可以參考下2023-12-12Python讀取excel文件中的數(shù)據(jù),繪制折線圖及散點圖
這篇文章主要介紹了Python讀取excel文件中的數(shù)據(jù),繪制折線圖及散點圖,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價值,需要的小伙伴可以參考一下2022-09-09