Tensorflow2 0學習筆記 建立張量

2021-10-12 12:47:38 字數 1834 閱讀 9215

使用constant建立張量

# 使用constant函式建立張量

# 其中[1,5]表示張量內容,dtype表示資料型別

a = tf.constant([1, 5], dtype=tf.int32)

# 輸出a,a的資料型別,a的形狀

print(a)

print(a.dtype)

print(a.shape)

# 輸出結果

tf.tensor([1 5], shape=(2,), dtype=int32)

(2,)

使用convert_to_tensor建立張量
# 使用convert_to_tensor函式將資料型別轉換成張量

a = np.arange(0, 5)

b = tf.convert_to_tensor(a, dtype=tf.int64)

print(a)

print(b)

#輸出結果

[0 1 2 3 4]

tf.tensor([0 1 2 3 4], shape=(5,), dtype=int64)

建立特殊張量
# 其中zeros表示建立全為0的張量,[3,4]表示張量的維數

# ones表示建立全為1的張量,3表示維度

# fill表示建立全為指定值的函式,[2,2]表示維度

a = tf.zeros([3, 4], dtype=tf.int32)

b = tf.ones(3, dtype=tf.int32)

c = tf.fill([2, 2], 9)

print(a)

print(b)

print(c)

tf.tensor(

[[0 0 0 0]

[0 0 0 0]

[0 0 0 0]], shape=(3, 4), dtype=int32)

tf.tensor([1 1 1], shape=(3,), dtype=int32)

tf.tensor(

[[9 9]

[9 9]], shape=(2, 2), dtype=int32)

隨機生成張量
#生成正態分佈的隨機變數,其中均值=0.5,標準差=1

a = tf.random.normal([2, 2], mean=0.5, stddev=1)

生成截斷式正態分佈的隨機變數

b = tf.random.truncated_normal([2, 2], mean=0.5, stddev=1)

# 生成均勻分布的隨機數

c = tf.random.uniform([2, 2], minval=0.5, maxval=1)

# 輸出結果

# 正態分佈

tf.tensor(

[[-0.40264213 1.7012755 ]

[ 0.2710414 1.6012648 ]], shape=(2, 2), dtype=float32)

#截斷式分布

tf.tensor(

[[0.4462757 1.2510767 ]

[0.8421626 0.28103304]], shape=(2, 2), dtype=float32)

# 均勻分布

tf.tensor(

[[0.53592265 0.68155897]

[0.5985845 0.9714481 ]], shape=(2, 2), dtype=float32)

tensorflow2 0學習筆記(3 2)

自編碼器變種 1 denoising auto encoder 加隨機雜訊 2 dropout auto encoder 防止過擬合 3 adversarial auto encoder 利用額外的判別器網路來判定降維的隱藏變數?是否取樣先驗分布?對抗自編碼器是從下一章要介紹的生成對抗網路演算法衍生...

Tensorflow2 0學習筆記 常用函式(一)

1.資料型別轉換函式 定義乙個張量 a tf.constant 0,1,2 3,4,5 6,7,8 dtype tf.int64 強制轉換型別函式 b tf.cast a,tf.float32 reduce max查詢張量中最大的數,axis x表示對對應的行或者列求和 本例中為二維張量,0對應的對...

tensorflow2 0視訊記憶體設定

遇到乙個問題 新買顯示卡視訊記憶體8g但是tensorflow執行的時候介面顯示只有約6.3g的視訊記憶體可用,如下圖 即限制了我的視訊記憶體,具體原因為什麼我也不知道,但原來的視訊記憶體小一些的顯示卡就沒有這個問題。目前的解決辦法是 官方文件解決 然後對應的中文部落格 總結一下,就是下面的兩個辦法...