使用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的視訊記憶體可用,如下圖 即限制了我的視訊記憶體,具體原因為什麼我也不知道,但原來的視訊記憶體小一些的顯示卡就沒有這個問題。目前的解決辦法是 官方文件解決 然後對應的中文部落格 總結一下,就是下面的兩個辦法...