tensorflow学习笔记(2):tf.clip_by_value,tf.expand_dims等函数的用法

  1)tf.clip_by_value的用法

该函数主要是为了防止,gradiant计算得到的值太大或者太小

tf.clip_by_value(A, min, max):输入一个张量A,把A中的每一个元素的值都压缩在min和max之间。小于min的让它等于min,大于max的元素的值等于max。

import tensorflow as tf
import numpy as np

data = np.array([[-1,2,3,4],[3,4,9,2]])

with tf.Session() as sess:
    print(sess.run(tf.clip_by_value(data,2,3)))

输出的结果为:

[[2 2 3 3]
 [3 3 3 2]]

2) initialize_all_variables 已被弃用,将在2017-03-02之后删除。使用tf.global_variables_initializer代替。 


3)tf.expand_dims() 函数

tf.expand_dims(input, axis=None, name=None, dim=None)

函数为在第axis位置上增加一个维度,给定张量输入,此操作在输入形状的维度索引轴处插入1的尺寸,尺寸索引轴从零开始,如果指定的轴为负数,则从后向前计数


例如:

# 't' is a tensor of shape [2]
shape(expand_dims(t, 0)) ==> [1, 2]
shape(expand_dims(t, 1)) ==> [2, 1]
shape(expand_dims(t, -1)) ==> [2, 1]


3) tf.squeeze()

tf.squeeze(input, squeeze_dims=None, name=None)

从input的tensor中删除所有大小为1的维度,如果不想删除所有尺寸1尺度,可以通过指定dims来删除特定尺寸1尺寸的维度

# 't' is a tensor of shape [1, 2, 1, 3, 1, 1]
shape(squeeze(t, [2, 4])) ==> [1, 2, 3, 1]


参考:

[1] http://blog.csdn.net/qq_31780525/article/details/72280284


版权声明:本文为gzmfxy原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。