From 9491830504f580b655ad1b089ea3f23d90ffefaf Mon Sep 17 00:00:00 2001 From: Hui Zhang Date: Fri, 2 Jul 2021 03:33:46 +0000 Subject: [PATCH] type_as to astype --- deepspeech/modules/conv.py | 1 - deepspeech/modules/encoder.py | 2 +- deepspeech/modules/loss.py | 2 +- deepspeech/utils/tensor_utils.py | 4 ++-- 4 files changed, 4 insertions(+), 5 deletions(-) diff --git a/deepspeech/modules/conv.py b/deepspeech/modules/conv.py index 8bf48b2c..c4307fe7 100644 --- a/deepspeech/modules/conv.py +++ b/deepspeech/modules/conv.py @@ -114,7 +114,6 @@ class ConvBn(nn.Layer): masks = make_non_pad_mask(x_len) #[B, T] masks = masks.unsqueeze(1).unsqueeze(1) # [B, 1, 1, T] # TODO(Hui Zhang): not support bool multiply - # masks = masks.type_as(x) masks = masks.astype(x.dtype) x = x.multiply(masks) diff --git a/deepspeech/modules/encoder.py b/deepspeech/modules/encoder.py index e326db8f..0aedea74 100644 --- a/deepspeech/modules/encoder.py +++ b/deepspeech/modules/encoder.py @@ -159,7 +159,7 @@ class BaseEncoder(nn.Layer): if self.global_cmvn is not None: xs = self.global_cmvn(xs) #TODO(Hui Zhang): self.embed(xs, masks, offset=0), stride_slice not support bool tensor - xs, pos_emb, masks = self.embed(xs, masks.type_as(xs), offset=0) + xs, pos_emb, masks = self.embed(xs, masks.astype(xs.dtype), offset=0) #TODO(Hui Zhang): remove mask.astype, stride_slice not support bool tensor masks = masks.astype(paddle.bool) #TODO(Hui Zhang): mask_pad = ~masks diff --git a/deepspeech/modules/loss.py b/deepspeech/modules/loss.py index 3e441bbb..fd4c7c57 100644 --- a/deepspeech/modules/loss.py +++ b/deepspeech/modules/loss.py @@ -136,7 +136,7 @@ class LabelSmoothingLoss(nn.Layer): #TODO(Hui Zhang): sum not support bool type #total = len(target) - int(ignore.sum()) - total = len(target) - int(ignore.type_as(target).sum()) + total = len(target) - int(ignore.astype(target.dtype).sum()) denom = total if self.normalize_length else B #numer = (kl * (1 - ignore)).sum() numer = kl.masked_fill(ignore.unsqueeze(1), 0).sum() diff --git a/deepspeech/utils/tensor_utils.py b/deepspeech/utils/tensor_utils.py index 7679d9e1..58f958c4 100644 --- a/deepspeech/utils/tensor_utils.py +++ b/deepspeech/utils/tensor_utils.py @@ -159,8 +159,8 @@ def th_accuracy(pad_outputs: paddle.Tensor, # pad_pred.masked_select(mask) == pad_targets.masked_select(mask)) numerator = ( pad_pred.masked_select(mask) == pad_targets.masked_select(mask)) - numerator = paddle.sum(numerator.type_as(pad_targets)) + numerator = paddle.sum(numerator.astype(pad_targets.dtype)) #TODO(Hui Zhang): sum not support bool type # denominator = paddle.sum(mask) - denominator = paddle.sum(mask.type_as(pad_targets)) + denominator = paddle.sum(mask.astype(pad_targets.dtype)) return float(numerator) / float(denominator) -- GitLab