smooth_l1_loss.py 文件源码

python
阅读 25 收藏 0 点赞 0 评论 0

项目:chainer-faster-rcnn 作者: mitmul 项目源码 文件源码
def forward(self, inputs):
        xp = cuda.get_array_module(*inputs)
        x0, x1 = inputs
        self.diff = self.inside_weights * (x0 - x1)
        abs_diff = xp.abs(self.diff)
        flag = abs_diff < 1.0 / self.sigma2
        y = (flag * 0.5 * xp.square(self.diff) * self.sigma2 +
             (~flag) * (abs_diff - 0.5 / self.sigma2))
        if xp == cuda.cupy:
            with cuda.Device(cuda.get_device(y)):
                num = xp.prod(xp.asarray(y.shape))
        else:
            num = xp.prod(y.shape)
        return xp.array(y.sum() / num).astype(numpy.float32),
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号