diff --git a/official/cv/vit/src/cross_entropy.py b/official/cv/vit/src/cross_entropy.py
index 7cbedb5f0ec0d72afb67e9ab2c10e59ba20ddebb..1e7865b91f05a735ff77b23beb7d67d48d422fce 100644
--- a/official/cv/vit/src/cross_entropy.py
+++ b/official/cv/vit/src/cross_entropy.py
@@ -17,13 +17,7 @@
 from mindspore import nn
 from mindspore import Tensor
 from mindspore.common import dtype as mstype
-try:
-    from mindspore.nn.loss.loss import Loss
-except ImportError:
-    try:
-        from mindspore.nn.loss.loss import LossBase as Loss
-    except ImportError:
-        from mindspore.nn.loss.loss import _Loss as Loss
+from mindspore.nn.loss.loss import LossBase as Loss
 
 from mindspore.ops import functional as F
 from mindspore.ops import operations as P
diff --git a/research/cv/HRNetW48_cls/src/loss.py b/research/cv/HRNetW48_cls/src/loss.py
index 33d8415259f630d6d7ac9689ea19c18e84ac2fba..ce56f8a4187a7843a0995f92ac46eabe905fd355 100644
--- a/research/cv/HRNetW48_cls/src/loss.py
+++ b/research/cv/HRNetW48_cls/src/loss.py
@@ -16,12 +16,12 @@
 import mindspore.nn as nn
 from mindspore import Tensor
 from mindspore.common import dtype as mstype
-from mindspore.nn.loss.loss import _Loss
+from mindspore.nn.loss.loss import LossBase
 from mindspore.ops import functional as F
 from mindspore.ops import operations as P
 
 
-class CrossEntropySmooth(_Loss):
+class CrossEntropySmooth(LossBase):
     """CrossEntropy"""
     def __init__(self, sparse=True, reduction='mean', smooth_factor=0., num_classes=1000):
         super(CrossEntropySmooth, self).__init__()
diff --git a/research/cv/HRNetW48_seg/src/loss.py b/research/cv/HRNetW48_seg/src/loss.py
index 9cde41d4cedc070db8aa26801671a77f06228851..9f88cbde67d0ea99149942e603198e51c104568c 100644
--- a/research/cv/HRNetW48_seg/src/loss.py
+++ b/research/cv/HRNetW48_seg/src/loss.py
@@ -18,10 +18,10 @@ import mindspore.ops.operations as P
 import mindspore.ops as F
 from mindspore.common.tensor import Tensor
 from mindspore import dtype as mstype
-from mindspore.nn.loss.loss import _Loss
+from mindspore.nn.loss.loss import LossBase
 
 
-class CrossEntropyWithLogits(_Loss):
+class CrossEntropyWithLogits(LossBase):
     """
     Cross-entropy loss function for semantic segmentation,
     and different classes have the same weight.
@@ -61,7 +61,7 @@ class CrossEntropyWithLogits(_Loss):
         return loss
 
 
-class CrossEntropyWithWeights(_Loss):
+class CrossEntropyWithWeights(LossBase):
     """
     Cross-entropy loss function for semantic segmentation,
     and different classes have different weights.
diff --git a/research/cv/ICNet/Res50V1_PRE/src/CrossEntropySmooth.py b/research/cv/ICNet/Res50V1_PRE/src/CrossEntropySmooth.py
index 24bb6995ed8e3d87db55e21821ef430a14408e7f..149f334546cb432462c91315515804f9fc05e37c 100644
--- a/research/cv/ICNet/Res50V1_PRE/src/CrossEntropySmooth.py
+++ b/research/cv/ICNet/Res50V1_PRE/src/CrossEntropySmooth.py
@@ -16,12 +16,12 @@
 import mindspore.nn as nn
 from mindspore import Tensor
 from mindspore.common import dtype as mstype
-from mindspore.nn.loss.loss import _Loss
+from mindspore.nn.loss.loss import LossBase
 from mindspore.ops import functional as F
 from mindspore.ops import operations as P
 
 
-class CrossEntropySmooth(_Loss):
+class CrossEntropySmooth(LossBase):
     """CrossEntropy"""
     def __init__(self, sparse=True, reduction='mean', smooth_factor=0., num_classes=1000):
         super(CrossEntropySmooth, self).__init__()
diff --git a/research/cv/NFNet/src/tools/criterion.py b/research/cv/NFNet/src/tools/criterion.py
index bf8a490e9076f3cfb408fc0d6bd3aafc20c8df13..adef5e682b8cd1548e9ede96f5d9e23cf7fd900e 100644
--- a/research/cv/NFNet/src/tools/criterion.py
+++ b/research/cv/NFNet/src/tools/criterion.py
@@ -17,12 +17,12 @@ import mindspore.nn as nn
 from mindspore import Tensor
 from mindspore import ops
 from mindspore.common import dtype as mstype
-from mindspore.nn.loss.loss import _Loss
+from mindspore.nn.loss.loss import LossBase
 from mindspore.ops import functional as F
 from mindspore.ops import operations as P
 
 
-class SoftTargetCrossEntropy(_Loss):
+class SoftTargetCrossEntropy(LossBase):
     """SoftTargetCrossEntropy for MixUp Augment"""
 
     def __init__(self):
@@ -38,7 +38,7 @@ class SoftTargetCrossEntropy(_Loss):
         return self.mean_ops(loss)
 
 
-class CrossEntropySmooth(_Loss):
+class CrossEntropySmooth(LossBase):
     """CrossEntropy"""
 
     def __init__(self, sparse=True, reduction='mean', smooth_factor=0., num_classes=1000):
diff --git a/research/cv/OCRNet/src/loss.py b/research/cv/OCRNet/src/loss.py
index 99af216d15412e2e3dc5e3fe70d8c026fa33a410..5842464a4ba390391c12071b5253b3a85794bac6 100644
--- a/research/cv/OCRNet/src/loss.py
+++ b/research/cv/OCRNet/src/loss.py
@@ -19,7 +19,7 @@ import mindspore.ops.operations as P
 import mindspore.ops as F
 from mindspore.common.tensor import Tensor
 from mindspore import dtype as mstype
-from mindspore.nn.loss.loss import _Loss
+from mindspore.nn.loss.loss import LossBase
 
 from src.config import config_hrnetv2_w48 as config
 
@@ -30,7 +30,7 @@ weights_list = [0.8373, 0.918, 0.866, 1.0345,
                 1.0865, 1.1529, 1.0507]
 
 
-class CrossEntropyWithLogits(_Loss):
+class CrossEntropyWithLogits(LossBase):
     """
     Cross-entropy loss function for semantic segmentation,
     and different classes have the same weight.
@@ -71,7 +71,7 @@ class CrossEntropyWithLogits(_Loss):
         return loss
 
 
-class CrossEntropyWithLogitsAndWeights(_Loss):
+class CrossEntropyWithLogitsAndWeights(LossBase):
     """
     Cross-entropy loss function for semantic segmentation,
     and different classes have different weights.
diff --git a/research/cv/Pix2Pix/src/models/loss.py b/research/cv/Pix2Pix/src/models/loss.py
index eff9c47768422a292277363fd12b9df0b7a648aa..c9cca0cb97213843e6381c2b8bc440cdae375335 100644
--- a/research/cv/Pix2Pix/src/models/loss.py
+++ b/research/cv/Pix2Pix/src/models/loss.py
@@ -24,12 +24,12 @@ import mindspore.ops.operations as P
 from mindspore.parallel._utils import (_get_device_num, _get_gradients_mean, _get_parallel_mode)
 from mindspore.context import ParallelMode
 from mindspore.nn.wrap.grad_reducer import DistributedGradReducer
-from mindspore.nn.loss.loss import _Loss
+from mindspore.nn.loss.loss import LossBase
 from src.utils.config import get_args
 
 args = get_args()
 
-class SigmoidCrossEntropyWithLogits(_Loss):
+class SigmoidCrossEntropyWithLogits(LossBase):
     def __init__(self):
         super(SigmoidCrossEntropyWithLogits, self).__init__()
         self.cross_entropy = P.SigmoidCrossEntropyWithLogits()
@@ -38,7 +38,7 @@ class SigmoidCrossEntropyWithLogits(_Loss):
         x = self.cross_entropy(data, label)
         return self.get_loss(x)
 
-class D_Loss(_Loss):
+class D_Loss(LossBase):
     """
         Define Dloss.
     """
@@ -70,7 +70,7 @@ class D_WithLossCell(nn.Cell):
         pred0 = self.netD(realA, fakeB)
         return self._loss_fn(pred1, pred0)
 
-class G_Loss(_Loss):
+class G_Loss(LossBase):
     """
         Define Gloss.
     """
diff --git a/research/cv/ProtoNet/src/PrototypicalLoss.py b/research/cv/ProtoNet/src/PrototypicalLoss.py
index 8faa95927f5552619e3bc93fb4b2b083b88ab628..0a3a784f9222c1953c6ffe462a1938b9fdc247c2 100644
--- a/research/cv/ProtoNet/src/PrototypicalLoss.py
+++ b/research/cv/ProtoNet/src/PrototypicalLoss.py
@@ -18,11 +18,11 @@ loss function script.
 import mindspore.ops as ops
 import mindspore.nn as nn
 from mindspore import Tensor
-from mindspore.nn.loss.loss import _Loss
+from mindspore.nn.loss.loss import LossBase
 import mindspore as ms
 import numpy as np
 
-class PrototypicalLoss(_Loss):
+class PrototypicalLoss(LossBase):
     '''
     Loss class deriving from Module for the prototypical loss function defined below
     '''
diff --git a/research/cv/ResNeSt50/src/crossentropy.py b/research/cv/ResNeSt50/src/crossentropy.py
index a5abe60219632e15c9de81e7c8cbbba5d697d1d5..01039e39ea3e4fe4a7fa353a738a6d96ada2809b 100644
--- a/research/cv/ResNeSt50/src/crossentropy.py
+++ b/research/cv/ResNeSt50/src/crossentropy.py
@@ -15,14 +15,14 @@
 """
 define loss function for network.
 """
-from mindspore.nn.loss.loss import _Loss
+from mindspore.nn.loss.loss import LossBase
 from mindspore.ops import operations as P
 from mindspore.ops import functional as F
 from mindspore import Tensor
 from mindspore.common import dtype as mstype
 import mindspore.nn as nn
 
-class CrossEntropy(_Loss):
+class CrossEntropy(LossBase):
     """
     the redefined loss function with SoftmaxCrossEntropyWithLogits.
     """
diff --git a/research/cv/SE_ResNeXt50/eval.py b/research/cv/SE_ResNeXt50/eval.py
index cb109902cf254828bac98bef26e0764fec7a6691..a12f096dc9d2043e16dcb33e980996e6084ebfdf 100644
--- a/research/cv/SE_ResNeXt50/eval.py
+++ b/research/cv/SE_ResNeXt50/eval.py
@@ -24,7 +24,7 @@ from mindspore.train.serialization import load_checkpoint, load_param_into_net
 from mindspore.common import set_seed
 from mindspore import Tensor
 from mindspore.common import dtype as mstype
-from mindspore.nn.loss.loss import _Loss
+from mindspore.nn.loss.loss import LossBase
 from mindspore.ops import functional as F
 from mindspore.ops import operations as P
 
@@ -41,7 +41,7 @@ parser.add_argument('--checkpoint_path', type=str, default='./ckpt_0', help='Che
 args_opt = parser.parse_args()
 
 
-class CrossEntropySmooth(_Loss):
+class CrossEntropySmooth(LossBase):
     """CrossEntropy"""
     def __init__(self, sparse=True, reduction='mean', smooth_factor=0., num_classes=1000):
         super(CrossEntropySmooth, self).__init__()
diff --git a/research/cv/SE_ResNeXt50/train.py b/research/cv/SE_ResNeXt50/train.py
index b99da2f4657d60e32a6e81ebe0d28d6139432f34..972626ae0e57cf3a1655e527cd9d5ab0c4906a6b 100644
--- a/research/cv/SE_ResNeXt50/train.py
+++ b/research/cv/SE_ResNeXt50/train.py
@@ -34,7 +34,7 @@ from mindspore.context import ParallelMode
 from mindspore.train.serialization import load_checkpoint, load_param_into_net
 from mindspore.common import set_seed
 from mindspore.common import dtype as mstype
-from mindspore.nn.loss.loss import _Loss
+from mindspore.nn.loss.loss import LossBase
 from mindspore.ops import functional as F
 from mindspore.ops import operations as P
 
@@ -152,7 +152,7 @@ def warmup_cosine_annealing_lr(lr5, steps_per_epoch, warmup_epochs, max_epoch, T
     return np.array(lr_each_step).astype(np.float32)
 
 
-class CrossEntropySmooth(_Loss):
+class CrossEntropySmooth(LossBase):
     """CrossEntropy"""
     def __init__(self, sparse=True, reduction='mean', smooth_factor=0., num_classes=1000):
         super(CrossEntropySmooth, self).__init__()
diff --git a/research/cv/TNT/src/tools/criterion.py b/research/cv/TNT/src/tools/criterion.py
index 1afdd719f3a77188b32e4f22b756b8151adf572c..ee963c1fee2724003b422532b2c1cb36ba0e9391 100644
--- a/research/cv/TNT/src/tools/criterion.py
+++ b/research/cv/TNT/src/tools/criterion.py
@@ -17,12 +17,12 @@ import mindspore.nn as nn
 from mindspore import Tensor
 from mindspore import ops
 from mindspore.common import dtype as mstype
-from mindspore.nn.loss.loss import _Loss
+from mindspore.nn.loss.loss import LossBase
 from mindspore.ops import functional as F
 from mindspore.ops import operations as P
 
 
-class SoftTargetCrossEntropy(_Loss):
+class SoftTargetCrossEntropy(LossBase):
     """SoftTargetCrossEntropy for MixUp Augment"""
 
     def __init__(self):
@@ -38,7 +38,7 @@ class SoftTargetCrossEntropy(_Loss):
         return self.mean_ops(loss)
 
 
-class CrossEntropySmooth(_Loss):
+class CrossEntropySmooth(LossBase):
     """CrossEntropy"""
 
     def __init__(self, sparse=True, reduction='mean', smooth_factor=0., num_classes=1000):
diff --git a/research/cv/VehicleNet/src/loss.py b/research/cv/VehicleNet/src/loss.py
index 6aca541533d9de1a1c55e7396ce83f31394d9555..673a8ab1cad51be711aa204e4270faad1e4d9068 100644
--- a/research/cv/VehicleNet/src/loss.py
+++ b/research/cv/VehicleNet/src/loss.py
@@ -13,14 +13,14 @@
 # limitations under the License.
 # ============================================================================
 """loss function"""
-from mindspore.nn.loss.loss import _Loss
+from mindspore.nn.loss.loss import LossBase
 from mindspore.ops import operations as P
 from mindspore.ops import functional as F
 from mindspore import Tensor
 from mindspore.common import dtype as mstype
 import mindspore.nn as nn
 
-class CrossEntropy(_Loss):
+class CrossEntropy(LossBase):
     """CrossEntropy"""
     def __init__(self, smooth_factor=0., num_classes=1000):
         super(CrossEntropy, self).__init__()
diff --git a/research/cv/aecrnet/src/contras_loss.py b/research/cv/aecrnet/src/contras_loss.py
index 93b3d61bdfa22d8b1d627382486808de8d5942cb..fb8ea8430b9ebe9d566a74f6f18b5ec641117f2e 100644
--- a/research/cv/aecrnet/src/contras_loss.py
+++ b/research/cv/aecrnet/src/contras_loss.py
@@ -16,7 +16,7 @@
 import os
 
 import mindspore.ops as ops
-from mindspore.nn.loss.loss import _Loss
+from mindspore.nn.loss.loss import LossBase
 from mindspore import nn
 from mindspore import load_checkpoint, load_param_into_net
 from mindspore.ops.functional import stop_gradient
@@ -82,7 +82,7 @@ class Vgg19(nn.Cell):
         return out
 
 
-class ContrastLoss(_Loss):
+class ContrastLoss(LossBase):
     """[ContrastLoss]
 
     Args:
diff --git a/research/cv/cct/src/tools/criterion.py b/research/cv/cct/src/tools/criterion.py
index 4ed0f0534393cc82a9a286542b583be52c31a4b3..257aec2dac97d193787982db2e0bdce19c088a78 100644
--- a/research/cv/cct/src/tools/criterion.py
+++ b/research/cv/cct/src/tools/criterion.py
@@ -17,12 +17,12 @@ import mindspore.nn as nn
 from mindspore import Tensor
 from mindspore import ops
 from mindspore.common import dtype as mstype
-from mindspore.nn.loss.loss import _Loss
+from mindspore.nn.loss.loss import LossBase
 from mindspore.ops import functional as F
 from mindspore.ops import operations as P
 
 
-class SoftTargetCrossEntropy(_Loss):
+class SoftTargetCrossEntropy(LossBase):
     """SoftTargetCrossEntropy for MixUp Augment"""
 
     def __init__(self):
@@ -38,7 +38,7 @@ class SoftTargetCrossEntropy(_Loss):
         return self.mean_ops(loss)
 
 
-class CrossEntropySmooth(_Loss):
+class CrossEntropySmooth(LossBase):
     """CrossEntropy"""
 
     def __init__(self, sparse=True, reduction='mean', smooth_factor=0., num_classes=1000):
diff --git a/research/cv/csd/src/contras_loss.py b/research/cv/csd/src/contras_loss.py
index 8326af2601dfc659b9194a61486e96038c181714..ac9bfa655f436ae3fa873145517e1457b602aaeb 100644
--- a/research/cv/csd/src/contras_loss.py
+++ b/research/cv/csd/src/contras_loss.py
@@ -16,7 +16,7 @@
 import os
 
 import mindspore.ops as ops
-from mindspore.nn.loss.loss import _Loss
+from mindspore.nn.loss.loss import LossBase
 from mindspore import nn
 from mindspore import load_checkpoint, load_param_into_net
 from mindspore.ops.functional import stop_gradient
@@ -108,7 +108,7 @@ class Vgg19(nn.Cell):
         return out
 
 
-class ContrastLoss(_Loss):
+class ContrastLoss(LossBase):
     """[ContrastLoss]
 
     Args:
diff --git a/research/cv/efficientnet-b0/src/loss.py b/research/cv/efficientnet-b0/src/loss.py
index 6d63b66694652da2298ec4cea541537be22d843c..8400b5413bf85c37dd9793ae0664f50e2cf16396 100644
--- a/research/cv/efficientnet-b0/src/loss.py
+++ b/research/cv/efficientnet-b0/src/loss.py
@@ -16,12 +16,12 @@
 import mindspore.nn as nn
 from mindspore import Tensor
 from mindspore.common import dtype as mstype
-from mindspore.nn.loss.loss import _Loss
+from mindspore.nn.loss.loss import LossBase
 from mindspore.ops import functional as F
 from mindspore.ops import operations as P
 
 
-class CrossEntropySmooth(_Loss):
+class CrossEntropySmooth(LossBase):
     """CrossEntropy"""
     def __init__(self, sparse=True, reduction='mean', smooth_factor=0., num_classes=1000):
         super(CrossEntropySmooth, self).__init__()
diff --git a/research/cv/efficientnet-b1/src/loss.py b/research/cv/efficientnet-b1/src/loss.py
index 06cb51616065dddcc1e79cc46cec0f031ce3a3a4..14ebd144f507c47b3fc6b986f24e8f33d7abd12c 100644
--- a/research/cv/efficientnet-b1/src/loss.py
+++ b/research/cv/efficientnet-b1/src/loss.py
@@ -13,7 +13,7 @@
 # limitations under the License.
 # ============================================================================
 """define loss function for network."""
-from mindspore.nn.loss.loss import _Loss
+from mindspore.nn.loss.loss import LossBase
 from mindspore.ops import operations as P
 from mindspore.ops import functional as F
 from mindspore.common import dtype as mstype
@@ -21,7 +21,7 @@ from mindspore import Tensor
 import mindspore.nn as nn
 
 
-class LabelSmoothingCrossEntropy(_Loss):
+class LabelSmoothingCrossEntropy(LossBase):
     """LabelSmoothingCrossEntropy"""
     def __init__(self, smooth_factor=0.1, num_classes=1000):
         super(LabelSmoothingCrossEntropy, self).__init__()
@@ -38,7 +38,7 @@ class LabelSmoothingCrossEntropy(_Loss):
         return loss_logit
 
 
-class CrossEntropySmooth(_Loss):
+class CrossEntropySmooth(LossBase):
     """CrossEntropy"""
     def __init__(self, sparse=True, reduction='mean', smooth_factor=0., num_classes=1000):
         super(CrossEntropySmooth, self).__init__()
diff --git a/research/cv/efficientnet-b3/src/loss.py b/research/cv/efficientnet-b3/src/loss.py
index 6d63b66694652da2298ec4cea541537be22d843c..8400b5413bf85c37dd9793ae0664f50e2cf16396 100644
--- a/research/cv/efficientnet-b3/src/loss.py
+++ b/research/cv/efficientnet-b3/src/loss.py
@@ -16,12 +16,12 @@
 import mindspore.nn as nn
 from mindspore import Tensor
 from mindspore.common import dtype as mstype
-from mindspore.nn.loss.loss import _Loss
+from mindspore.nn.loss.loss import LossBase
 from mindspore.ops import functional as F
 from mindspore.ops import operations as P
 
 
-class CrossEntropySmooth(_Loss):
+class CrossEntropySmooth(LossBase):
     """CrossEntropy"""
     def __init__(self, sparse=True, reduction='mean', smooth_factor=0., num_classes=1000):
         super(CrossEntropySmooth, self).__init__()
diff --git a/research/cv/fishnet99/eval.py b/research/cv/fishnet99/eval.py
index 4cebaf5c122ea1b10b4d498161675b17934b719d..84cabbeaaed7590093301029421483425e77f2e8 100644
--- a/research/cv/fishnet99/eval.py
+++ b/research/cv/fishnet99/eval.py
@@ -24,7 +24,7 @@ from mindspore.train.serialization import load_checkpoint, load_param_into_net
 from mindspore.common import set_seed
 from mindspore import Tensor
 from mindspore.common import dtype as mstype
-from mindspore.nn.loss.loss import _Loss
+from mindspore.nn.loss.loss import LossBase
 from mindspore.ops import functional as F
 from mindspore.ops import operations as P
 
@@ -43,7 +43,7 @@ parser.add_argument('--checkpoint_path', type=str, default='./ckpt_0', help='Che
 args_opt = parser.parse_args()
 
 
-class CrossEntropySmooth(_Loss):
+class CrossEntropySmooth(LossBase):
     """CrossEntropy"""
     def __init__(self, sparse=True, reduction='mean', smooth_factor=0., num_classes=1000):
         super(CrossEntropySmooth, self).__init__()
diff --git a/research/cv/fishnet99/train.py b/research/cv/fishnet99/train.py
index a5401d1587fa0ff3ad1c735deee889f8894a6c72..3901c2b2a58ec0d637af3efc36db520e65947467 100644
--- a/research/cv/fishnet99/train.py
+++ b/research/cv/fishnet99/train.py
@@ -31,7 +31,7 @@ from mindspore.context import ParallelMode
 from mindspore.train.serialization import load_checkpoint, load_param_into_net
 from mindspore.common import set_seed
 from mindspore.common import dtype as mstype
-from mindspore.nn.loss.loss import _Loss
+from mindspore.nn.loss.loss import LossBase
 from mindspore.ops import functional as F
 from mindspore.ops import operations as P
 
@@ -81,7 +81,7 @@ def warmup_cosine_annealing_lr(lr5, steps_per_epoch, warmup_epochs, max_epoch, T
     return np.array(lr_each_step).astype(np.float32)
 
 
-class CrossEntropySmooth(_Loss):
+class CrossEntropySmooth(LossBase):
     """CrossEntropy"""
     def __init__(self, sparse=True, reduction='mean', smooth_factor=0., num_classes=1000):
         super(CrossEntropySmooth, self).__init__()
diff --git a/research/cv/ghostnet/src/CrossEntropySmooth.py b/research/cv/ghostnet/src/CrossEntropySmooth.py
index 6d63b66694652da2298ec4cea541537be22d843c..8400b5413bf85c37dd9793ae0664f50e2cf16396 100644
--- a/research/cv/ghostnet/src/CrossEntropySmooth.py
+++ b/research/cv/ghostnet/src/CrossEntropySmooth.py
@@ -16,12 +16,12 @@
 import mindspore.nn as nn
 from mindspore import Tensor
 from mindspore.common import dtype as mstype
-from mindspore.nn.loss.loss import _Loss
+from mindspore.nn.loss.loss import LossBase
 from mindspore.ops import functional as F
 from mindspore.ops import operations as P
 
 
-class CrossEntropySmooth(_Loss):
+class CrossEntropySmooth(LossBase):
     """CrossEntropy"""
     def __init__(self, sparse=True, reduction='mean', smooth_factor=0., num_classes=1000):
         super(CrossEntropySmooth, self).__init__()
diff --git a/research/cv/inception_resnet_v2/modelarts/train_start.py b/research/cv/inception_resnet_v2/modelarts/train_start.py
index 37ab60bfba772628977b681b5d2c87465ba1b20a..83162b746c98ace4e935b1e1d0d25266f7645330 100644
--- a/research/cv/inception_resnet_v2/modelarts/train_start.py
+++ b/research/cv/inception_resnet_v2/modelarts/train_start.py
@@ -33,7 +33,7 @@ from mindspore.common.initializer import XavierUniform, initializer
 from mindspore.communication import init
 from mindspore.context import ParallelMode
 from mindspore.nn import RMSProp, Momentum
-from mindspore.nn.loss.loss import _Loss
+from mindspore.nn.loss.loss import LossBase
 from mindspore.train.callback import ModelCheckpoint, CheckpointConfig, TimeMonitor, LossMonitor
 from mindspore.train.loss_scale_manager import FixedLossScaleManager
 from mindspore.train.serialization import load_checkpoint, load_param_into_net
@@ -65,7 +65,7 @@ args = arg_parser.parse_args()
 set_seed(1)
 
 
-class CrossEntropySmooth(_Loss):
+class CrossEntropySmooth(LossBase):
     """CrossEntropy"""
 
     def __init__(self, sparse=True, reduction='mean', smooth_factor=0., num_classes=1000):
diff --git a/research/cv/inception_resnet_v2/train.py b/research/cv/inception_resnet_v2/train.py
index 34f42bd1aa1776962dd454655bd407a2849607a4..e5de258f7c0ae75724a90dedbd0bef7aacb17b5f 100644
--- a/research/cv/inception_resnet_v2/train.py
+++ b/research/cv/inception_resnet_v2/train.py
@@ -29,7 +29,7 @@ from mindspore.common.initializer import XavierUniform, initializer
 from mindspore.communication import init, get_rank
 from mindspore.context import ParallelMode
 from mindspore.nn import RMSProp, Momentum
-from mindspore.nn.loss.loss import _Loss
+from mindspore.nn.loss.loss import LossBase
 from mindspore.train.callback import ModelCheckpoint, CheckpointConfig, TimeMonitor, LossMonitor
 from mindspore.train.loss_scale_manager import FixedLossScaleManager
 from mindspore.train.serialization import load_checkpoint, load_param_into_net
@@ -42,7 +42,7 @@ os.environ['PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION'] = 'python'
 set_seed(1)
 
 
-class CrossEntropySmooth(_Loss):
+class CrossEntropySmooth(LossBase):
     """CrossEntropy"""
 
     def __init__(self, sparse=True, reduction='mean', smooth_factor=0., num_classes=1000):
diff --git a/research/cv/mnasnet/src/loss.py b/research/cv/mnasnet/src/loss.py
index 6d63b66694652da2298ec4cea541537be22d843c..8400b5413bf85c37dd9793ae0664f50e2cf16396 100644
--- a/research/cv/mnasnet/src/loss.py
+++ b/research/cv/mnasnet/src/loss.py
@@ -16,12 +16,12 @@
 import mindspore.nn as nn
 from mindspore import Tensor
 from mindspore.common import dtype as mstype
-from mindspore.nn.loss.loss import _Loss
+from mindspore.nn.loss.loss import LossBase
 from mindspore.ops import functional as F
 from mindspore.ops import operations as P
 
 
-class CrossEntropySmooth(_Loss):
+class CrossEntropySmooth(LossBase):
     """CrossEntropy"""
     def __init__(self, sparse=True, reduction='mean', smooth_factor=0., num_classes=1000):
         super(CrossEntropySmooth, self).__init__()
diff --git a/research/cv/mobilenetV3_small_x1_0/src/loss.py b/research/cv/mobilenetV3_small_x1_0/src/loss.py
index 827f15ccbe161cecd1208d5058b2b468abb71943..4b1af5aa17eb77300ee4b84be90b22463da7477e 100644
--- a/research/cv/mobilenetV3_small_x1_0/src/loss.py
+++ b/research/cv/mobilenetV3_small_x1_0/src/loss.py
@@ -16,12 +16,12 @@
 import mindspore.nn as nn
 from mindspore import Tensor
 from mindspore.common import dtype as mstype
-from mindspore.nn.loss.loss import _Loss
+from mindspore.nn.loss.loss import LossBase
 from mindspore.ops import functional as F
 from mindspore.ops import operations as P
 
 
-class CrossEntropyWithLabelSmooth(_Loss):
+class CrossEntropyWithLabelSmooth(LossBase):
     """CrossEntropyWithLabelSmooth"""
     def __init__(self, sparse=True, reduction='mean', smooth_factor=0., num_classes=1000):
         super(CrossEntropyWithLabelSmooth, self).__init__()
diff --git a/research/cv/mobilenetv3_large/train.py b/research/cv/mobilenetv3_large/train.py
index 75fbd94374d79316bd0b03df2c6bdd1130eec8b4..8daf1d726601794c90095c84b0c87867c4ec2de9 100644
--- a/research/cv/mobilenetv3_large/train.py
+++ b/research/cv/mobilenetv3_large/train.py
@@ -25,7 +25,7 @@ from mindspore import Tensor
 from mindspore import nn
 from mindspore.nn.optim.momentum import Momentum
 from mindspore.nn.loss import SoftmaxCrossEntropyWithLogits
-from mindspore.nn.loss.loss import _Loss
+from mindspore.nn.loss.loss import LossBase
 from mindspore.ops import operations as P
 from mindspore.ops import functional as F
 from mindspore.common import dtype as mstype
@@ -90,7 +90,7 @@ class SaveCallback(Callback):
             print("Save the maximum accuracy checkpoint,the accuracy is", self.acc)
 
 
-class CrossEntropyWithLabelSmooth(_Loss):
+class CrossEntropyWithLabelSmooth(LossBase):
     """
     CrossEntropyWith LabelSmooth.
 
diff --git a/research/cv/pointnet2/src/pointnet2.py b/research/cv/pointnet2/src/pointnet2.py
index 57ec6408fc157866d0a81c58f4feac352152e619..9e12ce7df2224b993f122bf588f33080133dac72 100644
--- a/research/cv/pointnet2/src/pointnet2.py
+++ b/research/cv/pointnet2/src/pointnet2.py
@@ -16,7 +16,7 @@
 
 import mindspore.nn as nn
 import mindspore.ops as P
-from mindspore.nn.loss.loss import _Loss
+from mindspore.nn.loss.loss import LossBase
 from mindspore.ops import functional as F
 
 from src.layers import Dense
@@ -74,7 +74,7 @@ class PointNet2(nn.Cell):
         return x
 
 
-class NLLLoss(_Loss):
+class NLLLoss(LossBase):
     """NLL loss"""
 
     def __init__(self, reduction='mean'):
diff --git a/research/cv/resnet3d/src/loss.py b/research/cv/resnet3d/src/loss.py
index b91818183df92a39f931398482c80b00f1112e2a..4f66d40aec830e8ae4bb0dc0283143a77fc5089a 100644
--- a/research/cv/resnet3d/src/loss.py
+++ b/research/cv/resnet3d/src/loss.py
@@ -18,7 +18,7 @@ define loss for resnet3d
 import mindspore.nn as nn
 from mindspore import Tensor
 from mindspore.common import dtype as mstype
-from mindspore.nn.loss.loss import _Loss
+from mindspore.nn.loss.loss import LossBase
 from mindspore.ops import functional as F
 from mindspore.ops import operations as P
 import mindspore.ops as ops
@@ -61,7 +61,7 @@ class SoftmaxCrossEntropyExpand(nn.Cell):  # pylint: disable=missing-docstring
         return loss
 
 
-class CrossEntropySmooth(_Loss):
+class CrossEntropySmooth(LossBase):
     """CrossEntropy"""
 
     def __init__(self, sparse=True, reduction='mean', smooth_factor=0., num_classes=101):
diff --git a/research/cv/resnet50_bam/eval.py b/research/cv/resnet50_bam/eval.py
index 7244e79ab3635a306a02b68b1408918ce06a6426..4f2240963fbd1f52e99d4821cdd784e15d599635 100644
--- a/research/cv/resnet50_bam/eval.py
+++ b/research/cv/resnet50_bam/eval.py
@@ -24,7 +24,7 @@ from mindspore.train.serialization import load_checkpoint, load_param_into_net
 from mindspore.common import set_seed
 from mindspore import Tensor
 from mindspore.common import dtype as mstype
-from mindspore.nn.loss.loss import _Loss
+from mindspore.nn.loss.loss import LossBase
 from mindspore.ops import functional as F
 from mindspore.ops import operations as P
 
@@ -45,7 +45,7 @@ parser.add_argument('--device_id', type=str, default=0, help='Device id.')
 args_opt = parser.parse_args()
 
 
-class CrossEntropySmooth(_Loss):
+class CrossEntropySmooth(LossBase):
     """CrossEntropy"""
     def __init__(self, sparse=True, reduction='mean', smooth_factor=0., num_classes=1000):
         super(CrossEntropySmooth, self).__init__()
diff --git a/research/cv/resnet50_bam/train.py b/research/cv/resnet50_bam/train.py
index 0427dcc2a4813b1d49bba174453e969eb95230d9..59da4f65d86f000d1a3d42bba63b1d57134c5697 100644
--- a/research/cv/resnet50_bam/train.py
+++ b/research/cv/resnet50_bam/train.py
@@ -29,7 +29,7 @@ from mindspore.communication.management import get_group_size
 from mindspore.communication.management import get_rank
 from mindspore.communication.management import init
 from mindspore.context import ParallelMode
-from mindspore.nn.loss.loss import _Loss
+from mindspore.nn.loss.loss import LossBase
 from mindspore.nn.optim.momentum import Momentum
 from mindspore.ops import functional as F
 from mindspore.ops import operations as P
@@ -90,7 +90,7 @@ def warmup_cosine_annealing_lr(lr5, steps_per_epoch, warmup_epochs, max_epoch, T
     return np.array(lr_each_step).astype(np.float32)
 
 
-class CrossEntropySmooth(_Loss):
+class CrossEntropySmooth(LossBase):
     """CrossEntropy"""
     def __init__(self, sparse=True, reduction='mean', smooth_factor=0., num_classes=1000):
         super(CrossEntropySmooth, self).__init__()
diff --git a/research/cv/resnext152_64x4d/src/crossentropy.py b/research/cv/resnext152_64x4d/src/crossentropy.py
index a5abe60219632e15c9de81e7c8cbbba5d697d1d5..01039e39ea3e4fe4a7fa353a738a6d96ada2809b 100644
--- a/research/cv/resnext152_64x4d/src/crossentropy.py
+++ b/research/cv/resnext152_64x4d/src/crossentropy.py
@@ -15,14 +15,14 @@
 """
 define loss function for network.
 """
-from mindspore.nn.loss.loss import _Loss
+from mindspore.nn.loss.loss import LossBase
 from mindspore.ops import operations as P
 from mindspore.ops import functional as F
 from mindspore import Tensor
 from mindspore.common import dtype as mstype
 import mindspore.nn as nn
 
-class CrossEntropy(_Loss):
+class CrossEntropy(LossBase):
     """
     the redefined loss function with SoftmaxCrossEntropyWithLogits.
     """
diff --git a/research/cv/simple_baselines/src/network_with_loss.py b/research/cv/simple_baselines/src/network_with_loss.py
index 011b8be011eddc1ac9e248bbd629c18cd3f23ab0..d671e68ea30f67251d062ba3795200a7aba6c27b 100644
--- a/research/cv/simple_baselines/src/network_with_loss.py
+++ b/research/cv/simple_baselines/src/network_with_loss.py
@@ -20,10 +20,10 @@ from __future__ import division
 import mindspore.nn as nn
 from mindspore.ops import operations as P
 from mindspore.ops import functional as F
-from mindspore.nn.loss.loss import _Loss
+from mindspore.nn.loss.loss import LossBase
 from mindspore.common import dtype as mstype
 
-class JointsMSELoss(_Loss):
+class JointsMSELoss(LossBase):
     '''
     JointsMSELoss
     '''
diff --git a/research/cv/single_path_nas/eval.py b/research/cv/single_path_nas/eval.py
index cbba5a025c30569a7e5a4635550b8378be370a24..ddd8a3e4b6c0f3a0e3783fdb56d481bcce561e38 100644
--- a/research/cv/single_path_nas/eval.py
+++ b/research/cv/single_path_nas/eval.py
@@ -23,7 +23,7 @@ from mindspore import Tensor
 from mindspore import context
 from mindspore.common import dtype as mstype
 from mindspore.common import set_seed
-from mindspore.nn.loss.loss import _Loss
+from mindspore.nn.loss.loss import LossBase
 from mindspore.ops import functional as F
 from mindspore.ops import operations as P
 from mindspore.train.model import Model
@@ -48,7 +48,7 @@ parser.add_argument('--device_id', type=int, default=None, help='device id of As
 args_opt = parser.parse_args()
 
 
-class CrossEntropySmooth(_Loss):
+class CrossEntropySmooth(LossBase):
     """CrossEntropy"""
 
     def __init__(self, sparse=True, reduction='mean', smooth_factor=0., num_classes=1000):
diff --git a/research/cv/single_path_nas/src/CrossEntropySmooth.py b/research/cv/single_path_nas/src/CrossEntropySmooth.py
index 6d63b66694652da2298ec4cea541537be22d843c..8400b5413bf85c37dd9793ae0664f50e2cf16396 100644
--- a/research/cv/single_path_nas/src/CrossEntropySmooth.py
+++ b/research/cv/single_path_nas/src/CrossEntropySmooth.py
@@ -16,12 +16,12 @@
 import mindspore.nn as nn
 from mindspore import Tensor
 from mindspore.common import dtype as mstype
-from mindspore.nn.loss.loss import _Loss
+from mindspore.nn.loss.loss import LossBase
 from mindspore.ops import functional as F
 from mindspore.ops import operations as P
 
 
-class CrossEntropySmooth(_Loss):
+class CrossEntropySmooth(LossBase):
     """CrossEntropy"""
     def __init__(self, sparse=True, reduction='mean', smooth_factor=0., num_classes=1000):
         super(CrossEntropySmooth, self).__init__()
diff --git a/research/cv/sknet/src/CrossEntropySmooth.py b/research/cv/sknet/src/CrossEntropySmooth.py
index 6d63b66694652da2298ec4cea541537be22d843c..8400b5413bf85c37dd9793ae0664f50e2cf16396 100644
--- a/research/cv/sknet/src/CrossEntropySmooth.py
+++ b/research/cv/sknet/src/CrossEntropySmooth.py
@@ -16,12 +16,12 @@
 import mindspore.nn as nn
 from mindspore import Tensor
 from mindspore.common import dtype as mstype
-from mindspore.nn.loss.loss import _Loss
+from mindspore.nn.loss.loss import LossBase
 from mindspore.ops import functional as F
 from mindspore.ops import operations as P
 
 
-class CrossEntropySmooth(_Loss):
+class CrossEntropySmooth(LossBase):
     """CrossEntropy"""
     def __init__(self, sparse=True, reduction='mean', smooth_factor=0., num_classes=1000):
         super(CrossEntropySmooth, self).__init__()
diff --git a/research/cv/squeezenet1_1/src/CrossEntropySmooth.py b/research/cv/squeezenet1_1/src/CrossEntropySmooth.py
index 6d63b66694652da2298ec4cea541537be22d843c..8400b5413bf85c37dd9793ae0664f50e2cf16396 100644
--- a/research/cv/squeezenet1_1/src/CrossEntropySmooth.py
+++ b/research/cv/squeezenet1_1/src/CrossEntropySmooth.py
@@ -16,12 +16,12 @@
 import mindspore.nn as nn
 from mindspore import Tensor
 from mindspore.common import dtype as mstype
-from mindspore.nn.loss.loss import _Loss
+from mindspore.nn.loss.loss import LossBase
 from mindspore.ops import functional as F
 from mindspore.ops import operations as P
 
 
-class CrossEntropySmooth(_Loss):
+class CrossEntropySmooth(LossBase):
     """CrossEntropy"""
     def __init__(self, sparse=True, reduction='mean', smooth_factor=0., num_classes=1000):
         super(CrossEntropySmooth, self).__init__()
diff --git a/research/cv/swin_transformer/src/tools/criterion.py b/research/cv/swin_transformer/src/tools/criterion.py
index 1afdd719f3a77188b32e4f22b756b8151adf572c..ee963c1fee2724003b422532b2c1cb36ba0e9391 100644
--- a/research/cv/swin_transformer/src/tools/criterion.py
+++ b/research/cv/swin_transformer/src/tools/criterion.py
@@ -17,12 +17,12 @@ import mindspore.nn as nn
 from mindspore import Tensor
 from mindspore import ops
 from mindspore.common import dtype as mstype
-from mindspore.nn.loss.loss import _Loss
+from mindspore.nn.loss.loss import LossBase
 from mindspore.ops import functional as F
 from mindspore.ops import operations as P
 
 
-class SoftTargetCrossEntropy(_Loss):
+class SoftTargetCrossEntropy(LossBase):
     """SoftTargetCrossEntropy for MixUp Augment"""
 
     def __init__(self):
@@ -38,7 +38,7 @@ class SoftTargetCrossEntropy(_Loss):
         return self.mean_ops(loss)
 
 
-class CrossEntropySmooth(_Loss):
+class CrossEntropySmooth(LossBase):
     """CrossEntropy"""
 
     def __init__(self, sparse=True, reduction='mean', smooth_factor=0., num_classes=1000):
diff --git a/research/cv/tsm/src/model/cross_entropy_smooth.py b/research/cv/tsm/src/model/cross_entropy_smooth.py
index 5b0b977e7852db6d2b27338f503be912cdf4d13e..596a7c86750657156eaaf1d90e1245780cf09349 100644
--- a/research/cv/tsm/src/model/cross_entropy_smooth.py
+++ b/research/cv/tsm/src/model/cross_entropy_smooth.py
@@ -16,12 +16,12 @@
 import mindspore.nn as nn
 from mindspore import Tensor
 from mindspore.common import dtype as mstype
-from mindspore.nn.loss.loss import _Loss
+from mindspore.nn.loss.loss import LossBase
 from mindspore.ops import functional as F
 from mindspore.ops import operations as P
 
 
-class CrossEntropySmooth(_Loss):
+class CrossEntropySmooth(LossBase):
     """CrossEntropy"""
     def __init__(self, sparse=True, reduction='mean', smooth_factor=0., num_classes=174):
         super(CrossEntropySmooth, self).__init__()
diff --git a/research/cv/wideresnet/src/cross_entropy_smooth.py b/research/cv/wideresnet/src/cross_entropy_smooth.py
index a12c43afffa3277475a182926a6eee6d2bf74015..b6d43e1efa528d57561cb16af5ee9b26215e4880 100644
--- a/research/cv/wideresnet/src/cross_entropy_smooth.py
+++ b/research/cv/wideresnet/src/cross_entropy_smooth.py
@@ -17,12 +17,12 @@
 import mindspore.nn as nn
 from mindspore import Tensor
 from mindspore.common import dtype as mstype
-from mindspore.nn.loss.loss import _Loss
+from mindspore.nn.loss.loss import LossBase
 from mindspore.ops import functional as F
 from mindspore.ops import operations as P
 
 
-class CrossEntropySmooth(_Loss):
+class CrossEntropySmooth(LossBase):
     """CrossEntropy"""
     def __init__(self, sparse=True, reduction='mean', smooth_factor=0., num_classes=1000):
         super(CrossEntropySmooth, self).__init__()