From 4a2f39690c8d2d5c0b99f7b38e0412a796459b45 Mon Sep 17 00:00:00 2001 From: cc <52520497+juncaipeng@users.noreply.github.com> Date: Tue, 1 Nov 2022 17:01:18 +0800 Subject: [PATCH] [Fix] Replace value.numpy()[0] with float(value) (#2686) * To support 0 dim Tensor, replace value.numpy()[0] with float(value) when the shape of value is [1] --- Matting/ppmatting/core/train.py | 2 +- Matting/ppmatting/core/val_ml.py | 4 +-- contrib/AutoNUE/scripts/train.py | 2 +- contrib/CityscapesSOTA/scripts/train.py | 2 +- contrib/DomainAdaptation/script/train.py | 28 +++++++++---------- contrib/LaneSeg/core/train.py | 2 +- contrib/MedicalSeg/medicalseg/core/train.py | 2 +- contrib/MedicalSeg/nnunet/core/train.py | 2 +- contrib/PanopticDeepLab/core/train.py | 2 +- deploy/slim/distill/distill_utils.py | 8 +++--- paddleseg/core/train.py | 2 +- .../models/losses/ohem_cross_entropy_loss.py | 2 +- .../models/losses/ohem_edge_attention_loss.py | 2 +- 13 files changed, 30 insertions(+), 30 deletions(-) diff --git a/Matting/ppmatting/core/train.py b/Matting/ppmatting/core/train.py index 1c7627a3de..4498319b5b 100644 --- a/Matting/ppmatting/core/train.py +++ b/Matting/ppmatting/core/train.py @@ -227,7 +227,7 @@ def train(model, model.clear_gradients() for key, value in loss_dict.items(): - avg_loss[key] += value.numpy()[0] + avg_loss[key] += float(value) batch_cost_averager.record( time.time() - batch_start, num_samples=batch_size) diff --git a/Matting/ppmatting/core/val_ml.py b/Matting/ppmatting/core/val_ml.py index 77628925be..34bedf8b5f 100644 --- a/Matting/ppmatting/core/val_ml.py +++ b/Matting/ppmatting/core/val_ml.py @@ -44,10 +44,10 @@ def reverse_transform(alpha, trans_info): """recover pred to origin shape""" for item in trans_info[::-1]: if item[0][0] == 'resize': - h, w = item[1][0].numpy()[0], item[1][1].numpy()[0] + h, w = int(item[1][0]), int(item[1][1]) alpha = cv2.resize(alpha, dsize=(w, h)) elif item[0][0] == 'padding': - h, w = item[1][0].numpy()[0], item[1][1].numpy()[0] + h, w = int(item[1][0]), int(item[1][1]) alpha = alpha[0:h, 0:w] else: raise Exception("Unexpected info '{}' in im_info".format(item[0])) diff --git a/contrib/AutoNUE/scripts/train.py b/contrib/AutoNUE/scripts/train.py index 174a690a35..6430aff7d2 100755 --- a/contrib/AutoNUE/scripts/train.py +++ b/contrib/AutoNUE/scripts/train.py @@ -167,7 +167,7 @@ def train(model, paddle.optimizer.lr.LRScheduler): optimizer._learning_rate.step() model.clear_gradients() - avg_loss += loss.numpy()[0] + avg_loss += float(loss) if not avg_loss_list: avg_loss_list = [l.numpy() for l in loss_list] else: diff --git a/contrib/CityscapesSOTA/scripts/train.py b/contrib/CityscapesSOTA/scripts/train.py index baa257af2e..a5a41202be 100644 --- a/contrib/CityscapesSOTA/scripts/train.py +++ b/contrib/CityscapesSOTA/scripts/train.py @@ -170,7 +170,7 @@ def train(model, paddle.optimizer.lr.LRScheduler): optimizer._learning_rate.step() model.clear_gradients() - avg_loss += loss.numpy()[0] + avg_loss += float(loss) if not avg_loss_list: avg_loss_list = [l.numpy() for l in loss_list] else: diff --git a/contrib/DomainAdaptation/script/train.py b/contrib/DomainAdaptation/script/train.py index 170e8aa9a6..c46583db7e 100644 --- a/contrib/DomainAdaptation/script/train.py +++ b/contrib/DomainAdaptation/script/train.py @@ -177,8 +177,8 @@ def train(self, labels_src) loss_src_seg = loss_src_seg_main + loss_src_seg_aux - loss_dict["source_main"] = loss_src_seg_main.numpy()[0] - loss_dict["source_aux"] = loss_src_seg_aux.numpy()[0] + loss_dict["source_main"] = float(loss_src_seg_main) + loss_dict["source_aux"] = float(loss_src_seg_aux) loss = loss_src_seg del loss_src_seg, loss_src_seg_aux, loss_src_seg_main @@ -224,8 +224,8 @@ def train(self, loss += loss_edge - loss_dict['target_edge'] = loss_tgt_edge.numpy()[0] - loss_dict['source_edge'] = loss_src_edge.numpy()[0] + loss_dict['target_edge'] = float(loss_tgt_edge) + loss_dict['source_edge'] = float(loss_src_edge) del loss_edge, loss_tgt_edge, loss_src_edge @@ -260,8 +260,8 @@ def train(self, loss += loss_tgt_aug - loss_dict['target_aug_main'] = loss_tgt_aug_main.numpy()[0] - loss_dict['target_aug_aux'] = loss_tgt_aug_aux.numpy()[0] + loss_dict['target_aug_main'] = float(loss_tgt_aug_main) + loss_dict['target_aug_aux'] = float(loss_tgt_aug_aux) del images_tgt_aug, labels_tgt_aug_aux, images_tgt, \ loss_tgt_aug, loss_tgt_aug_aux, loss_tgt_aug_main @@ -287,8 +287,8 @@ def train(self, loss_edge_rec = loss_tgt_edge_rec + loss_src_edge_rec loss += loss_edge_rec - loss_dict['src_edge_rec'] = loss_src_edge_rec.numpy()[0] - loss_dict['tgt_edge_rec'] = loss_tgt_edge_rec.numpy()[0] + loss_dict['src_edge_rec'] = float(loss_src_edge_rec) + loss_dict['tgt_edge_rec'] = float(loss_tgt_edge_rec) del loss_tgt_edge_rec, loss_src_edge_rec @@ -358,12 +358,12 @@ def train(self, loss += loss_feat_align - loss_dict['loss_pix_align_src'] = \ - loss_pix_align_src.numpy()[0] - loss_dict['loss_pix_align_tgt'] = \ - loss_pix_align_tgt.numpy()[0] - loss_dict['loss_intra_relate'] = \ - loss_intra_relate.numpy()[0] + loss_dict['loss_pix_align_src'] = float( + loss_pix_align_src) + loss_dict['loss_pix_align_tgt'] = float( + loss_pix_align_tgt) + loss_dict['loss_intra_relate'] = float( + loss_intra_relate) del loss_pix_align_tgt, loss_pix_align_src, loss_intra_relate, diff --git a/contrib/LaneSeg/core/train.py b/contrib/LaneSeg/core/train.py index 536a66f89f..8d02a84b15 100644 --- a/contrib/LaneSeg/core/train.py +++ b/contrib/LaneSeg/core/train.py @@ -210,7 +210,7 @@ def train(model, train_profiler.add_profiler_step(profiler_options) model.clear_gradients() - avg_loss += loss.numpy()[0] + avg_loss += float(loss) if not avg_loss_list: avg_loss_list = [l.numpy() for l in loss_list] else: diff --git a/contrib/MedicalSeg/medicalseg/core/train.py b/contrib/MedicalSeg/medicalseg/core/train.py index fdf4dd758f..b37fdde79c 100644 --- a/contrib/MedicalSeg/medicalseg/core/train.py +++ b/contrib/MedicalSeg/medicalseg/core/train.py @@ -161,7 +161,7 @@ def train(model, model.clear_gradients() # TODO use a function to record, print lossetc - avg_loss += loss.numpy()[0] + avg_loss += float(loss) mdice += np.mean(per_channel_dice) * 100 if channel_dice_array.size == 0: diff --git a/contrib/MedicalSeg/nnunet/core/train.py b/contrib/MedicalSeg/nnunet/core/train.py index 0dd1c0fef5..1a94828877 100644 --- a/contrib/MedicalSeg/nnunet/core/train.py +++ b/contrib/MedicalSeg/nnunet/core/train.py @@ -141,7 +141,7 @@ def train(model, train_profiler.add_profiler_step(profiler_options) model.clear_gradients() - avg_loss += loss.numpy()[0] + avg_loss += float(loss) mdice += np.mean(per_channel_dice) * 100 if channel_dice_array.size == 0: diff --git a/contrib/PanopticDeepLab/core/train.py b/contrib/PanopticDeepLab/core/train.py index f74503dc29..71cf6a6208 100644 --- a/contrib/PanopticDeepLab/core/train.py +++ b/contrib/PanopticDeepLab/core/train.py @@ -189,7 +189,7 @@ def train(model, paddle.optimizer.lr.LRScheduler): optimizer._learning_rate.step() model.clear_gradients() - avg_loss += loss.numpy()[0] + avg_loss += float(loss) if not avg_loss_list: avg_loss_list = [l.numpy() for l in loss_list] else: diff --git a/deploy/slim/distill/distill_utils.py b/deploy/slim/distill/distill_utils.py index 1533733342..7b48816348 100644 --- a/deploy/slim/distill/distill_utils.py +++ b/deploy/slim/distill/distill_utils.py @@ -244,10 +244,10 @@ def distill_train(distill_model, lr_sche.step() distill_model.clear_gradients() - avg_loss += loss.numpy()[0] - avg_out_loss += out_loss.numpy()[0] - avg_out_distill_loss += out_distill_loss.numpy()[0] - avg_feature_distill_loss += feature_distill_loss.numpy()[0] + avg_loss += float(loss) + avg_out_loss += float(out_loss) + avg_out_distill_loss += float(out_distill_loss) + avg_feature_distill_loss += float(feature_distill_loss) if not avg_out_loss_list: avg_out_loss_list = [l.numpy() for l in out_loss_list] else: diff --git a/paddleseg/core/train.py b/paddleseg/core/train.py index 8570f34835..0da04b01d4 100644 --- a/paddleseg/core/train.py +++ b/paddleseg/core/train.py @@ -230,7 +230,7 @@ def train(model, train_profiler.add_profiler_step(profiler_options) model.clear_gradients() - avg_loss += loss.numpy()[0] + avg_loss += float(loss) if not avg_loss_list: avg_loss_list = [l.numpy() for l in loss_list] else: diff --git a/paddleseg/models/losses/ohem_cross_entropy_loss.py b/paddleseg/models/losses/ohem_cross_entropy_loss.py index c69d81ef11..946dbb43ca 100644 --- a/paddleseg/models/losses/ohem_cross_entropy_loss.py +++ b/paddleseg/models/losses/ohem_cross_entropy_loss.py @@ -77,7 +77,7 @@ def forward(self, logit, label): if self.min_kept > 0: index = prob.argsort() threshold_index = index[min(len(index), self.min_kept) - 1] - threshold_index = int(threshold_index.numpy()[0]) + threshold_index = int(threshold_index) if prob[threshold_index] > self.thresh: threshold = prob[threshold_index] kept_mask = (prob < threshold).astype('int64') diff --git a/paddleseg/models/losses/ohem_edge_attention_loss.py b/paddleseg/models/losses/ohem_edge_attention_loss.py index f37fe07af6..be72856e3b 100644 --- a/paddleseg/models/losses/ohem_edge_attention_loss.py +++ b/paddleseg/models/losses/ohem_edge_attention_loss.py @@ -93,7 +93,7 @@ def forward(self, logits, label): if self.min_kept > 0: index = prob.argsort() threshold_index = index[min(len(index), self.min_kept) - 1] - threshold_index = int(threshold_index.numpy()[0]) + threshold_index = int(threshold_index) if prob[threshold_index] > self.thresh: threshold = prob[threshold_index] kept_mask = (prob < threshold).astype('int64')