1合并与拆分
合并:concat 用某一个维度进行累加,不会增加维度。所拼接的维度可以不相等,其他维度必须相等
叠加:stack增加新的维度,所有维度都要相等
unstack:指定维度拆分两份数据,指定某一维度进行拆分,这个维度有多少长,就会打成多少个数据
split:更加灵活,可以指定打散长度和数量
2、数据统计
一范数、二范数求解:ord=1为一范数求解,ord=2为二范数求解
reduce_min、reduce_max、reduce_mean:最小值、最大值、均值,默认为全部元素的最大或最小
argmax\argmin:默认为axis=0
tf.equal:对比元素是否相同
tf.unique:去除重复元素
3、张量排序
argsort:数值大小排序返回索引
top_k:最大的前几个值,返回前几个值的索引
top_k_accuracy:表示预测的可能类别,最大概率为正确的准确性。
4、数据填充与复制:
(1)pad:tf.pad(a,[[0,0],[1,0]]),对a数据进行pad,第一维表示行,第二维度表示列。第一维的[0,0],表示上下两行不进行填充,第二维的[1,0]表示左边填充1列右面不进行填充。填充的为0
(2)tile:数据复制
tf.tile(a,[1,2])对a数据进行复制,1表示该维度不进行复制,2表示该维度进行复制一倍。如果都进行复制,先复制小维度。
5、张量限幅
clip_by_value:限制在某一个范围内,给定最小值与最大值。tf.clip_by_value(a,2,8),取a的值范围是2到8
clip_by_norm:等比例放缩,放缩模
gradient clipping:整体缩放,保持方向不变,整体缩放。可以防止梯度爆炸和梯度消失。
grads,_=tf.clip_by_global_norm(grads,15)将梯度限制在0到15之间。梯度在0-20之间比较好
6、高阶操作:
where:寻找满足条件的索引,与gather_nd结合可以取出值。
scatter_nd:做一个底板,有值和索引,将对应索引上的值进行更新。
7数据加载:
数据准备:keras.datasets进行数据集加载
shuffle:打散顺序,随机打散
map:数据预处理
batch:读取数据是一堆一堆的
repeat():迭代次数