gpt4 book ai didi

python - tensorflow 1.13如何安全使用tf.searchsort?

转载 作者:行者123 更新时间:2023-12-01 07:15:35 27 4
gpt4 key购买 nike

带有代码

tf.searchsorted(input, input2)

我遇到了第一个错误

InvalidArgumentError (see above for traceback): Reshape cannot infer the missing input size for an empty tensor unless all specified input sizes are non-zero

它还提醒了我第 3459 行

tensorflow/python/ops/array_ops.py

searchsorted

得到了

sorted_sequence_2d = reshape(sorted_sequence, [-1, sequence_size])

但是当张量形状包含0维时,input.shape=(0,),它将返回错误。请参阅here

我想使用tf.searchsorted检查之前的张量形状,并且我知道维度为

所以我用

if not tf.equal(input.shape[0], 0):
tf.searchsorted(input, input2)

然后我得到了第二个错误,我知道tf.equal将返回bool张量,它不能像bool一样使用。但我不知道如何解决我的第一个错误。

ValueError: Tried to convert 'x' to a tensor and failed. Error: Cannot convert an unknown Dimension to a Tensor: ?

我的问题是,如果0维度触发第一个错误,如何安全地使用tf.searchsort

最佳答案

虽然没有明确说明,但暗示 tf.searchsorted不适用于第一个参数中的空序列。

但是您可以使用 tf.cond表达类似“如果不是空序列,则使用 searchsorted,否则返回全零”(或者您更喜欢返回的任何内容):

tf.cond(tf.not_equal(tf.size(input), 0),
lambda: tf.searchsorted(input, input2),
lambda: tf.zeros_like(input2, dtype=tf.int32))

关于python - tensorflow 1.13如何安全使用tf.searchsort?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57986086/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com