theano.function中givens的作用

以Theano tutorial里的代码为例:

可以只用input,不用givens实现同样的模型,但对于小数据集,那样会导致速度变慢一些。

这里同时用input和givens的好处在于对于小数据集,可以通过 givens 一次性的把整个dataset(test_set_x, test_set_y, train_set_x, train_set_y, …)传递到GPU,接着每一次function call 通过 input=[index] 的改变来快速读取GPU中一个batch。

如果没有 givens, 而 input 直接设为CPU数据的话,每一次 function call 都要进行CPU到GPU的数据传输,整体速度会变慢。

来源于:知乎

发表评论

电子邮件地址不会被公开。 必填项已用*标注