tf.clip_by_value是tensorflow中类似于numpy.clip的操作,会返回一个clip的op。也就是说,对于张量t中小于clip_value_min的值使其等于clip_value_min,大于clip_value_max的使其等于clip_value_max。
写这篇博文的原因是看了很多博客中写的参数都是min和max,其实这是不准确的。
代入的时候就会报错
TypeError: clip_by_value() got an unexpected keyword argument 'min'。
所以专门去官网查证了一下,正确的应该是clip_value_min和clip_value_max,如果直接写值进去的话就会默认这两个参数。name参数可写可不写。
>>> import tensorflow as tf
>>>
>>> import numpy as np
>>>
>>> t = tf.constant([[1.0, 2.0, 3.0],[6.0, 7.0, 8.0]])
>>> result = tf.clip_by_value(t, clip_value_min = 4, clip_value_max = 5)
>>> with tf.Session() as sess:
... print(sess.run(result))