我正在考虑在我的程序中使用SciPy优化器^{
vector = tf.Variable([7., 7.], 'vector')
# Make vector norm as small as possible.
loss = tf.reduce_sum(tf.square(vector))
optimizer = ScipyOptimizerInterface(loss, options={'maxiter': 100})
with tf.Session() as session:
optimizer.minimize(session)
# The value of vector should now be [0., 0.].
因为ScipyOptimizerInterface
是ExternalOptimizerInterface
的子代,所以我想知道数据的处理是在哪里完成的。它是在GPU上还是在CPU上?既然您必须在TensorFlow图中实现函数,我假设至少函数调用和渐变是在GPU上完成的(如果有的话),但是更新所需的计算呢?我应该如何使用这些类型的优化器来提高效率?提前感谢您的帮助!你知道吗
基于code on github,不,这只是一个最终调用
scipy
的包装器,因此更新在CPU上,不能更改。你知道吗但是,您可以在tensorflow/probability中找到一个native implementation,这是他们的示例:
相关问题 更多 >
编程相关推荐