假设我已经定义了我的对象:
import numpy as np
class Mytensor:
def __init__(self, data):
self.data = np.array(data)
例如,如何计算此对象的指数?
也就是说,如果我有foo = Mytensor(2)
,我想np.exp(foo)
返回np.exp(2)
。
编辑:
感谢回复!我想我需要更多的功能,但我不确定如何正确解释它......实际上我正在尝试使用 myTensor 类构建一个计算图,也就是说,它还有另一个属性:self.parents= []。
如果我调用 np.dot(myTensor1, myTensor2),我希望它返回一个新的 myTensor3 对象,它的数据是 myTensor1 和 myTensor2 的点积,它的父项是包含 myTensor1 和 2 的列表
感谢您的帮助!
你需要:
def __array__(self):
return self.data
尝试这个:
import numpy as np
class Mytensor:
def __init__(self, data):
self.data = np.array(data)
def __array__(self):
return self.data
foo = Mytensor([2, 3])
np.exp(foo)
输出:
array([ 7.3890561 , 20.08553692])
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句