如何执行一个torch模型的输出二值化

我需要对一个torch模型(lua脚本)的输出o进行二值化处理,其值域为[-1,+1],我想以这样的方式阈值化这些值:

0 if o[i]<0
1 if o[i]>=0

输出由32个大小为1x1的浮点张量组成,因此有32个浮点数,我想从这32个浮点数中获得32位,但我找不到一个可允许我这样做的层。

目前我有一个for循环来检查每个层的值,但速度非常慢。

也许我可以使用阈值层或自己实现一个,您有什么建议?

点赞
用户3754413
用户3754413

你可以使用“大于或等于”运算符 https://github.com/torch/torch7/blob/master/doc/maths.md#torchgea-b

local threshold_tensor = o:ge(0)
2017-04-11 13:57:02