在张量流中,切片的复杂性是什么?



我想知道在TensorFlow中跨度切片函数的复杂性是什么。显然,它在计算上不如卷积2D那么密集,但是当然也不是免费的。我什至不确定谈论此操作的复杂性是否有意义,因为没有执行添加或乘法。要具体,假设我有一个10x3x3x10张量foo,我想执行bar=foo[3:5,:,:,4:5]。您将如何评估操作的复杂性(在时空和时间方面(?

您可以使用TF_STRIDED_SLICE操作和Conv2D操作,然后使用 Profiling Keras Callback 中评估这些操作的复杂性。。

相应的代码如下:

log_dir="logs/profile/" + datetime.now().strftime("%Y%m%d-%H%M%S")
tensorboard_callback = tf.keras.callbacks.TensorBoard(log_dir=log_dir, histogram_freq=1, profile_batch = 3)
model.fit(train_data,
          steps_per_epoch=20,
          epochs=5, 
          callbacks=[tensorboard_callback])

最新更新