我是新来的Theano图书馆,这是用于深入学习的GPU设备。我注意到有几个内置操作可以支持gpu计算(我猜它们是专门以支持gpu的方式编写的):
import theano.tensor as T
T.sum(), T.neq(), T.argmax(),T.grad()
1.如果我使用python的内置函数sum()而不是T.sum(),有什么区别。sum()是否仍然有效,但速度可能较慢?你知道吗
假设sum()不适用于gpu计算,那么如果我需要任何在gpu上可用的操作/函数,我需要以这种方式实现它。e、 我要计算sin(x),其中x是向量或矩阵,并存储在GPU内存中。有没有实现sin(x)的提示,可以在gpu设备上运行?(这可能不合适或不容易回答)
我很难理解T.grad()。T.grad如何对给定的光滑符号函数进行符号计算?我对此很好奇。
在theano中,您必须使用
T.sum(), T.neq(), T.argmax(),T.grad()
进行符号计算,而不使用像T.matrix
这样的变量。例如,不能使用内置的sum()
。 如果你使用theano,你必须遵循theano自己的方法,因为theano使用不同形式的计算来利用gpu的架构。你知道吗但是,如果您想使用
sum()
,您可以使用它进行计算,然后创建一个theano.shared
变量来存储结果,这样您就可以在运行时将其存储在gpu的内存中。你知道吗关于T.grad(),也许你应该问问theano开发者。:) 不过,我认为当theano运行时,它可以利用gpu的计算能力,使用实际变量来计算函数的梯度运行时。 我希望这能有所帮助。你知道吗
很高兴能帮上忙!如果你觉得我的回答对你有用,请随时接受。:-)
相关问题 更多 >
编程相关推荐