通過索引與切片操作可以提取張量的部分資料, 它們的使用頻率非常高.
和c中索引矩陣相同,腳標0開始。
x = tf.random.normal([4
,32,32
,3])
# 建立 4d 張量x[0
]x[0]
[1]x[
0][1
][2]
x[2][
1][0
][1]
x[1,9,2]
當張量的維度數較高時, 使用[m][n][j][k]的方式書寫不方便,可以採用[m,n,j,k]的方式索引,它們是等價的。
:]當張量的維度數量較多時,不需要取樣的維度一般用單冒號:表示取樣所有元素,此時有可能出現大量的:出現。繼續考慮[4,32,32,3]的張量,當需要讀取 g 通道上的資料時,前面所有維度全部提取,此時需要寫為:
x[:,
:,:,
1]# 取 g 通道資料
為了避免出現像 [: , : , : ,1]這樣過多冒號的情況,可以使用⋯符號表示取多個維度上所有的資料, 其中維度的數量需根據規則自動推斷:當切片方式出現⋯符號時, ⋯符號左邊的維度將自動對齊到最左邊, ⋯符號右邊的維度將自動對齊到最右邊,此時系統再自動推斷⋯符號代表的維度數量。
]# 所有樣本,所有高、寬的前 2 個通道
本文完全**於感謝原作者的完美工作,這是tf2.0的內容,超級棒。我只是用jupter notebook學習一遍,供本文和大家參考。
tensorflow 2 0 學習筆記 索引與切片
import tensorflow as tf a tf.random.normal 4,28,28,3 a 1 shape a 1,2 shape a 1,2,3 shape a 1,2,3,2 shape start end b tf.range 10 b 2 b 3 的運用 全選 a 0,sh...
Data Science 時間序列的索引與切片
時間序列的索引與切片 索引時間序列的索引方法同樣是適用於dataframe,而且在時間序列中由於按照時間先後排序,故不用考慮順序問題。基本位置索引,使用的方法和列表類似 from datetime import datetime rng pd.date range 2017 1 2017 3 ts ...
TensorFlow 神經網路引數與變數(四)
在tensorflow中,變數 tf.variable 的作用就是儲存和更新神經網路的引數。在神經網路中,給變數賦予隨機數最為常見,所以一般使用隨機數給tensorflow的變數初始化。1 tf.random normal 正態分佈隨機數 2 tf.truncated normal 正態分佈,但如果...