兩個奇怪的TF索引操作和比較類函式

2021-09-23 13:18:55 字數 878 閱讀 1752

tf.invert_permutation(x)

這是個奇怪的函式,之所以說奇怪,是因為學到目前為止,我還不清楚它有什麼用,這個函式的功能是這麼描述的:將x中元素的值當作索引,返回新的張量,用公式表達如下:

設張量x=[x1,x2,x3,…xn],那麼y=tf.invert_permutation(x)=[yxi=i]

還是舉例說明吧:

設x=[3,2,0,1,4]

x0=3,x1=2,x2=0,x3=1,x4=4

yx0=y3=0

yx1=y2=1

yx2=y0=2

yx3=y1=3

yx4=y4=4

於是y=[2,3,1,0,4]

tf.where(condition,x,y)

condition是乙個元素為true或者false的張量,shape必須和x,y一致,當只有condition乙個引數的時候,函式返回true的索引,比如tf.where([true,false,false,true])=[[0],[3]]。注意函式返回的是列向量。

當函式有x,y引數的時候,函式進行如下操作:產生乙個和x,y shape相同的張量,在這個張量(比如說是乙個二維張量z)中,zij的值由conditionij決定,如果conditionij==true,那麼zij=xij,否則zij=yij

還是看乙個例子吧:

x    2,2,3    4,5,6

condition    true,false,false    false,true,true

y    1,0,3    1,5,1

z=where(condition,x,y)    2,0,3    1,5,6

from 

兩個奇怪的問題

因為 中有align left class table cellspacing 1 cellpadding 4 width 800 align left 導致 相對位置十分的怪異。後面的文字不是在 後面,而是和 在水平上對齊!刪掉就好了。td font family tahoma,verdana f...

兩個奇怪的問題

因為 中有align left class table cellspacing 1 cellpadding 4 width 800 align left 導致 相對位置十分的怪異。後面的文字不是在 後面,而是和 在水平上對齊!刪掉就好了。td font family tahoma,verdana f...

兩個物件屬性的比較

兩個物件的引用比較可以用equal 但是兩個物件的屬性比較就比較麻煩一些,寫乙個方法,僅供參考 1 public static bool propertyequals object aobject1,object aobject2 2 27 28else if vobject1 is list vo...