重用已编译的 Theano 函数

2023-11-26

假设我在 Theano 中实现了以下函数:

import theano.tensor as T
from theano import function
x = T.dscalar('x')
y = T.dscalar('y')
z = x + y
f = function([x, y], z)

当我尝试运行它时,会构建计算图,该函数会被优化和编译。

如何在 Python 脚本和/或 C++ 应用程序中重用这段已编译的代码?

EDIT:目标是构建深度学习网络并在最终的 C++ 应用程序中重用它。


目前这是不可能的。有用户修改了 Theano 以允许对 Theano 函数进行 pickle,但在 unpickle 过程中我们已经重新优化了图表。

有一个 Pull Request 允许 Theano 生成 C++ 库。然后用户可以自己编译它并将其用作普通的 C++ 库。该库链接到 python 库并需要安装 numpy。但这还没有准备好广泛使用。

你的目标是什么?为了节省编译时间?如果是的话Theano已经缓存了它编译的c++模块,所以下次重用它时,编译会更快。但对于大图,优化阶段总是要重做,如上所述,这可能需要很长时间。

那么你的目标是什么?

这是我们正在努力的事情。确保使用最新的 Theano 版本 (0.6),因为它编译速度更快。开发版本也快一点。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

重用已编译的 Theano 函数 的相关文章

随机推荐