使用brew throws

时间:2017-12-27 05:29:40

标签: machine-learning caffe2

我尝试使用brew添加一个新的帮助函数,如下所示。

brew.Register(testOp)

当我尝试运行上面的代码时,我得到以下错误:

  

AttributeError:Helper testOp已经存在。请改变你的   助手的名字。

请帮我解决此错误。

注意: testOp在同一个文件中定义。

1 个答案:

答案 0 :(得分:0)

首先,我们必须定义函数(我们的示例函数仅调用Abs运算符):

def absolute_value(model, blob_in, blob_out, **kwargs):
    model.Abs(blob_in, blob_out)

然后,我们可以注册新的帮助器功能:

brew.Register(absolute_value)

最后,我们将对其进行测试:

model = ModelHelper(name="test")

x = np.array([[-1, 2, 3], [1, -2, 3], [1, 2, -3]])
workspace.FeedBlob('x', x.astype(np.float32))

brew.absolute_value(model, 'x', 'out')

workspace.RunNetOnce(model.net)

blob = workspace.FetchBlob('out')
print(blob)

输出应为:

[[1. 2. 3.]
 [1. 2. 3.]
 [1. 2. 3.]]